2009-05-29

Control a Multiples Equipos Simultáneamente

Debido a nuestros trabajo necesitamos ingresar comandos en varias maquinas simultáneamente, mi parcerita (Sandra Mosquera) me enseño este comando que se lo paso Rodrigo, me parece que es super útil para administradores, se llama multixterm y se instala de la siguiente forma

root@localhost:~# apt-get install expect expectk

una vez instalado ese aquete entonces bajamos el comando que necesitamos y lo guardamos en /usr/sbin, de la siguiente forma

root@localhost:/usr/sbin/#wget http://expect.nist.gov/example/multixterm

una vez hay le damos permisos de ejecución así

root@localhost:/usr/sbin#chmod +x multixterm

ahora viene la parte que no sale por ningún lado y que solo probando y sabiendo como funcionan las cosas se encuentran los problemas, el paquete de multixterm tiene mal la ruta de ejecución del paquete expectk, por lo que hay que ingresar y modificarla así

root@localhost:/usr/sbin#vi multixterm

en la primera linea debe quedar esto

#!/usr/bin/expectk ----> Esta es la que se modifica y debe quedar así
#
# NAME # multixterm - drive multiple xterms separately or together

bueno ahora lo ejecutamos, acá solo les voy a mostrar una de las formas pero realmente tiene mucho para investigar a ver que mas puede hacer, la forma del comando es

multixterm [parámetros] "[comando]" IP's de maquinas

lo que en un ejemplo práctico es

root@localhost:~#multixterm -xc "ssh user@%n" 192.168.5.25 172.5.15.1

Obviamente ambas maquians deben responder a la misma llave de ssh o en su defecto a la misma contraseña, esto gráficamente se ve así


Para digitar el comando solo debes dar click en la ventanita pequeña en el sector donde dice stdin windows y listo comando que digites se digita automaticamente en las ventanas abiertas

2009-05-26

Redes desde consola

La intención de esta entrada es ayudar a los administradores a entender mejor los datos que salen por consola y las herramientas de las que se cuenta en Linux para el manejo de redes, obviamente me faltaran pero la intención es ayudarlos a tener una guia básica de como manejar las redes.

Empezaremos con entender la salida del comando principal ifconfig se encuentra usualmente en el directorio /sbin

[root@localhost ~]# ifconfig eth1
eth1 Link encap:Ethernet HWaddr 00:00:00:FF:FF:FF
inet addr:172.17.1.8 Bcast:172.17.1.255 Mask:255.255.255.0
inet6 addr: fe80::210:18ff:fe1c:3c61/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:14588981 errors:319374 dropped:0 overruns:0 frame:162243

TX packets:12258931 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000 RX bytes:3241727361 (3.0 GiB) TX bytes:6441616508 (5.9 GiB)
Interrupt:209


Vamos dato por dato

Link encap : Te indica que tipo de conexión es, en este caso como en la mayoría será Ethernet, puede ser UNSPEC cuando la tarjeta es un tunel o tipo tun
HWAddr : Es la MAC del dispositivo
inet addr : Es la dirección IPv4 del dispositivo
Bcast : Es la dirección de broadcast del dispositivo
Mask : Es la mascara de red del dispositivo
inet6 addr : Es la dirección IPv6 del dispositivo, usualmente dada por defecto, el /64 es la indicación de la mascara de red, también usado en IPv4 lo explicare mas adelante
Scope : Es el alcance de la tarjeta o tipo de la misma, por ejemplo si es la de loopback el valor sera local, pero si es una ethernet el valor será Link o enlace.
UP : Implica que la interfaz esta disponible para ser usada por la capa 3
BROADCAST : Indica que permite escuchar peticiones de broadcast
RUNNING : Implica actividad de capa 3 en la tarjeta
MULTICAST : Indica que permite escuchar peticiones de multicast
MTU : Es la unidad máxima de transferencia medida en bytes por defecto es de 1500 para Ethernet pues es su tamaño máximo para este tipo de paquetes
Metric : Es la metrica de la red, se usa para cuando se requiere enrutar tráfico y se desea dar mayor prioridad a una ruta sobre la otra, a mayor numero menor importancia
RX packets : Es el numero de paquetes recibidos por la tarjeta, en esa misma linea se ve errors que son el numero de paquetes con errores recibido, después dropped que son la cantidad de paquetes rechazados, después overruns que son el numero de paquetes sobre dimensionados y por último frames el numero de tramas recibidas
TX packets : Es el numero de paquetes enviados por la tarjeta, en esa misma linea se ve errors que son el numero de paquetes enviados con errores, después dropped que son la cantidad de paquetes rechazados, después overruns que son el numero de paquetes sobre dimensionados y por último carrier.
Collisions : El numero de colisiones reportadas a la tarjeta, si aun tienes hub este valor es importanticimo para saber el numero de colisiones en tu red, y si ya tienes un switch entonces si el valor no es cero algo anda muy mal en tu red
txqueuelen : Indica el tamaño máximo de la cola de transmisión, es muy útil para evitar sobre cargas en dispositivos de alta latencia como modem o ISDN
RX bytes : numero de bytes recibidos
TX bytes : Numero de bytes transmitidos
Interrupt : Permite establecer la interrupción IRQ sobre la board de este dispositivo


