17/7/07

Como obtener la certificación CCNA

Nuevamente un post derivado de la consulta de un usuario, especificamente el amigo James desea saber donde obtener una buena capacitación que lo prepare para el CCNA, como respuesta, quisiera compartir como obtuve mi certificación hace algunos años, soy conciente de que cada caso es diferente, asi que no espero que mi experiencia se aplique a todos pero puede ser una guía para los interesados en tomar esta certificación.

De entrada quiero aclarar que no hay camino fácil para obtener esta certificación, por algo es una de las certificaciones respetadas en la industria, por otra parte, tampoco es algo extremadamente dificil o imposible, tampoco hay un solo camino para obtener la certificación (aunque todos los caminos, tienen que pasar por el mismo punto, léase el exámen de certificación).

En mi caso, me inicie en el mundo del networking, en la división de datacom, de una empresa de telecomunicaciones, en esta empresa conocí sobre Cisco, sobre los routers, los switches, y también sobre los conceptos fundamentales, estuve un año en esta empresa, cumpliendo con un año de práctica obligatorio por la universidad en la que estudie, durante ese año, inverti muchas horas navegando por el sitio de Cisco y también tuve la experiencia práctica configurando equipos.

Esta experiencia me abrio las puertas, para trabajar administrado la red para un organismo estatal, la red estaba basada en equipo cisco, así que ahí tuve la oportunidad de seguir experimentando, trabajando aquí también se presento la oportunidad de recibir la capacitación oficial de Cisco de 40 horas, que en aquel entonces, era la capacitación necesaria para certificarse, la capacitación incluia un libro muy bueno de Todd Lammle (uno de los autores más vendidos de guías de certificación para examenes de Cisco), sin embargo, en esos momentos, no tuve la oportunidad de presentar el examen de certificación.

Aproximadamente un año despues de haber recibido la capacitación, y trabajando para otra empresa, se presento la oportunidad (y la necesidad) de certificarme, ya que era requerido por la empresa para la que trabajaba, asi que desempolve la guía de estudio que mencione en el parrafo anterior y con una semana de estudio estaba listo para el examen, esta guía de estudio incluia un cd, con examenes de prueba, eso me ayudo mucho para comprobar que realmente estaba listo para el examen.

Así que de mi experiencia, creo que los pasos para obtener la certificación CCNA se pueden resumir así:

1. Tener experiencia práctica y un background general en aspectos de networking
2. Si es posible, recibir una capacitación formal (creo que no es estrictamente necesario, pero indudablemente ayuda).
3. Conseguir una buena guía de estudio para repasar los conceptos fundamentales.
4. Practicar con simuladores de examen para comprobar que se esta listo, o repasar las áreas debiles.

Ahora, comprendo que no todos han seguido el mismo camino, o tienen intereses diferentes al perseguir la certificación, así que a continuación algunas recomendaciones adicionales.

Si no es posible obtener experiencia práctica, mi recomendación es conseguir un simulador y practicar con redes simuladas, de hecho aunque se tenga experiencia práctica, no esta de más el uso de estos simuladores, ya que se pueden practicar muchos escenarios que no se ven comunmente en la vida real, por ejemplo, en mi caso, que me he orientado más a redes LAN, tengo pocas oportunidades de configurar protocolos de ruteo, esto se puede complementar muy bien con un simulador.

Para los que son principiantes absolutos creo que la mejor opción es una Academía de Cisco (como lo sugiere otro lector), son cuatro semestres, para mi es muy largo, pero para quien se esta iniciando, creo que proporciona los fundamentos sólidos para entrar al área de redes, la certificación ya será solo un paso adicional.

A continuación algunos Links donde se puede obtener más información

Cisco Technical documentation - Este sitio esta siendo migrado por cisco a una nueva área, sin embargo, en la forma como aparece en esta página, es como empece a conocer sobre cisco y sobre las tecnologías fundamentales, así que considero que es un buen punto de entrada.


Cisco Press - La editorial de Cisco, que de acuerdo con ellos, tienen las guías de estudio autorizadas para los examenes de certificación.


Global Net Training - Una empresa de Todd Lammle (si el gurú de las certificaciones Cisco), en la que ofrece capacitaciones, libros, examenes de práctica y muchos recursos, hay algunas versiones demo que se pueden bajar.


