2010-05-30

Instalación de TeamViewer

Para ayudar a mi amiga Leidy, me pidió instalar TeamViewer, la verdad nunca ni lo había visto pero me sorprendió, pues aunque a mi las herramientas de acceso gráfico me parece muy inseguro este me pareció estable, "seguro" y con un sistema que te permite poder estar en cualquier sistema operativo.

Se puede obviamente como todo en Linux instalar de varias formas, la que a mi me gusta los comandos es la siguiente

root@localhost: ~# apt-get install teamviewer5

La otra es gráfica, la cual se hace descargando de la URL http://www.teamviewer.com/es/download/ donde descargas el paquete deb según la versión de tu Debian de 32 o 64 bits.

Al bajar el paqueteel sistema de gestión de paquetes te ayudara a instalar los así



Una vez instalado lo encontraras en Aplicaciones --> Internet --> TeamViewer y ya lo puedes ejecutar donde veras lo siguiente


Bueno aprovechen y usenlo con responsabilidad y mucho cuidado

2010-05-18

Análisis de Redes con TCPDUMP

En muchas ocasiones es complicado determinar algo que nos afecta la red sin revisar exactamente que esta pasando en está y al mismo tiempo aprender a leer el trafico capturado por una herramienta como tcpdump no es muy simple, acá pretendo explicar lo básico para que puedan aprovecharlo y empezar a usar esta poderosa herramienta de diagnostico.

Lo primero es explicar que es tcpdump, este es un comando que nos permite ver en tiempo real el contenido de los paquetes que pasan por una interfaz del sistema de forma boleana. Teniendo claro esto su uso habitual es de la siguiente forma:

root@localhost:~# tcpdump -i eth0

Lo que nos genera una serie de lineas que contienen la siguiente estructura
tiempo protocolo  origen > destino : información del paquete
Como se ve en la siguiente imagen de una salida tradicional



yo uso el -nnnnn al final por que prefiero que todo salga en numeros y no por ejemplo el nombre que resuelve dicha IP o el puerto y demás.

Como en cualquier analizador de trafico uno puede colocar filtro, obviamente unos mucho mas complejos que otros y algunos mas efectivos que otros, lo filtros que mas se usan (que yo mas uso) son los siguientes

host -> Te permite colocar la IP de la que deseas ver el trafico
proto -> Te permite ver el trafico de un protocolo determinado, para esto debes colocar el nombre del protocolo en mayúsculas, así UDP, TCP, ICMP .....
port -> Te permite seleccionar un puerto especifico

también existen conectores lógicos como and y como or y negación para eliminar algo especifico que acá se coloca con el símbolo de admiración (!), un posible ejemplo seria el siguiente

root@localhost:~# tcpdump -i eth0 host 74.58.69.32 and (proto TCP or proto UDP) and ! port 22 -nnnn

esto nos mostrara el trafico de la IP 74.58.69.32 en TCP o UDP excepto por el puerto 22. Les voy a mostrar unos ejemplos de capturas que permiten ver como esta herramienta nos permite revisar 

empezaremos con el trafico generado por un ping, aunque acá el filtro lo coloque con host si se hubiera colocado proto ICMP el resultado es el mismo



Acá veremos como es el trafico de UDP, donde se ven conexiones al puerto 53 que es de DNS y otras conexiones que se establecen en el sistema



Para filtrar el trafico de DNS hay que realizar el siguiente filtro


La primera linea es la solicitud de resolución con código 8250 el símbolo (+) es que esta es recursiva, en la segunda linea esta la respuesta del servidor donde se ve un segmento 1/1/0 que quieren decir el primero es que el tiene la respuesta, el segundo que se ha encontrado un servidor autorizado para responder y el último que no existen otros servidores registrados que tengan esta información.

Otro filtro útil para los administradores de red, es saber quien esta en MSN, eso se conecta por el puerto 1863, entonces es así

Los últimos filtro que les voy a mostrar es sobre el trafico TCP, en la siguiente imagen se ve una comunicación de principio a fin de TCP en el puerto 80 (HTTP), donde se ve desde el Syn hasta el Fin.


Como todos saben la comunicación de TCP tiene unas banderas en el Byte numero 13, con los siguientes datos


URG - Urgente         RST - Reset
ACK - Acknowleg     SYN - Sincronizar
PSH - Push               FIN -  Finalizar


Es así que para ver paquetes que solo contengan el SYN activo se debe colocar tcp[13] = 2, esto es 13 por el numero del Byte en la cabecera y el 2 por que es el decimal que significa ese bit activo. Para ver SYN-ACK seria tcp [13] == 18, que es por que le bit de ACK es 2^4 mas el de SYN que es 2^1 eso da 18. Bueno veremos un ejemplo aplicado pero les dejo que analicen por que ese filtro


2010-05-16

Instalar CAD eagle en Linux