Otro comando que nos permite conocer datos acerca de nuestra conexión es ip addr show, el cual usualmente se encuentra en el directorio /bin

[root@localhost ~]# ip addr show
3: eth1: link/ether 00:00:00:ff:ff:ff brd ff:ff:ff:ff:ff:ff mtu 1500 qdisc pfifo_fast qlen 1000
inet 172.17.1.8/24 brd 172.17.1.255 scope global eth1
inet 10.57.1.1/24 scope global eth1
inet6 fe80::210:18ff:fe1c:3c61/64 scope link
valid_lft forever preferred_lft forever


acá solo veremos un fragmento de la salida, al igual que el anterior no brinda datos de conexión y de direccionamiento, pero nos permite visualizar las IP virtuales asignadas a dicha tarjeta, que como se aprecia pueden pertenecer a otro segmento de red completamente diferente.

Ahora explicare un poco la simboligia de redes que se muchos no les gusta tanto y que no es muy entendible, la IP esta representada de la siguiente forma 10.57.1.1/24 este numero es realmente dirección_ip/mascara, el numero 24 indica la mascara de red, donde 24 es el numero de unos en notación binaria de dicha mascara así

Address: 10.57.1.1 00001010.00111001.00000001. 00000001
Netmask: 255.255.255.0 = 24 11111111.11111111.11111111. 00000000

entonces cuado vean ese numero, es realmente la mascara de red expresada en notación decimal si la desean llamar así.


COMANDOS DE ADMINISTRACIÓN

El primero que veremos es mii-tool, ubicado en el directorio /sbin, me lo enseño mi parcerita Sandra Mosquera, es super útil para determinar si la conexión física es o no buena y además para saber la velocidad de transmisión de las tarjetas

[root@localhost ~]# mii-tool
eth0: 100 Mbit, full duplex, link ok
eth1: negotiated 100baseTx-FD, link ok
eth2: link down


Como se puede ver acá la eth0 esta fija en 100Mb, la eth1 negocio su velocidad a 100Mb y la eth2 esta desconectada.

El siguiente comando te permite ver estadisticas detalladas de la tarjeta y además forzarla a una velocidad determinada, el comando es ethtool, ubicado en /sbin, se puede usar de las siguiente forma

Para sacar las estadisticas espeificas de una tarjeta
[root@localhost ~]# ethtool -S eth1

Para cambiarle la velocidad a un tarjeta forzandola a una especifica
[root@localhost ~]# ethtool -s eth1 speed 100 duplex full


El siguiente permite adicionar direcciones a determinada tarjeta, es otro uso de el anterior comando ip addr el cual se usa así

[root@localhost ~]# ip addr add ip_address/netmask dev etht1
se le pueden agregar mas datos como métrica pero como básico es ese.

MONITOREO

Para monitoreo siempre es bueno usar lo que mas datos te muestre así al principio estos para ti sean completamente ilogicos, pero poco a poco entenderás, el primer comando para mi es el tcpdump, esta ubicado en el directorio /usr/sbin/tcpdump y nos permite ver todo el tráfico en la red en su mas bajo nivel de capas de protocolo TCP/IP el comando por defecto se usa así