Cisco Network Academy - Para encontrar información sobre este programa de Cisco, si deseas buscar una academía cerca de tu ciudad, puedes buscar aquí.


Boson - Simuladores de equipo y de examenes, también opciones de capacitación.


Router Sim - Otro simulador de equipos, videos y recursos adicionales


Mis libros de networking - Un blog en español, que puede tener información relevante, hay un articulo interesante, que describe los contenidos que se evaluan en el examen de certificación, según vi en el sitio, el autor ha publicado algun material de preparación para el CCNA, asi que puede ser muy valioso.


Lamentablemente, creo que tampoco hay una forma "barata" o de bajo costo, tal vez la unica excepción es cuando se trabaja para una empresa, que decide certificar a sus empleados, y estas oportunidades hay que aprovecharlas, de lo contrario, pues si tendrá un costo, pero vale la pena la inversión.

Como siempre, invito a los lectores del blog a expresar sus opiniones, sería interesante conocer la experiencia de otros que estan preparandose para la certificación, o que ya la obtuvieron, o que han tenido la oportunidad de estar en una academia de Cisco, considero que es un buen programa, pero lo mejor sería la opinión de alguien que esta actualmente estudiando en una de ellas.

16/7/07

Verificando conectividad con Tracert

Recientemente, un lector del blog, me pidio comentar sobre como interpretar los resultados de algunas de las herramientas disponibles desde la línea de comandos, como tracert, route, arp. En respueta le prometi publicar algo al respecto y quiero iniciar con el comando tracert, un comando de mucha utilidad y que junto a ping es uno de los que más utilizo en mi trabajo diario.

En primer lugar me gustaría explicar un poco que es el comando tracert y como funciona, finalmente como podemos interpretar sus resultados y algunos escenarios en los que tracert nos puede ayudar a diagnosticar y resolver problemas en la red.

El comando tracert permite trazar la ruta desde el origne hasta un destino remoto, mostrando todos los routers que hay de por medio y la latencia aproximada en cada salto, esta disponible en la mayoria de sistemas operativos, en windows se le conoce como tracert, en linux y en el IOS de cisco se le conoce como traceroute. En este post se da mayor enfásis a la versión de windows.

Para encontrar los routers intermedios, el tracert se vale de la opción time to live (TTL) de los paquetes IP, el TTL es un campo dentro de un paquete IP que fue diseñado para prevenir loops de enrutamiento (routing loops), una red mal diseñada a con problemas puede generar un loop, en el que un paquete va y viene entre dos routers, para prevenir que un paquete quede atrapado en un loop infinitamente, cada router que recibe un paquete es responsable de reducir el TTL en uno, cuando un router recibe un paquete con TTL de 0, lo descarta y debe responder con un paquete icmp tipo 11 (time to live exceeded).

En base a lo anterior, para encontrar la ruta hacia un destino, el comando tracert lo que hace es generar pings sucesivos hacia el ip destino, con valores de TTL que se van incrementando, el primer paquete ping generado tiene un TTL=1 por lo que el primer router que lo recibe lo descarta y devuelve un paquete icmp tipo 11, en este paquete de respuesta, el ip de destino es el de este primer router, así que ya tenemos la dirección del primer router, en realidad windows genera tres paquetes de ping con ttl=1 y de esta manera produce la salida ya conocida del tracert con tres columnas, los siguientes tres paquetes de ping generados tienen valor TTL=2, con lo que el que respondera será el segundo router, este proceso continua, hasta que se obtiene un icmp echo reply, que es el del destino, en el que estamos interesados.

En la siguiente figura, se ilustra el resultado de un tracert hacia google.com, en este caso el destino esta a 15 saltos, como mencione en el parrafo previo, siempre se generan tres solicitudes de ping, por lo que para cada salto tenemos tres resultados, esto ayuda a determinar la latencia promedio entre cada router, de manera predeterminada windows también trata de resolver el nombre, por lo que en algunos casos además del IP, aparece el nombre del router.


