CCNA

CCNA
Cisco Networking Academy

Archivo del blog

lunes, 7 de abril de 2014

Laboratorio 4.5.3 Examen de protocolos de las capas de aplicación y de transporte

Diagrama de topología 

 Tabla de direccionamiento

Dispositivo
Interfaz          
Dirección IP
Mascara de subred
Gateway
R1-ISP
S0/0/0
10.10.10.6
255.255.255.252
No aplicable

Fa0/0
192.168.254.253
255.255.255.0
No aplicable
R2-Central
S0/0/0
10.10.10.5
255.255.255.252
No aplicable

Fa0/0
172.16.255.254
255.255.0.0
No aplicable
Eagle Server
No aplicable
192.168.254.254
255.255.255.0
192.168.254.253

No aplicable
172.31.24.254
255.255.255.0
No aplicable
hostPod#A
No aplicable
172.16.Pod#.1
255.255.0.0
172.16.255.254
hostPod#B
No aplicable
172.16.Pod#.2
255.255.0.0
172.16.255.254
S1-Central
No aplicable
172.16.254.1
255.255.0.0
172.16.255.254
Objetivos de aprendizaje
Al completar esta práctica de laboratorio, usted podrá:
       Configurar la computadora host para capturar protocolos de la capa de aplicación.
       Capturar y analizar la comunicación HTTP entre la computadora host del módulo y un servidor Web.
       Capturar y analizar la comunicación FTP entre la computadora host del módulo y un servidor FTP.
       Observar los canales TCP para establecer y administrar la comunicación con conexiones HTTP y FTP.
Información básica  
La función principal de la capa de transporte es mantener un registro de las conversaciones de múltiples aplicaciones en el mismo host.  Sin embargo, cada aplicación tiene determinados requisitos para sus datos y, por lo tanto, se han desarrollado diferentes protocolos de transporte para que cumplan con estos requisitos.
Los protocolos de la capa de aplicación definen la comunicación entre servicios de red, como un servidor Web y un cliente y un servidor FTP y un cliente. Los clientes inician la comunicación con el servidor adecuado y el servidor responde al cliente. Para cada servicio de red existe un servidor determinado que escucha, en un puerto determinado, las conexiones del cliente. Puede haber diversos servidores en el mismo dispositivo final. Un usuario puede abrir diferentes aplicaciones del cliente para el mismo servidor, pero cada cliente se comunica, en forma exclusiva, con una sesión establecida entre el cliente y el servidor.
Los protocolos de la capa de aplicación se basan en los protocolos TCP/IP de menor nivel, como TCP o UDP. Esta práctica de laboratorio examina dos protocolos populares de la capa de aplicación, HTTP y FTP, y la manera en que los protocolos de la capa de transporte, TCP y UDP, administran el canal de comunicación. También se examinan las solicitudes más comunes de los clientes y las correspondientes respuestas del servidor.
Escenario  
En esta práctica de laboratorio se utilizarán las aplicaciones del cliente para conectarse a los servicios de red del eagle server. El usuario monitorea la comunicación con Wireshark y analiza los paquetes capturados. 
Se utiliza un explorador Web como Internet Explorer o Firefox para conectarse al servicio de red del eagle server. Eagle server tiene varios servicios de red previamente configurados, como el HTTP, que esperan responder las solicitudes del cliente. 
También se utilizará el explorador Web para examinar el protocolo FTP y el cliente de línea de comando FTP. El ejercicio demostrará que, aunque los clientes pueden diferir, la comunicación subyacente con el servidor sigue siendo la misma.
Tarea 1: Configuración de la computadora host del módulo para capturar protocolos de la capa de aplicación.
La práctica de laboratorio debe estar configurada como se muestra en el Diagrama de topología y en la tabla de dirección lógica. En caso contrario, pídale ayuda al instructor antes de continuar.
Paso 1: Descargar e instalar wireshark.

Figura 1. Descarga de FTP para Wireshark
Si Wireshark no está instalado en la computadora host del módulo, puede descargarse desde eagleserver.example.com. Vea la Figura 1. El URL de descarga es: ftp://eagleserver.example.com/pub/eagle_labs/eagle1/chapter3.
1.     Haga clic con el botón derecho del mouse sobre el nombre del archivo wireshark. Luego, guarde el archivo en la computadora host del módulo. 
2.     Cuando el archivo se haya descargado, haga doble clic en el nombre del archivo e instale Wireshark con las configuraciones predeterminadas.
Paso 2: Iniciar Wireshark y configurar la Interfaz de captura.
1.     Inicie Wireshark desde Inicio > Todos los programas > Wireshark > Wireshark
2.     Cuando se muestra la ventana que se abre, establezca la Interfaz de captura correcta.
La interfaz correcta es la interfaz con la dirección IP de la computadora host del módulo. Vea la Figura 2.