[root@localhost ~]#tcpdump -i eth1 -nnnn
13:04:06.366449 IP 74.125.115.191.80 > 192.168.5.214.37519: . ack 2836 win 709
13:04:06.366494 IP 192.168.5.214.37519 > 74.125.115.191.80: . 6932:8350(1418) ack 1 win 108
13:04:06.366502 IP 192.168.5.214.37519 > 74.125.115.191.80: . 8350:9768(1418) ack 1 win 108
13:04:06.394022 IP 74.125.115.191.80 > 192.168.5.214.37519: . ack 4096 win 754
13:04:06.394076 IP 192.168.5.214.37519 > 74.125.115.191.80: . 9768:11186(1418) ack 1 win 108
13:04:06.394084 IP 192.168.5.214.37519 > 74.125.115.191.80: . 11186:12604(1418) ack 1 win 108
13:04:06.520435 IP 74.125.115.191.80 > 192.168.5.214.37519: . ack 5514 win 798
13:04:06.520476 IP 192.168.5.214.37519 > 74.125.115.191.80: . 12604:14022(1418) ack 1 win 108
13:04:06.520485 IP 192.168.5.214.37519 > 74.125.115.191.80: . 14022:15440(1418) ack 1 win 108
13:04:06.537201 IP 74.125.115.191.80 > 192.168.5.214.37519: . ack 6932 win 842
13:04:06.537244 IP 192.168.5.214.37519 > 74.125.115.191.80: P 15440:16619(1179) ack 1 win 108
13:04:06.554165 IP 74.125.115.191.80 > 192.168.5.214.37519: . ack 8350 win 887


Esa es una pequeña muestra donde veras en orden

hora protocolo IP_origen.puerto > IP_destino.puerto estado dato_de_la_trama

Se que no es muy fácil pero aprendiendo a controlarlo es muy útil, de eso es muy extenso y muchos libros se han escrito solo de este pero es lo mejor que puedes usar.

El otro es iptraf, no vine por defecto y hay que instalarlo pero es una herramienta gráfica muy útil para ver el consumo en las tarjetas.

2009-05-17

Backup marcadores Firefox

Aun que en una entrada hace poco explique como realizarlo desde la consola por una curiosidad de la vida hablando con una amiga que usa Win aprendí como hacerlo por entorno gráfico, lo primero es entrar al menú de Marcadores --> Organizar marcadores así



Ya hay te va a mostrar la siguiente ventana


Seleccionas el menú de Importar y Resguardar, y seleccionas resguardar, eso te guarda un archivo de extensión json y listo nada mas así de sencillo

2009-05-13

Realizar apt-get a traves de Proxy

Muchas veces tenemos maquinas instaladas en una red donde tenemos proxy y no nos permite realizar actualizaciones a nuestros paquetes por que el proxy no nos permite bajar dichos paquetes pero como todo en Linux existe una solución, después de leer un buen rato encontré una explicación muy buena en ingles en esta url.

Bueno como siempre voy a explicar como lo hice yo, lo primero es tener los datos claros del proxy con esto quiero decir

  1. Usuario
  2. Contraseña
  3. Dirección IP o nombre
  4. Puerto
Con estos datos ingresamos al archivo

root@localhost:~#vi /etc/bash.bashrc

He insertamos la siguiente linea

export http_proxy="http://usuario:contraseña@direccion_IP:puerto"

Una vez echo esto le puedes dar tranquilamente el apt-get update y pasa el proxy sin inconvenientes.



2009-05-02

Reinstalar sin perder

Debido a que el nuevo Ubuntu tiene la mejora considerable de el modo en que realiza las particiones de ext3 a ext4 lo mas óptimo pienso yo no es actualizar sino reinstalar, pero eso en algunos casos trae perdidas que para algunos (como yo) no son aceptables, tales como mis correos en el evolution o mi configuración de accesos en el FireFox o mis notas del Tomboy, o mis maquinas virtuales entro otros que como ven a continuación son datos no solo importantes sino que me facilitan el trabajo.

