Ahora, volviendo a la pregunta original, como interpretar la salida del tracert, escencialmente lo que nos dice este comando, es los routers que debemos atravezar hacia el destino, para cada caso nos proporciona el IP (y en algunos casos el nombre) de los routers intermedios, y también nos da un estimado de la latencia.

Cuando utilizar tracert?, supongamos que no podemos llegar hasta un sitio remoto, si hacemos un ping hacia la dirección de este sitio y no responde, el siguiente paso es un tracert, el cual determinara el punto donde se deja de recibir una respuesta, puede ser un router local, o un router en el camino, el tracert nos dirá cual es el router con problemas.

Lo anterior es el uso más común del tracert, pero hay otros, suponiendo que el tiempo de respuesta es muy lento, un tracert puede ayudar a determinar el punto donde se está experimentando alta latencia y en base a este resultado investigar más a fondo, otro uso interesante, es por ejemplo en una red privada en la que se tiene más de una vía de llegada, por ejemplo un enlace principal y otro de backup, un tracert nos puede decir de manera rápida si estamos llegando al sitio a través del enlace principal, o del enlace de contingencia.

También me gustaría hacer algunas advertencias, algunos routers bloquean el paso del tracert, por lo que los resultados no siempre son confiables, especialmetne al trazar rutas en internet, de igual manera algunos routers dan baja prioridad a los paquetes icmp, por lo que los resultados de latencia no siempre van a ser confiables.

Creo que la mayor utilidad del tracert esta en una red privada, donde podemos establecer el comportamiento normal de la red, que saltos tenemos hacia el destino, que latencias aproxiamadas tenemos, en estos casos, a la hora de tener problemas, el tracert es una herramientas invaluable.

Para ver las opciones disponibles en la línea de comando, favor consultar el siguiente documento para un troubleshooting más avanzado, también se puede utilizar el comando pathping, y si te interesa ver como funciona el tracert en la vida real, te sugiero capturar tráfico en tu máquina utilizando wireshark en el momento de hacer un tracert, el resultado habla por si solo.

11/7/07

Wireshark 101 - Capturando tráfico utilizando una maquina en medio

Una de las claves en el uso de Wireshark, es donde ubicarlo para poder capturar tráfico, en el artículo Wirshark 101 – Como capturar tráfico, se describen tres opciones dependiendo de lo que se tenga disponible, un hub, un switch administrable o un network tap.

Los anteriores, no son los únicos métodos de capturar tráfico, en el Wiki de Wireshark se describen algunos más y en esta oportunidad quisiera profundizar en uno de estos métodos, capturar tráfico, utilizando una maquina en medio (MIM - Machine in the Middle), utilizando la opción de conexión de puentes (bridging) de Windows XP.

Con este método, una laptop con dos tarjetas de red, se convierte en un puente (bridge), o en otras palabras en un switch de dos puertos, y podremos ver el tráfico que pasa a través de cada tarjeta, y capturarlo con Wireshark, este escenario esta ilustrado en la siguiente figura.



En la figura anterior, en a, se ilustra un escenario muy común, desaeamos analizar el tráfico entre una PC, y un servidor, que estan conectadas a través de un switch no administrable (o es un switch administrable, pero no tenemos acceso a configurarlo o no soporta el port mirroring), la primera opción sería instalar el wireshark en la pc, o en el servidor, pero en muchos casos esto no es posible, en esta situación, podemos utilizar las conexiones de puente de XP, en una laptop con dos tarjetas de red, en este caso, la laptop se convierte escencialmente en un switch de dos puertos, el unico requisito es que el switch tenga dos puertos ethernet, en mi caso, probe la configuración en una laptop con un ethernet integrado, y una tarjeta pcmcia.

La configuración de esta solución es bastante sencila, se ingresa a conexiones de red, se seleccionan las dos tarjetas con las que se hará el puente, se da un click con el botón derecho y en el menú emergente, se selecciona, conexiones de puentes (o bridge connections si el OS está en ingles), al dar este click aparece el siguiente mensaje.


Despues de unos segundos, nuestro puente esta listo, y lo podemos comprobar ya que en conexioines de red, muestra un nuevo elemento, como se ilustra en la siguiente figura.