Figura 2: Ventana de captura de interfaz de Wireshark
Wireshark puede iniciarse haciendo clic en el botón Inicio de la interfaz. Después, la interfaz se utiliza como predeterminada y no se la necesita cambiar.
Wireshark debe comenzar a registrar datos. 
3.     Detenga Wireshark por ahora. Wireshark se utilizará en las siguientes tareas.
Tarea 2: Captura y análisis de la comunicación HTTP entre la computadora host del módulo y un servidor Web.
HTTP es un protocolo de capa de aplicación que depende de los protocolos de menor nivel, como TCP, para establecer y administrar el canal de comunicación. HTTP versión 1.1 se define en RFC 2616, en el año 1999. Esta parte de la práctica de laboratorio demostrará cómo las sesiones entre múltiples clientes Web y el servidor Web se mantienen separadas.
Paso 1: Iniciar las capturas de Wireshark.
Inicie una captura de Wireshark. Wireshark mostrará capturas basadas en el tipo de paquete. 
Paso 2: Iniciar el explorador Web del host del módulo.
1.     Con un explorador Web, como Internet Explorer o Firefox, conéctese al URL http://eagle-
server.example.com. Se muestra una página Web similar a la de la Figura 3. No cierre este

Figura 3: Explorador Web conectado al servidor Web
2.     Haga clic en el botón Actualizar del explorador Web. No debe haber cambios en la pantalla del cliente Web.
3.     Abra un segundo explorador Web y conéctese al URL http://eagle-
server.example.com/page2.html. En la pantalla aparece una página Web diferente.
No cierre ningún explorador hasta que la captura de Wireshark se detenga.
Paso 3: Detener las capturas de Wireshark y analizar los datos capturados.
1.     Detenga las capturas de Wireshark. 
2.     Cierre los exploradores Web. 
Se muestran los datos Wireshark resultantes. En el paso 2, se crearon al menos tres sesiones HTTP.
La primera sesión HTTP comenzó con una conexión a http://eagle-server.example.com. La

Figura 4: Sesión de HTTP capturada
En la Figura 4 se muestra un ejemplo de una sesión HTTP capturada. Antes de que la HTTP pueda comenzar, se debe crear una sesión TCP. Esto se ve en las tres primeras líneas de sesión, números 10, 11 y 12. Utilice los resultados de captura de Wireshark o similares para responder las siguientes preguntas:
3.     Complete la siguiente tabla con la información presentada en la sesión HTTP:
                                     
Dirección IP del explorador Web
 192.168.254.29
Dirección IP del servidor Web
 192.168.254.254
Protocolo de la capa de transporte (UDP/TCP)
 TCP
Número de puerto del explorador Web
 1051
Número de puerto del servidor Web
 80

4.     ¿Qué computadora inició la sesión HTTP y cómo lo hizo?
Lo inició el ordenador 10.99.85.249. Antes realiza una conexión de tres vías TCP y después envía una demanda HTTP (GET)


5.     ¿Qué computadora señaló inicialmente un fin a la sesión HTTP y cómo lo hizo?
El servidor Web 192.168.254.254 mediante una cohesión a tres vías


6.     Resalte la primera línea del protocolo HTTP, una solicitud GET (Obtener) del explorador Web. En la Figura 4 de arriba, la solicitud GET está en la línea 13. Vaya a la segunda ventana de Wireshark (la del medio) para examinar los protocolos en capas. Si es necesario, expanda los campos.
7.     ¿Qué protocolo se lleva (encapsulado) dentro del segmento TCP?
HTTP

8.     Expanda el último registro de protocolo y cualquier subcampo. Ésta es la información real enviada al servidor Web. Complete la siguiente tabla utilizando la información del protocolo.





Versión del protocolo
 http 1.1
Método de solicitud
 GET
* Solicitud URI
 /page2.html
Idioma
 es\r\n