Para esto necesitaras un disco externo o donde puedas pasar los datos completos de tu directorio Home, ahora lo primero va a ser salvar toda la información de este directorio en tu sitio de respaldo, acá voy a hacerlo sobre un disco externo que monte en el directorio mnt, eso lo realizas con dos comando que son

user@localhost:~$cp -r /home/user/* /mnt/disco/backup/ user@localhost:~$cp -r /home/user/.* /mnt/disco/backup/

Yo prefiero hacerlo así para asegurarme que quede completamente copiada la información la otra es colocarle las opciones -ra pero lo que te dijo prefiero hacerlo así, ahora para probar que si paso todo le ejecutas el siguiente comado

user@localhost:~$diff -r /home/user/ /mnt/disco/backup/

Si no te sale nada eso quiere decir que todo esta igualito, obviamente que si quieres revisar por cada directorio incluidos los ocultos es mejor. Bueno una ves reinstales entonces empieza el otro proceso que es el de recuperar las cosas como estaban.

Empezaremos con el Evolution, antes de abrirlo debes realizar esto, con el fin de que no se pierdan datos ni nada, entonces debes realizar la copia tambien completa de los datos con el siguiente comando

user@localhost:~$cp -r /mnt/disco/backup/.evolution/* /home/user/.evolution/

Ya con eso tendras hasta la configuración de la cuenta echa, pero igual el te preguntara unos datos, y listo así no pierdes ni un correo ni configuración del mismo.

Ahora seguiremos con el Firefox, este s un poquito mas canson por la forma en que Mozilla configura sus directorios pero bueno no es nada del otro mundo tampoco, el lío esta en que para instalación del firefox el le coloca un código diferente al nombre del directorio, entonces lo que se debe es renombrar, pero bueno el como se hace es así, primero copias el directorio completo así

user@localhost:~$cp -r /mnt/disco/backup/.mozilla/firefox/viejo45t.default /home/user/.mozilla/firefox/

Un a vez copiado los enlistas para ver los nombres de la siguiente forma

user@localhost:~$ls -l /home/user/.mozilla/firefox/
total 10
drwx------ 8 samuel samuel 4096 2009-05-02 10:20 viejo45t.default
drwx------ 8 samuel samuel 4096 2009-05-02 10:20 nuevod9o.default
-rw-r--r-- 1 samuel samuel 94 2009-04-27 19:19 profiles.ini

hay pueden ver claramente lo que les decía de los nombre, obviamente estos son inventados pero así se ven, entonces ahora lo único es cambiarle el nombre y listo, esto lo haces así

user@localhost:~$cd /home/user/.mozilla/firefox/
user@localhost:~$mv viejo45t.defaut nuevod90.default

Listo para verificar enlistas y solo se debe ver una y ya abres tu firefox y todos tus accesos y demás estaran hay como si nada.

Y así debes hacer con la otras aplicaciones, como Tomboy que esta en /home/user/.Tomboy, o la de las maquinas virtuales de Virtualbox en /home/user/.Virtualbox y demás.

2009-05-01

Cifrado de Archivos PGP

Bueno debido a que por las normas impuestas en nuestro país se debe tener certeza de quien te envía un documento o un correo electrónico para los que trabajamos en o con entidades financieras, me puse a investigar como realizar la firma digital y encontré bastante información sobre todo en el wiki de ubuntu, en este enlace.

Como siempre colocare la forma en que a mi me funciono en este caso no voy a usar mucho la consola pues el entorno gráfico de esta aplicación me parece no solo muy bueno sino que además es la mejor forma de empezar a conocer este mundo del cifrado, lo encuentras en Aplicaciones --> Accesorios --> Claves y Contraseñas de cifrado el cual te muestra esta ventana


Bueno entonces empezaremos por explicar que es una llave PGP, antes de ponernos con la creación y demás, "una alternativa al conocido programa de cifrado PGP (Pretty Good Privacy), pero con la principal diferencia que es software libre licenciado bajo la GPL. GPG o GnuPG utiliza el método de cifrado denominado criptografía asimétrica, esto significa que cada usuario tiene dos claves: una clave privada y una clave pública." Sacado de http://www.lagg3r.com.ar/cifrado-de-archivos-en-ubuntu-usando-gpg/. Ahora que ya sabemos mas o menos que es su uso principal es para la firma digital de correos electrónicos lo que te permite asegurar el emisor del mismo y el cifrado de archivos, en este último no es el mejor sistema pues para decifrar la información deberas tener en la misma maquina el archivo y tu llave privada, lo cual no siempre es muy conveniente.

CREACION

Bueno ya con la carreta y la explicación basica del tema iniciaremos con como crear la llave y como registrarla en un servidor público de llaves, bueno ingresas al menu Filtro --> Nueva y veras la siguiente ventana


Bueno le das click en
Clave PGP
Usado para cifrar correo y archivos

Y veras la otra ventana





En esta deberas llenar todos los datos que te solicitan que son 3, Nombre Completo - Correo electrónico - Comentario, lo otros datos son extras te lo muestro para que los veas pero es mejor dejarlos así con el fin de poder usar la llave criptografica para los dos procesos que sirve, si cambias el tipo de cifrado pierdes una de las dos opciones, una vez creada te solicitara una frse de seguridad la cual puede contener numeros, letras, espacios y caracteres especiales , así que creala de mas de 8 digitos y con la mayor cantidad de todo lo anterior pero que no se te olvide, despues te mostrara la ventana inicial nuevamente con tu llave ya creada, así se ve la mia


Si como pueden ver ese es el identificador de mi llave y por medio de este van a poder certificar que mis correos si realmente los envie yo, por medio de la publicación de la misma que sera el paso que sige

PUBLICACION

Bueno se puede publicar de dos formas una por consola y otra por el entorno gráfico, acá les mostrare ambas iniciando con la consola por que no solo es el más sencillo sino por que además te permite colocarla donde quieras y aunque el otro también ya seban que me gusta mas la consola, entonces como casi todo en Linux es con un único comando

root@localhost:~#gpg --keyserver Servidor --send-keys identificador

Si el Identificador es el codigo hexadecimal que ven en la imagen al lado derecho de mi nombre. Ahora el entorno gráfico ingresan al menu Remota --> Sincronizar y publicar Claves y les mostrara la siguiente ventana

Le das click en
Servidore de claves

y veras la otra ventana



Ya hay seleccionas de la lista donde la quieres publicar y listo cierras y sincronizas

USO CON EL CORREO

Acá solo explicare como se usa con el Evolution pero es igual en cualquier otro cliente de correo, ingresas a Editar --> Preferencias lo que te muestra la siguiente ventana (esta un poco reducida)


Ingresas en Editar y seleccionas la pestaña de Seguridad, hay colocaras el Identificador de tu llave y colocaras que siempre envie tu correo firmado con esta llave, eso se ve así


Ahora dirás para que sirve esto bueno te mostrare como llega un correo a Evolution cuando va firmado, y entenderás que así si puedes estar seguro de quien te lo envío es quien dice ser



USO PARA CIFRADO DE ARCHIVOS

Para esto existen dos métodos uno gráfico y uno por consola, primero adivinen veremos el de la consola, es el más fácil, empezaremos con el cifrado el cual se hace con este comando

root@localhost:~#gpg -e archivo

y el te pregunta si quieres usar una llave diferente pero como es tu maquina y la tienes hay solo le das enter dejando en blanco la pregunta y ya tienes un archivo así archivo.pgp, ahora para descifrar es

root@localhost:~#gpg -d archivo.gpg > archivo

Te pide la frase de paso y listo lo tienes en claro sin lio. Ahora el entorno gráfico este sirve para directorios y archivos igual, le das click derecho sobre lo que vas a cifrar y escoges Cifrar, de la siguiente forma


Lo que te mostrara la siguiente ventana donde escoges la llave con la que vas a cifrar, el por que acá se ven mas es por que cada que tu importas un llave ella te sale acá para cifrar








Listo ya con eso te dice que si cifras cada archivo en el directorio por separado o todo el directorio. Ahora para descifrar le das click derecho sobre el archivo de extensión gpg y le das Abrir con > el se toma unos segundos te pregunta la frase de seguridady listo te lo saca descifrado y te dice que llave uso para sacar el archivo.