Finalmente, debemos configura wireshark para poder capturar el tráfico en esta interface virtual, en las opciones de captura de wireshark, el puente aparece como una interface adicional, en la siguiente figura, la interface del puente es la marcada como Microsoft MAC Bridge Virtual NIC, capturando en modo promiscuo con esta interface, se podrá ver el tráfico que pasa de una tarjeta a otra, en otras palabras, el tráfico que queremos capturar.


Luego de la captura, podemos desactivar el puente, (click derecho sobre el icono del puente en conexiones de red y click en desactivar), o eliminarlo definitivamente (click derecho y luego la opción eliminar).

La opción de conexiones de puentes, esta disponible en Windows XP y Windows 2003, supongo que también en Windows Vista, pero no he tenido la oportunidad de verificarlo, si deseas conocer más sobre este opción y diferentes usos prácticos para una red casera, puedes consultarlo directamente en el sitio de Microsoft.

10/7/07

Habilitando RIP en Vyatta

El origen de este Post, es una consulta de un lector de este blog, inicialmente pense responder directamente, pero luego me di cuenta que valía la pena publicar la respuesta como un post, de esta manera estará disponible a otros que pudiera interesarle el tema.

La consulta específica se puede ver aquí, en corto, es sobre como habilitar RIP en una red con tres routers vyatta, y dos clientes, como lo muestra el diagrama siguiente






Los detalles de numeración IP para cada subnet involucrada no estan en la consulta original, los puse para facilidad, obviamente no es un plan de numeración muy eficiente tener una red clase C en las subnet entre cada router, pero lo deje así por facilidad y para no entrar en detalles sobre prefijos, numeración IP etc, que no es el objetivo de este post

Básicamente lo que se desea en la red anterior, es configurar RIP para anunciar rutas en todos los routers, por ser una red muy pequeña, se pueden configurar simplemente rutas estáticas, pero configurar RIP también es una opción y es lo que desea hacer el amigo que hizo la consulta.

Asumo que cada PC tiene instalado el Vyatta y que todas sus interfaces han sido reconocidas y configuradas, siendo así, para habilitar RIP se debe configurar para cada interface en los routers A, B y C el siguiente comando (acá se ejemplifica el router B)

root@Router_B#set protocols rip interface eth0 address 192.168.1.2
root@Router_B#set protocols rip interface eth1 address 192.168.3.1

Con lo anterior se habilita el protocolo rip en las interfaces 0 y 1 del router B, en la tercera interface (la que conecta con el cliente D), no hay necesidad de configurar protocolo rip, ya que la PC cliente no estará ejecutando este protocolo.

La misma configuración debe aplicarse en los routers A y B, siempre con las interfaces que conectan con el otro router.

Para poder anunciar las rutas a través de RIP es necesario un paso adicional, se debe configurar una política para exportar rutas estaticas y rutas directamente conectadas, para esto, tome el ejemplo de la guía de configuración de Vyatta, básicamente estas políticas permiten redistribuir rutas, en nuestro caso específico lo que deseamos es poder anunciar a través de RIP las rutas estáticas y las rutas directamente conectadas, esto se logra con los siguientes comandos:

root@Router_B#set policy policy-statement EXPORT_STATIC term 1 from protocol static
root@Router_B#set policy policy-statement EXPORT_STATIC term 1 then action accept
root@Router_B#commit

root@Router_B#set policy policy-statement EXPORT_CONNECTED term 1 from protocol connected
root@Router_B#set policy policy-statement EXPORT_CONNECTED term 1 then action accept root@Router_B#commit



EXPORT_STATIC y EXPORT_CONNECTED, son definidas por el usuario, por lo que es la única parte del comando anterior que se puede cambiar a voluntad, lo demás debe ir tal como esta.



Los anteriore comandos deben permitir que cualquier ruta estatica o que esta directamente conectada, sea anunciada por RIP y con esto debería funcionar, para verificarlo se pueden utilzar los siguientes comandos:



root@Router_B#show route protocol rip - Muestra las rutas aprendidas a través de RIP

root@Router_B#show rip peer statistics all - Muestra estadísticas del protocolo

root@Router_B#show protocols rip - Para ver la configuración del protocolo