*  La solicitud URI es la ruta para el documento solicitado. En el primer explorador, la ruta es el directorio raíz del servidor Web. Aunque no se solicitó ninguna página, algunos servidores Web están configurados para mostrar un archivo predeterminado, si está disponible.
El servidor Web responde con el próximo paquete HTTP. En la Figura 4 se puede ver en la línea 15. Una respuesta para el explorador Web es posible porque el servidor Web (1) comprende el tipo de solicitud y (2) tiene que devolver un archivo. Los crackers a veces envían solicitudes desconocidas o dañadas a servidores Web para intentar detener el servidor o poder acceder a la línea de comando del servidor. Además, una solicitud para una página Web desconocida da como resultado un mensaje de error.
9.     Resalte la respuesta del servidor Web y luego vaya a la segunda ventana (la del medio). Abra todos los subcampos de HTTP colapsados. Observe la información que devuelve el servidor. En esta respuesta, sólo hay unas pocas líneas de texto (las respuestas del servidor Web pueden contener miles o millones de bytes). El explorador Web comprende los datos de la ventana del explorador y los formatea correctamente. . 
10.  ¿Cuál es la respuesta del servidor Web para la solicitud GET del cliente Web?
Envía el ACK a 1 y un 200 ok con el HTML con la página que el cliente ha solicitado

11. ¿Qué significa esta respuesta? 
Que ha encontrado la página y la enviado al cliente

12.  Desplácese hacia abajo de la ventana superior de Wireshark hasta que se muestre la segunda sesión de HTTP, actualizada. La Figura 5 muestra una captura de muestra.

Figura 5: Sesión HTTP capturada para actualizar
El significado de la acción de actualización se encuentra en la respuesta del servidor, 304 Not Modified (304 No modificado). Con un paquete simple devuelto para la solicitud inicial de GET y para la actualización, el ancho de banda utilizada es mínimo. Sin embargo, para una respuesta inicial que contenga millones de bytes, un simple paquete de respuesta puede generar un significativo ahorro de ancho de banda. 
Debido a que esta página Web ha sido guardada en la caché del cliente Web, la solicitud GET contenía las siguientes instrucciones adicionales para el servidor Web.

If-modified-since: Fri, 26 Jan 2007 06:19:33 GMT\r\n
If-None-Match “98072-b8-82da8740”\r\n  <- page tag number (ETAG)
 
13.  ¿Cuál es la respuesta ETAG del servidor Web?
       if-None-Match: "552a-b8-851e5cc0"\r\n

Tarea 3: Captura y análisis de la comunicación FTP entre la computadora host del módulo y un servidor Web.
El protocolo de la capa de aplicación FTP ha recibido una revisión significativa desde que apareció por primera vez en RFC 114, en 1971. La versión 5.1 de FTP se define en RFC 959, de octubre de 1985. 
El explorador Web conocido no sólo puede usarse para comunicarse con el servidor HTTP. En esta tarea, el explorador Web y una utilidad de línea de comando FTP se utilizan para descargar datos desde un servidor FTP.

Figura 6: Pantalla de línea de comandos de Windows
Para prepararse para esta tarea, abra una línea de comandos en la computadora host del módulo. Esto puede lograrse haciendo clic en Inicio > Ejecutar y luego escribiendo CMD y haciendo clic en Aceptar.
Se muestra una pantalla similar a la de la Figura 6.
Paso 1: Iniciar las capturas de Wireshark. 
Si es necesario, consulte la Tarea 1, Paso 2, para abrir Wireshark. 
Paso 2: Iniciar el cliente FTP de la línea de comandos host del módulo.
1.     Inicie una sesión FTP de una computadora host del módulo con el servidor FTP, usando la utilidad del cliente FTP de Windows. Para autenticar, utilice la identificación de usuario anonymous (anónima). Como respuesta a la petición de contraseña, presione <Intro>. 

> ftp eagle-server.example.com
Conectado a eagle-server.example.com.
220 Bienvenido al servicio FTP de eagle-server. Usuario (eagle-server.example.com:(ninguno)): anonymous
331 Especifique la contraseña. Contraseña: <INTRO> 230 Conexión exitosa.

2.     El indicador del cliente FTP es ftp>. Esto significa que el cliente FTP espera un comando para enviar al servidor FTP. Para ver una lista de los comandos del cliente FTP, escriba help <INTRO> (ayuda, <aceptar>): ftp> help
Los comandos se pueden abreviar.  Comandos:

!          delete       literal    prompt       send
?          debug        ls         put          status append     dir 
         mdelete    pwd          trace ascii      disconnect   mdir       quit         type bell       get          mget       quote        user binary     glob         mkdir      recvverbose bye        hash         mls        remotehelp cd         help         mput       rename
close      lcd          open       rmdir

Desafortunadamente, la gran cantidad de comandos del cliente FTP dificulta el uso de la utilidad de la línea de comandos para un principiante. Sólo usaremos unos pocos comandos para la evaluación de Wireshark.