Cuando estaba en la Universidad una de las cosas que más me gustaba era diseñar circuitos con la board incluida, para eso siempre use un programa que se llama Eagle que solo corría en Win y por lo cual cuando empecé a trabajar con Linux me frustre un poco y deje de usarlo, por que volver a Win jamas y menos por eso. Hoy en u golpe de suerte encontré que esta herramienta se puede ya instalar no solo en win sino en Linux y en Mac, entonces hoy voy a colocar como la instale.

Lo primero es descargarla, para eso puedes ir a este FTP y descargar la última versión, yo baje la 5.8 pero ya esta en la 5.9 no importa es solo por mostrar como es, descargas el que tenga un nombre similar a este eagle-lin-5.x.0.run.

Ya con el archivo en el directorio simplemente ejecutas este comando

root@localhost:~# sh eagle-lin-5.9.0.run

El inicia un entorno de instalación muy similar a los de win que sigue los siguientes pasos



Aunque en la imagen me quedo con el Don't license now, realmente lo instale con Run as Freeware.


Bueno ya con esto quedo instalado, ahora como lo ejecutas para esto te debes desplazar a /opt/eagle-5.9.0/bin/ y lo lanzas así

root@localhost:~#./eagle

Con esto ves la presentación de Eagle que es así


Bueno yo soy malo para recordar donde quedaron las cosas y aunque no es difícil encontrarlas yo prefiero hacer que solo se ejecute directamente, para esto se hace un enlace simbolico de la siguiente forma

root@localhost:~#ln -s /opt/eagle-5.8.0/bin/eagle  /usr/sbin/eagle

Ya con esto para ejecutarlo solo se requiere dar el comando eagle, espero que para los que usen este excelente Software de diseño y que les guste Linux lo puedan usar.

2010-05-11

Instalar Adobe Acrobat

En mi Ubuntu 10.04 por alguna razón no me funciona evince, por lo que necesitaba instalar adobe reader para poder ver los pdf, así que como siempre busque y encontré esta pagina buena en ingles, así que lo primero es descargar  el paquete de aquí. lo que te muestra una ventana así



Como ven es solo seleccionar SO e idioma y listo lo descargas, con el manejador de paquetes le das instalar y revisas que quede en Aplicaciones -> Oficina -> Adobe Reader, por defecto el sistema intenta seguir abriendo los pdf en evince, lo pueden modificar en las características del archivo o darle click derecho y abrir con Adobe

Crear un Raid1

Instale OSSIM pero el instalador no me dejo crear el arreglo que tenia listo para cuadrar entre los dos discos, por lo que me toco ponerme a buscar como hacerlo y me encontré un procedimiento en ingles muy bien explicado acá, entonces pues obviamente después de mirar otros me puse en la labor de hacerlo, lo primero que se tiene que verificar es que los dos discos tengan la misma geometría, en pocas palabras que sean iguales, esto lo logras así

root@localhost:~# sfdisk -l

lo que importa de esta salida es 

Disk /dev/hda: 9726 cylinders, 255 heads, 63 sectors/track
Units = cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0
Disk /dev/hdb: 9726 cylinders, 255 heads, 63 sectors/track
Units = cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0

Una vez tenemos la certeza de esto bajamos el paquete que necesitamos para hacer los arreglos, acá voy a hacer un Raid1 que es una copia exacta de un disco al otro, debido a esto es conocido como Mirror. El paquete que necesitamos es

root@localhost:~# apt-get install mdadm

Bueno ya tenemos el software que necesitamos ahora toca tener en cuenta unos detalles para que sea fácil entender este procedimiento, el disco donde esta la instalación es el hda el disco con el que haremos el arreglo y que esta sin información en este momento es el hdb. Hecha esta aclaración veremos como están las particiones del disco hda

root@localhost:~#fdisk -l /dev/hda
 Disk /dev/hda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x006b006b

Device Boot      Start         End      Blocks   Id  System
/dev/hda1   *           1        9399    75497436   83  Linux
/dev/hda2            9400        9729     2650725    5  Extended
/dev/hda5            9400        9729     2650693+  82  Linux swap / Solaris

Como se puede ver la partición 1 tiene el Id 83 y el System Linux, esto lo debemos modificar a que sea Linux para raid, esto se hace con el siguiente sencillo comando

root@localhost:~# sfdisk --change-id /dev/hda 1 fd

Esto tiene su razón de ser, el numero 1 es el numero de la partición y el fd es el tipo de partición que necesitamos, el cual sale de una tabla bastante larga, que obtienen con la opción l del fdisk y que acá la pueden visualizar. Listo ahora duplicar las particiones del disco hda en el hdb, lo cual se hace así

root@localhost:~# sfdisk -d /dev/hda | sfdisk /dev/hdb

Con esto las particiones deben quedar iguales en ambos discos. Ahora vamos a empezar con la creación de arreglo, pero debemos proteger los datos para que no se nos dañen, por lo que ejecutaremos el siguiente comando

root@localhost:~#mdadm --create /dev/md0 --level 1 --raid-devices=2 missing /dev/hdb1