Finalmente, solo quiero hacer la advertencia de que no cuento con el equipo como para simular esta configuración en un laboratorio, por lo que no puedo garantizar que funcione, sin embargo invito al amigo que hizo la consulta y que tengo entendido que esta implementando esta configuración que la ponga en práctica y que nos valide si esta configuración funciona. La prueba de que todo trabaja bien, es que el cliente C debería poder hacer un ping al cliente D, propagando las rutas dinamicamente con RIP y sin necesidad de configurar rutas estaticas en ninguno de los routers.

Actualizado 12/07/2007

Gracias a la validación que hizo el amigo Ramón, de estos pasos de configuración, el esta en lo cierto, al decir que omiti el paso final, el ultimo paso mostrado en el post, era para configurar la política, sin embargo hay que aplicar esta politica al protocolo rip para que pueda utilizarla y pueda redistribuir rutas conectadas y rutas estáticas, así que como lo menciona el amigo, el paso final es el siguiente comando:

root@Router_B#set protocols rip export EXPORT_STATIC,EXPORT_CONNECTED

Así que, si estas configurando RIP con Vyatta, favor incluir el ultimo comando.

6/7/07

Wireshark 0.99.6 Disponible

Para todos los usuarios de Wireshark, el día 5 de julio fue liberada la versión más reciente de Wireshark, la nueva es la versión 0.99.6.

Esta nueva versión no introduce cambios revolucionarios, los detalles específicos se puden encontrar aquí, si bien no hay cambios tan trascendentales, sugiero a los usuarios del programa, actualizar a la nueva versión, ya que siempre introduce corrección de bugs, algunas características nuevas, soporte para nuevos protocolos y actualización del soporte de algunos protocolos.

Entre las características nuevas que me llamarón la atención, esta la posibilidad de guardar macros de filtros de visualización, en corto esto significa poder resumir un comando de filtrado muy extenso en una frase corta significativa, más detalles se pueden encontrar aquí.

Adicionalmente, esta versión nueva, tiene soporte para otros formatos de archivos de captura, ahora es posible abrir archivos mp3, interesante, esto no lo he probado, pero seguro que lo voy a hacer pronto.

Así que sin pensarlo más, los invito a bajar esta actualización de Wireshark.

26/6/07

CCENT Nueva Certificación Cisco y nuevo examen para CCNA

Entre las listas de correo a las que estoy inscrito, el día de hoy recibí un correo en el que supe sobre una nueva certificación de Cisco, la CCENT (Cisco Certified Entry Networking Technician), al parecer Cisco esta promoviendo esta certificación como un paso inicial en busca de la certificación CCNA, el exámen para esta nueva certificación es el 640-822 ICND1.

El contenido del exámen y la capacitación recomendad por Cisco, para obtener esta certificación se puede encontrar aquí, de acuerdo con el sitio de Cisco, este examen estará disponible a partir del primero de agosto de este año.

Adicionalmente al lanzamiento de esta certificación Cisco a anunciado un nuevo exámen para obtener la certificación CCNA, este nuevo examen cubre nuevos temas, y deja de lado algunos temás que en realidad ya no tienen mucha relevancía el día de hoy (como la configuración de ISDN), entre los nuevos temás cubiertos, estan la configuración de Redes Wireless, Cisco Network Assistant, ipv6, VPNs, y conceptos más avanzados de seguridad.

El nuevo examen es el 640-802 CCNA, alternativamente se puede realizar el examen 640-822 (que de paso otorga la certificación CCENT) y luego el exámen 640-816 ICND. Todos estos examenes estarán disponibles a partir del 1 de Agosto de 2007.

Para los que se han estado preparando para la certificación Cisco y el exámen 640-801, este estará disponible hasta el 6 de noviembre de 2007, asi que si ya han invetido bastante tiempo preparandose para este examen, más vale que consideren hacerlo pronto, o tendrán que estudiar de nuevo.

En lo personal, logre mi certificación CCNA hace algunos años, pero a estas alturas esta vencida y debo renovarla, digo debo por asuntos de trabajo, creo que voy a optar por esta nueva certificación, ya que se ve más completa, en realidad no soy un fanático de las certificaciones, pero creo que son de utilidad para poder demostrar los conocimientos, y para tener un poco más de credibilidad, muchas certificaciones es posible obtenerlas unicamente con una guía de estudio, pero normalmente las certificaciones de Cisco son un poco más complejas, y realmente se necesita tener experiencia en el campo para poder obtenerlas, adicionalmente la certificación no se trata unicamente de configurar routers y switches, también proporcionan una buena base para el soporte y administración de redes, asi que en general, considero provechoso obtener esta certificación.