3.     Escriba el comando dir para mostrar los contenidos actuales del directorio:
ftp> dir
200    Comando PORT command exitoso. Considere usar PASV.
150 Aquí aparece el listado de directorio.
drwxr-xr-x    3 0        0            4096 Jan 12 04:32 pub

El cliente FTP es un directorio raíz del servidor FTP. Éste no es el directorio raíz real del servidor; sólo el punto más importante al que puede acceder el usuario anonymous. El usuario anonymous ha sido ubicado en una root jail, prohibiendo el acceso fuera del directorio actual. 
4.     Sin embargo, los subdirectorios se pueden recorrer y los archivos se pueden transferir a la computadora host del módulo. Vaya al directorio pub/eagle_labs/eagle1/chapter2, descargue un archivo y salga.
ftp> cd pub/eagle_labs/eagle1/chapter2
250 Se cambió exitosamente el directorio.
ftp> dir
200    Comando PORT command exitoso. Considere usar PASV.
150 Aquí aparece el listado de directorio.
-rw-r--r--  1 0 100     5853 Jan 12 04:26 ftptoeagle-server.pcap
-rw-r--r--  1 0 100     4493 Jan 12 04:27 http to eagle-server.pcap
-rw-r--r--  1 0 100     1486 Jan 12 04:27 ping to 192.168.254.254.pcap
-rw-r--r--  1 0 100 15163750 Jan 12 04:30 wireshark-setup-0.99.4.exe 226 Se envió correctamente el directorio. ftp: 333 bytes received in 0.04Seconds 8.12Kbytes/sec.
ftp> get "ftptoeagle-server.pcap"
200 Comando PORT command exitoso. Considere usar PASV.
150 Abriendo la conexión de datos con el modo BINARIO para ftptoeagleserver.pcap (5853 bytes).
226 Se envió correctamente el archivo. ftp: 5853 bytes recibidos en 0.34 segundos 17.21 Kbytes/seg. ftp> quit
221 Adiós.

5.     Cierre la ventana de la línea de comandos con el comando exit (salir).
6.     Detenga las capturas de Wireshark y guárdelas como FTP_Command_Line_Client.
Paso 3: Iniciar el explorador Web del host del módulo. 
1.     Inicie nuevamente las capturas Wireshark. 

Figura 7. Explorador Web utilizado como un cliente FTP
2.     Abra un explorador Web como lo muestra la Figura 7 y escriba el URL ftp://eagle-
server.example.com. Se abre una ventana del explorador que muestra el directorio pub. Además, el explorador Web se registró en el servidor FTP como usuario Anonymous, como se muestra en la parte inferior de la captura de la pantalla. 
3.     Utilizando el explorador, vaya por los directorios hasta la ruta URL pub/eaglelabs/eagle1/chapter2. Haga doble clic en el archivo ftptoeagle-server.pcap y guarde el archivo. 
4.     Al finalizar, cierre el explorador Web.
5.     Detenga las capturas de Wireshark y guárdelas como FTP_Web_Browser_Client.
Paso 4: Detener las capturas de Wireshark y analizar los datos capturados.
1.     Si aún no está abierta, abra la captura de Wireshark FTP_Web_Browser_Client. 
2.     En la ventana superior de Wireshark, seleccione la captura FTP que es la primera transmisión del protocolo FTP. Respuesta: 220. En la Figura 8, es la línea número 23. 

Figura 8: Captura de Wireshark de una sesión FTP con un explorador Web

3.     Vaya a la ventana de Wireshark del medio y expanda el protocolo FTP. FTP se comunica usando códigos, como HTTP. 
¿Cuál es la respuesta 220 del servidor FTP?
Verifica que el usuario y contraseña son correctos

Cuando el servidor FTP emitió una Respuesta: 331. Especifique la contraseña. ¿Cuál fue la respuesta del explorador Web?
_Request arg: IEUser@

¿Qué número de puerto utiliza el cliente FTP para conectarse al puerto 21 del servidor FTP?
1078