Este proceso lo debes hacer con cada partición que tengas, como yo solo tengo esa solo debo hacerlo una vez, NUNCA lo hagas sobre la partición que este marcada como Swap

Bueno ahora formatearemos en EXT3 las particiones creadas, esto lo hacemos con el siguiente comando

root@localhost:~# mkfs.ext3 /dev/md0

Ya con la partición formateada, entonces simplemente la montamos y hacemos una copia especial de todos los datos de la partición en dicho directorio, de la siguiente forma

root@localhost:~# mount /dev/md0 /mnt
root@localhost:~# cp -dpRx / /mnt

esto lo debes hacer con cada una de las particiones a montar, luego entonces formatearemos la partición de swap, de la siguiente forma

root@localhost:~# mkswap -v1 /dev/hdb5

Bueno ahora toca editar el fstab para darle prioridad a la partición swap, colocandole pri=1, como se ve a continuación

root@localhost:~# vi /mnt/etc/fstab
# /etc/fstab: static file system information.
#
#              
proc            /proc           proc    defaults        0       0
/dev/hda1       /               ext3    errors=remount-ro 0       1
/dev/hda5       none            swap    sw,pri=1              0       0
/dev/hdd        /media/cdrom0   udf,iso9660 user,noauto     0       0
/dev/fd0        /media/floppy0  auto    rw,user,noauto  0       0
Ahora toca cuadrar el GRUB para que al iniciar el servidor este cargue correctamente, esto se hace editando el archivo que esta en /mnt/boot/grub/menu.lst,  para las instalaciones con grub1, quedando la parte que se modifica así

## ## End Default Options ##

title           Debian GNU/Linux, kernel 2.6.31.6
root            (hd0,0)
kernel          /boot/vmlinuz-2.6.31.6 root=/dev/md0 md=0,/dev/hda1,/dev/hdb1 ro vga=788
initrd          /boot/initrd.img-2.6.31.6

title           Debian GNU/Linux, kernel 2.6.31.6 (single-user mode)
root            (hd0,0)
kernel          /boot/vmlinuz-2.6.31.6 root=/dev/md0 md=0,/dev/hdb1 ro vga=788 single
initrd          /boot/initrd.img-2.6.31.6


Ahora instalamos el grub del otro disco así

root@localhost:~# grub-install /dev/hda
Searching for GRUB installation directory ... found: /boot/grub
Installation finished. No error reported.
This is the contents of the device map /boot/grub/device.map.
Check if this is correct or not. If any of the lines is incorrect,
fix it and re-run the script `grub-install'.

(hd0)    /dev/hda
(hd1)    /dev/hdb

Bueno  ya con este instalado y sin errores entonces procedemos a configurar el grub, con el comando grub el sistema ingresa a la linea de comando del grub y configura así:

grub> device (hd0) /dev/hdb

grub> root (hd0,0)
 Filesystem type is ext2fs, partition type 0xfd

grub> setup (hd0)
 Checking if "/boot/grub/stage1" exists... yes
 Checking if "/boot/grub/stage2" exists... yes
 Checking if "/boot/grub/e2fs_stage1_5" exists... yes
 Running "embed /boot/grub/e2fs_stage1_5 (hd0)"...  17 sectors are embedded.
succeeded
 Running "install /boot/grub/stage1 (hd0) (hd0)1+17 p (hd0,0)/boot/grub/stage2 /boot/grub/menu.lst"... succeeded
Done.

grub> quit
Listo ya tenemos cuadrados los del disco nuevo ahora copiamos estas configuraciones en el disco inicial de la siguiente forma

root@localhost:~# cd -dp /mnt/etc/fstab /etc/fstab
root@localhost:~# cd -dp /mnt/boot/grub/menu.lst /boot/grub/menu.lst

Bueno es la hora de la verdad, toca reiniciar y esperar que se pueda ingresar, ya adentro agregamos las particiones del disco inicial de la siguiente forma

root@localhost:~# mdadm --add /dev/md0 /dev/hda1

Así con todas las que tengas, una vez echo eso pueden ver que se estén sincronizando bien revisando el mdstat de la siguiente forma

root@localhost:~# more /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 hda1[2] hdb1[1]
      75489280 blocks [2/1] [_U]
      [>....................]  recovery =  0.1% (98048/75489280) finish=153.7min speed=8170K/sec
     
unused devices:

root@localhost:~# more /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 hda1[2] hdb1[1]
      75489280 blocks [2/1] [_U]
      [>....................]  recovery =  0.2% (211648/75489280) finish=165.9min speed=7558K/sec
     
unused devices:

root@localhost:~# more /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 hda1[2] hdb1[1]
      75489280 blocks [2/1] [_U]
      [>....................]  recovery =  3.0% (2338112/75489280) finish=155.3min speed=7846K/sec
Es un proceso supremamente lento y entre más grande sea el disco más lento será entonces paciencia y ha estar tranquilo que si se te daña un disco ya lo puedes recuperar sin tanto misterio.