El parrafo anterior es mi opinion personal en cuanto a las certificaciones y en particular en cuanto a la certificación Cisco, me gustaria saber que opinan los lectores de este blog, tienes equipo Cisco en tu red?, tienes la certificación CCNA?, o has considerado certificarte en Cisco o con algún otro fabricante?, tus opiniones son bienvenidas, puedes hacerlo dejando un comentario o escribiendo a lmunguia{arroba}soportederedes.com

20/6/07

Wireshark 101 - Recursos del Wiki

En este Post, me gustaría comentar sobre algunos recursos del Wiki de Wireshark que considero que pueden ser de mucha utilidad para los lectores de este blog.

Por su propia naturaleza, un Wiki permite a muchos autores editar un documento, asi que este es un recurso vivo, con mucha información interesante, y si no lo habías hecho antes, recomiendo darle una visita. a Continuación se describen algunos de los documentos que he encontrado interesantes y con toda seguridad hay más.

El primero que voy a mencionar es la página con información sobre Capture Setup (como en otras oportunidades las páginas del wiki estan en inglés), acá se proporcionan 4 pasos para poder iniciar la captura de paquetes, el paso 3 aplica para capturar el tráfico de la máquina en la que se tiene instalado el wireshark, el paso 4 para capturar tráfico destinado a otras máquinas y el paso 5 da algunas sugerencias para capturar tráfico remotamente, al final hay varios links para más información, por ejemplo el setup para capturar tráfico Wireless, capturar tráfico en VLANs y algunos otros interesantes, capturar tráfico de Bluetooth? bueno, de acuerdo con el wiki, no esta soportado del todo, pero algo se puede analizar

Otra página recomendable, es la que describe como setear el Wireshark para capturar tráfico en una red ethernet (por muchisimo la técnología LAN más utilizada), este es un buen recurso para los que encontraron interesante mi post como capturar tráfico, ya que describe métodos adicionales para poder capturar tráfico, uno que me parecio muy interesante y que espero poner a prueba próximamente es el de capturar insertando una pc (con dos tarjetas de red), entre las dos fuentes de tráfico (referido como Capture using a machine-in-the-middle, en esta página del wiki). También se describen algunos métodos más propios de hackers que otra cosa, recomiendo muchisima precaución al utilizar estos métodos (Capture using a MITM (Man-In-The-Middle) software y MAC Flooding) ya que sus resultados pueden ser impredecibles.

Probablemente estas con todo el deseo de abrir el wireshark y empezar a examinar paquetes, pero también es probable que no cuentes con el permiso para hacerlo en tu red, o simplemente no hay tráfico interesante que examinar, pues bien, no hay más excusas ya que en el Wiki también puedes bajar capturas de paquetes, hay un bonito listado y links hacia donde se pueden obtener más, es una manera interesante de estudiar diferentes protocolos. Conocer como se comporta un protocolo normalmente ayuda para detectar comportamientos anómalos a la hora de resolver problemas.

Hay muchos recursos más, sin embargo por razones de tiempo y espacio, unicamente voy a mencionar una más, y es una página con links de ayuda para resolución de problemas de redes, no es muy amplia, pero puedes encontrar algun recurso que sea de utilidad.

Si encuentras algún recurso que te sea de utilidad y consideras que puede ayudar a otros, no dudes en compartir tus experiencias dejando un comentario.

18/6/07

Wireshark 101 - Filtros de Visualización Parte II

Como se menciono en la parte I, los filtros de visualización son muchisimos, sin embargo existen muchas facilidad para poder construir filtros muy potentes, y encontrar esos paquetes sospechosos o que nos estan generando problemas en la red.

En esta parte, se describen algunas opciones que nos proporciona Wireshark, que nos facilitan mucho construir filtros.