Cuando se transfieren datos, o con listados simples de directorios, se abre un nuevo puerto. Esto se llama modo de transferencia. El modo de transferencia puede ser activo o pasivo. En modo activo, el servidor abre una sesión TCP para el cliente FTP y transfiere datos por ese puerto. El número de puerto de origen del servidor FTP es 20 y el número de puerto del cliente FTP es un número mayor a 1023. Si embargo, en el modo pasivo, el cliente abre un nuevo puerto para el servidor para la transferencia de datos. Ambos números de puerto son mayores a 1023.
¿Cuál es el número de puerto de Datos FTP utilizado por el servidor FTP?
20
4. Abra la captura de Wireshark FTP_Web_Browser_Client y observe la comunicación FTP. Aunque los clientes sean diferentes, los comandos son similares.
Paso 5: Modos de transferencia FTP activo y pasivo
Las implicaciones entre los dos modos son muy importantes desde el punto de vista de seguridad de la información. El modo de transferencia establece cómo se configura el puerto de datos. 
En el modo de transferencia activo, un cliente inicia una sesión FTP con el servidor del puerto TCP 21 bien conocido. Para transferir datos, el servidor inicia una conexión desde el puerto bien conocido TCP 20 para un puerto alto del cliente, un número de puerto mayor a 1023. Vea la figura 9.
 
Figura 9. 
A menos que el firewall del cliente FTP esté configurado para permitir conexiones desde afuera, la transferencia de datos puede fallar. Para establecer conectividad para la transferencia de datos, el cliente FTP debe permitir las conexiones relacionadas al FTP (que implican un filtrado de paquetes con estado) o deshabilitar el bloqueo. 
En el modo de transferencia pasivo, un cliente inicia una sesión FTP con el servidor del puerto 21 TCP bien conocido, la misma conexión usada en el modo de transferencia activo. Sin embargo, para transferir datos existen dos cambios importantes. Primero, el cliente inicia la conexión de datos con el servidor. Segundo, los puertos altos se utilizan en ambos extremos de la conexión. Vea la Figura 10.
 
Figura 10. 
A menos que el servidor FTP esté configurado para permitir una conexión a un puerto alto aleatorio, la transferencia de datos fallará. No todas las aplicaciones del cliente FTP admiten cambios para el modo de transferencia. 
Tarea 4: Reflexión
Los protocolos HTTP y FTP dependen de TCP para comunicarse. TCP administra la conexión entre el cliente y el servidor para asegurar la entrega de datagramas.
Una aplicación de cliente puede ser un explorador Web o una utilidad de línea de comando, pero cada una debe enviar y recibir mensajes que puedan ser interpretados en forma correcta. El protocolo de comunicación se define normalmente en un RFC.
El cliente FTP debe autenticarse al servidor FTP aunque la autenticación esté abierta al mundo. El usuario Anonymous tiene, normalmente, acceso restringido al servidor FTP y no puede cargar archivos.
Una sesión HTTP comienza cuando se realiza una solicitud al servidor HTTP y finaliza cuando el cliente HTTP ha acusado recibo. En cambio, una sesión FTP finaliza cuando el cliente indica que la deja, utilizando el comando quit
HTTP utiliza un protocolo simple para comunicarse con el servidor HTTP. El servidor escucha en el puerto 80 para conexiones de clientes. En cambio, FTP utiliza dos protocolos. El servidor FTP escucha en el puerto 21 TCP, como la línea de comandos. Según el modo de transferencia, el servidor o cliente puede iniciar la conexión de datos.
Se puede acceder a los protocolos de capa de aplicación múltiple mediante un explorador Web simple.
A pesar de que sólo se examinaron HTTP y FTP, el explorador también admite Telnet y Gopher.
El explorador actúa como un cliente para el servidor, enviando solicitudes y procesando respuestas. 
Tarea 5: Desafío
Habilite la captura de Wireshark, utilice un explorador Web para navegar a R2 en
http://172.16.255.254/level/7/exec o utilice un cliente Telnet para conectarse a un dispositivo de Cisco, como S1-Central o R2-Central. Observe el comportamiento de HTTP o protocolo Telnet. Emita algunos comandos para observar resultados. 
¿Cuál es la similitud de Telnet del protocolo de la capa de aplicación con HTTP y FTP? ¿En qué difiere TELNET?
Las respuestas variarán, pero Telnet es similar a HTTP y FTP en cuanto los tres utilizan protocolos TCP para el envío de datagramas garantizado y orientado por conexión

Tarea 6: Limpieza
Si se instaló Wireshark en la computadora host del módulo para esta práctica de laboratorio, el instructor querrá que se elimine la aplicación. Para eliminar Wireshark, haga clic en Inicio > Panel de control > Agregar o quitar programas. Vaya hacia abajo en la lista, haga clic con el botón derecho del mouse en Wireshark y haga clic en Quitar.
Si se deben eliminar los archivos descargados desde la computadora host del módulo, elimine todos los archivos recuperados desde el servidor FTP.

No hay comentarios:

Publicar un comentario