Existe una manera muy fácil de determinar que filtros se pueden aplicar para un campo específico dentro de un paquete, como habrán notado, la pantalla principal de Wireshark consta de tres areas, en la parte superior, estan los paquetes capturados, con información sobre el tiempo, el origen, destino, protocolo y una línea con información básica del paquete, cuando un paquete se selecciona en la la parte superior, en la parte media se muestra el detalle de los protocolos presentes y en la parte inferior, se muestran los valores hexadecimales contenidos en el paquete.



Supongamos que quisieramos determinar, que páginas web se han accesado utilizando el método GET de http, como lo muestra la figura a continuación se tiene seleccionado el paquete No 7, que muestra la petición de una página web con el método GET. Desglosando el protocolo http en la parte media de la pantalla, se observa como parte del paquete el "Request Method", al seleccionar esto, se observa en la parte inferior izquierda de la pantalla de Wireshark (que he resaltado con un ovalo para facilidad), se observa el filtro que reconoce Wireshark para esta porción del paquete, en este caso se ve que el filtro apropiado sería http.request.method y nos indica que es de 3 bytes.






Así que ahora podríamos aplicar el filtro http.request.method == GET y obtendríamos todas las peticiones http de páginas web, utilizando el método GET.


Una forma alterna de llegar al mismo resultado, es utilizando el botón Expression que aparece a la derecha del área para escribir el filtro de visualización, al hacerlo nos abre una pantalla enl a que se pueden construir expresiones de filtrado, a continuación se muestra esta pantalla.


En el área izquierda aparece el Field Name, es un listado bastante grande, pero si sabemos que protocolo estamos buscando, se facilita encontrar lo que queremos, por ejemplo en este caso, escribiendo http me desplego este listado donde pude seleccionar http.request.method, al tener esto seleccionado, en la columna Relation aparecen todas las expresiones disponibles para este campo especifico, finalmente en la parte derecha se puede escribir el valor del filtro, en este caso en la columna de enmedio seleccione == y en la derecha escribi el valor GET, con esto obtenemos la expresión de filtrao http.request.method == GET, luego dar un clic en OK, y al regresar a la pantalla principal, dar un clic en Apply para aplicar el filtro.

Como en el caso de los filtros de captura, es posible guardar las expresiones más utilizadas, esto se puede hacer dando un clic en el boton Filter ubicado a la izquierda del área donde se escribe el filtro, por ejemplo si tenemos aplicado el filtro anterior, y deseamos guardarlo, unicamente dar un clic en Filter, poner un nombre al filtro, en el campo filter string ya debe aparecer el filtro que tenemos aplicado, un clic en Apply y listo.

Así que de esta manera sencilla podemos construir filtros de visualización, como lo he mencionado en oportunidades anteriores, en realidad el potencial de Wireshark solo lo vamos a poder aprovechar en la medida que estemos familiarizados con los protocolos, ya que al conocer las interioridades de cada protocolo, nos ayudara a construir expresiones de filtrado más especificas y podremos realizar análisis más efectivos.

12/6/07

Wireshark 101 - Filtros de visualización Parte I

Es tiempo de reanudar el tutorial sobre Wireshark, el silencio de las ultimas semanas ha sido por cuestiones de trabajo, si bien no puedo prometer actualizaciónes tan frecuentes, al menos voy a hacer mi mejor esfuerzo.

En esta oportunidad es el turno de los filtros de visualización (display filters), estos son los filtros que nos sirven para analizar el tráfico capturado, y son diferentes a los filtros de captura, én este caso, los filtros de visualización son más amplios y más potentes, incluso son más fáciles de aplicar, y son de mucha utilidad, para analizar el tráfico capturado.

En esta primera parte, quisiera mencionar los aspectos básicos de los filtros de visualización, empezando por el área donde podemos escribir un filtro, esto se ilustra en la siguiente figura:





Como puede verse en la figura, el área para escribir un filtro de captura es la ubicada abajo de la barra de herramientas. Para los filtros de visualización Wireshark nos proporciona una retroalimentación visual, si la expresión de filtrado que escribimos es correcta, el area se colorea en verde (como el caso del filtro ilustrado en la figura previa) si la expresión es incorrecta, el area se colorea en rojo, y al tratar de aplicarlo obtendremos un mensaje de error.

Los operadores que podemos utilizar para construir expresiones de filtro son los siguientes:

> ó gt Mayor que
< ó lt Menor que >= ó ge Mayor o igual que
<= ó le Menor o igual que == ó eq Igual a != ó ne No igual a Hay otro par de operadores, contains y matches que los reservaremos para otra oportunidad.

Dicho lo anterior, solo nos resta empezar a escribir filtros de visualización, hay busquedas que pueden ser muy sencillas y similares a los filtros de captura, por ejemplo:

arp - Para visualizar todos los paquetes de arp
http - Para visualizar paquetes cuyo protocolo de aplicación es http
tcp - Para visualizar todos los paquetes tcp
udp - Para visualizar todos los paquetes udp
icmp - Para visualizar paquetes icmp por ejemplo paquetes de ping.

Si lo que deseamos es filtrar direcciones especificas podemos utilizar los siguientes filtros:

ip.addr == 192.168.0.1 - Buscar paquetes cuyo ip de origen o destino es 192.168.0.1
ip.src == 192.168.01 - Buscar paquetes cuyo ip de origen es 192.168.0.1
tcp.port == 80 - Buscar paquetes tcp cuyo puerto de origen o destino es el 80
tcp.srcport == 80 - Buscar paquetes tcp cuyo puerto de origen es el 80

Los filtros de visualización son muchos, así que no tiene mucho sentido listarlos, sin embargo en la segunda parte vamos a estudiar como facilitarnos la vida al escribir filtros de visualización para poder encontrar justo ese paquete que estamos buscando.

6/6/07

Open Books

Ha pasado algun tiempo desde mi ultimo post, más del que quisiera, han sido algunas semanas muy cargadas de trabajo, pero aqui estoy de nuevo y espero seguir encontrando el tiempo para publicar sobre temas que sean de interes para aquellos colegas que soportan redes.

La revolución del Open Source, no se esta dando unicamente a nivel de software, también esta alcanzando el área de la publicación de libros, en esta oportunidad quisiera dedicar unas líneas, a algunos sitios donde podran encontrar libros completamente gratis para bajar en formato PDF, son libros que se han publicado bajo diferentes licencias open source, nuevamente una desventaja es que estan en Ingles, pero como he dicho en otras oportunidades, si el idioma no es una barrera, vale la pena hecharle un vistazo a estos libros, seguro encontraras algo que sea de utilidad en tu trabajo o estudio.


En primer lugar quisiera mencionar a la editorial Prentice Hall, que tiene una serie completa de libros open source, esta serie ha sido bautizada como "Bruce Perens Open Source series", en honor a Bruce Perens, autor de la definición de open source, un personaje muy respetado en la comunidad open source. Esta serie cuenta actualmente con 24 libros, todos con temas relacionados al open source. Por la orientación de este blog, los lectores podrían estar interesados en el libro Open Source Security Tools, un libro que describe como asegurar una red utilizando herramientas open source, el capitulo 6 esta dedicado a los network sniffers, donde se describe ethereal (ahora wireshark) y usos practicos del mismo.

Otra editorial importante que disponde de algunos titulos bajo licencia open source, es O'Reilly, estan disponibles 49 libros, 30 de los cuales ya estan fuera de impresión, pero que tratan temas interesantes, nuevamente por la orientación del blog, pude ser de interes el libro Asterisk The Future of Telephony, libro publicado en el 2005, que describe como instalar y configurar Asterisk, un PBX que maneja telefonía IP y que realmente como lo sugiere el titulo, promete mucho para el futuro de la telefonía IP.

Finalmente quisiera mencionar el libro Security Engineering, del autor Ross Anderson, es un libro que muchos expertos en seguridad recomiendan tanto para principiantes como para estudiantes intermedios y avanzados de la seguridad de redes, así que también vale la pena darle un vistazo, el libro esta disponible en capitulos individuales y además los primeros 7 capitulos estan disponibles en formato mp3, asi que si no tienes mucho tiempo para leer, puedes escucharlos en tus ratos libres.

Si alguien conoce otros libros disponibles bajo licencias open source, especialmente en español, su aportación será bienvenida, solo deja un comentario en este blog, o escribeme a lmunguia {arroba} soportederedes.com