2.3.7 Capa de aplicación · 2019. 10. 15. · casi totalmente, hace unos años, cuando apareció y...

10
2.3.7 Capa de aplicación Protocolos

Transcript of 2.3.7 Capa de aplicación · 2019. 10. 15. · casi totalmente, hace unos años, cuando apareció y...

Page 1: 2.3.7 Capa de aplicación · 2019. 10. 15. · casi totalmente, hace unos años, cuando apareció y se popularizó el SSH, que puede describirse como una versión cifrada de telnet.

2.3.7 Capa de aplicaciónProtocolos

Page 2: 2.3.7 Capa de aplicación · 2019. 10. 15. · casi totalmente, hace unos años, cuando apareció y se popularizó el SSH, que puede describirse como una versión cifrada de telnet.

HTTP

El protocolo de transferencia de hipertexto (HTTP, HyperText Transfer Proto-col) es el protocolo usado en cada transacción de la Web (WWW). El hipertexto es el contenido de las páginas Web, y el protocolo de transferencia es el sis-tema mediante el cual se envían las peticiones de acceder a una página Web, y la respuesta de esa Web, remitiendo la información que se verá en pantalla como, por ejemplo, lo que estás observando en tu monitor es producto de una transacción Web. También sirve el protocolo para enviar información adicional en ambos sentidos, como formularios con mensajes y otros similares.

HTTP es un protocolo sin estado, es decir, que no guarda ninguna informa-ción sobre conexiones anteriores. Al finalizar la transacción todos los datos se pierden. Por esto se popularizaron las cookies, que son pequeños ficheros guardados en la propia computadora que puede leer un sitio Web al estable-cer conexión con él y, de esta forma, reconocer a un visitante que ya estuvo en ese sitio anteriormente. Gracias a esta identificación, el sitio Web puede almacenar gran número de información sobre cada visitante, ofreciéndole así un mejor servicio.

La versión actual de HTTP es la 1.1, y su especificación está en el docu-mento RFC-2616. HTTP dispone de una variante cifrada mediante SSL llamada HTTPS.

Transacciones HTTP

El protocolo HTTP es un protocolo sin estado; está basado en el modelo clien-te-servidor: Un cliente HTTP abre una conexión y realiza su solicitud al servi-dor, el cual responde generalmente el recurso solicitado y la conexión se cierra. El formato, tanto del mensaje como de la respuesta, es como sigue:

<Linea inicial> Header-1: value-1 ... Header-n: value-n

<Cuerpo del mensaje (Opcional)> La línea inicial es diferente en las solicitudes y en las respuestas. En las solici-tudes van tres campos separados por un espacio en blanco: “Método recurso versiónDelProtocolo”. Por ejemplo: “GET /path/to/file/index.html HTTP/1.0”. La línea inicial de una respuesta tiene tres campos separados por un espacio: “versiónDelProtocolo códigoRespuesta Mensaje”. Por ejemplo: “HTTP/1.0 200 OK” o bien “HTTP/1.0 404 Not Found”.

Page 3: 2.3.7 Capa de aplicación · 2019. 10. 15. · casi totalmente, hace unos años, cuando apareció y se popularizó el SSH, que puede describirse como una versión cifrada de telnet.

Los encabezados están normados en el protocolo e incluyen, en el caso de una solicitud, información del navegador y eventualmente del usuario cliente; en el caso de una respuesta, información sobre el servidor y sobre el recurso. El cuerpo del mensaje contiene el recurso a transferir o el texto de un error en el caso de una respuesta. En el caso de una solicitud, puede contener parámetros de la llamada archivos enviados al servidor. Actualmente, viene reemplazando al FTP en la transferencia de archivos.conocido como CIFS), DCE/RPC, o más concretamente, MSRPC, el servidor WINS también conocido como el servidor de nombres NetBIOS (NBNS), la suite de protocolos del dominio NT, con su Logon de entrada a dominio, la base de datos del gestor de cuentas seguras (SAM), el servicio Local Security Authority (LSA) o autoridad de seguridad lo-cal, el servicio de impresoras de NT y recientemente el Logon de entrada de Active Directory, que incluyen una versión modificada de Kerberos y una ver-sión modificada de LDAP. Todos estos servicios y protocolos son frecuente-mente referidos de un modo incorrecto como NetBIOS o SMB.

Samba configura directorios Unix/Linux (incluyendo sus subdirectorios) como recursos para compartir a través de la red. Para los usuarios de Microsoft Win-dows, estos recursos aparecen como carpetas normales de red. Los usuarios de Linux pueden montar en sus sistemas de archivos estas unidades de red como si fueran dispositivos locales, o utilizar la orden smbclient para conectarse a ellas muy al estilo del cliente de la línea de órdenes ftp. Cada directorio puede tener diferentes permisos de acceso sobrepuestos a las protecciones del siste-ma de archivos que se esté usando en Linux. Por ejemplo, las carpetas home pueden tener permisos de lectura y escritura para cada usuario, permitiendo que cada uno acceda a sus propios archivos; sin embargo, deberemos cambiar los permisos de los archivos localmente para dejar al resto ver nuestros archi-vos, ya que con dar permisos de escritura en el recurso no será suficiente.

FTP

El File Transfer Protocol (Protocolo de Transferencia de Ficheros) es el ideal para transferir grandes bloques de datos por la red. Su comportamiento está definido por la recomendación RFC 959.

Se precisa de un Servidor FTP y un cliente FTP, puede darse el caso de que los servidores sean de libre acceso para todo el mundo y entonces estamos hablando de login anónimo o FTP anónimo.

La mayoría de las páginas Web a nivel mundial son subidas a los respecti-vos servidores mediante este protocolo.

Por defecto utiliza los puertos 20 y 21. El puerto 20 es el utilizado para el flujo de datos entre el cliente y el servidor y el puerto 21 para el flujo de control, es decir, para enviar las órdenes del cliente al servidor.

Page 4: 2.3.7 Capa de aplicación · 2019. 10. 15. · casi totalmente, hace unos años, cuando apareció y se popularizó el SSH, que puede describirse como una versión cifrada de telnet.

Mientras se transfieren datos a través del flujo de datos, el flujo de control per-manece en espera. Esto puede causar problemas en el caso de transferencias de datos muy grandes realizadas a través de cortafuegos que interrumpan sesiones después de periodos largos en espera. El archivo puede que se haya transferido con éxito, pero el cortafuegos puede desconectar la sesión de con-trol, por lo que se genera un error.

También se puede utilizar el protocolo FTP, utilizando un navegador Web con una dirección del tipo ftp://usuario:contraseña@servidor, por ejemplo: ftp://usulec:[email protected].

Algunos servidores sólo requieren que escribas la dirección ftp://ftp.miempre-sa.com, por ejemplo, escribe en tu explorador la siguiente dirección: ftp://ftp.microsoft.com.

Observarás lo siguiente:

Ahora puedes copiar archivos y descargarlos en tu computadora.

Puede emplearse también wget. Este programa recibe un URL y puedes des-cargarlo, así como también a todos los documentos que este enlace y los que los documentos enlazados enlacen de forma recursiva.

Figura 1. Aspecto de una conexión ftp.

Page 5: 2.3.7 Capa de aplicación · 2019. 10. 15. · casi totalmente, hace unos años, cuando apareció y se popularizó el SSH, que puede describirse como una versión cifrada de telnet.

Simple Mail Transfer Protocol

Simple Mail Transfer Protocol (SMTP), o protocolo simple de transferencia de correo electrónico. Protocolo de red basado en texto utilizado para el inter-cambio de mensajes de correo electrónico entre computadoras o distintos dis-positivos (PDA’s, teléfonos móviles, etc.).

Historia

En 1982 se diseñó el primer sistema para intercambiar correos electrónicos para ARPANET, definido en dos Request for comments: RFC 821 y RFC 822. La primera de ellas define el protocolo y la segunda el formato del mensaje.

Con el tiempo se ha convertido en uno de los protocolos más usados en In-ternet. Para adaptarse a las nuevas necesidades surgidas del crecimiento y po-pularidad de Internet se han hecho varias ampliaciones a este protocolo, como poder enviar texto con formato o archivos adjuntos.

Funcionamiento

SMTP se basa en el modelo cliente-servidor, donde un cliente envía un mensa-je a uno o varios receptores.

En el conjunto de protocolos TCP/IP, el SMTP va por encima del TCP, usan-do normalmente el puerto 25 en el servidor para establecer la conexión.

POP

En informática se utiliza el Post Office Protocol (POP3) en clientes locales de correo para obtener los mensajes de correo electrónico almacenados en un servidor remoto. La mayoría de los suscriptores de los proveedores de Internet acceden a sus emails a través de POP3.

Características

El diseño de POP3 y sus predecesores permite que los usuarios con conexiones intermitentes (tales como las conexiones dialup), descarguen su e-mail cuan-do se encuentren conectados, de tal manera que puedan ver y manipular sus mensajes sin necesidad de permanecer conectados. Cabe mencionar que la mayoría de los clientes de correo incluyen la opción de dejar los mensajes en el servidor, de manera tal que, un cliente que utilice POP3 se conecta, obtiene to-dos los mensajes, los almacena en la computadora del usuario como mensajes nuevos, los elimina del servidor y, finalmente, se desconecta. En contraste, el protocolo IMAP permite los modos de operación conectado y desconectado.

Page 6: 2.3.7 Capa de aplicación · 2019. 10. 15. · casi totalmente, hace unos años, cuando apareció y se popularizó el SSH, que puede describirse como una versión cifrada de telnet.

Los clientes de correo electrónico que utilizan IMAP dejan, por lo general, los mensajes en el servidor hasta que el usuario los elimina explícitamente. Esto y otros factores hacen que la operación de IMAP permita a múltiples clientes acceder al mismo buzón de correo. La mayoría de los clientes de correo elec-trónico soportan POP3 o IMAP; sin embargo, sólo unos cuantos proveedores de Internet ofrecen IMAP.

Los clientes que utilizan la opción dejar mensajes en el servidor, por lo general, utilizan la orden UIDL (‘Unique IDentification Listing). La mayoría de las ór-denes de POP3 identifican los mensajes, dependiendo su número ordinal del servidor de correo. Esto genera problemas al momento que un cliente preten-de dejar los mensajes en el servidor, ya que los mensajes con número cambian de una conexión al servidor a otra. Por ejemplo, un buzón de correo contenía 5 mensajes en la última conexión, después otro cliente elimina el mensaje nú-mero 3, el siguiente usuario se topará con que los últimos dos mensajes están decrementados en uno. El UIDL proporciona un mecanismo que evita los pro-blemas de numeración. El servidor le asigna una cadena de caracteres única y permanente al mensaje. Cuando un cliente de correo compatible con POP3 se conecta al servidor utiliza la orden UIDL para obtener el mapeo del identi-ficador de mensaje. De esta manera, el cliente puede utilizar ese mapeo para determinar qué mensajes hay que descargar y cuáles hay que guardar al mo-mento de la descarga.

Al igual que otros viejos protocolos de Internet, POP3 utilizaba un mecanismo de firmado sin cifrado. La transmisión de contraseñas de POP3 en texto plano aún se da. En la actualidad, POP3 cuenta con diversos métodos de autentica-ción que ofrecen una diversa gama de niveles de protección contra los accesos ilegales al buzón de correo de los usuarios. Uno de éstos es APOP, el cual utiliza funciones MD5 para evitar los ataques de contraseñas. Mozilla, Eudora, Novell Evolution, así como Mozilla Thunderbird, implementan funciones APOP.

SSH

SSH (Secure SHell) es el nombre de un protocolo y del programa que lo imple-menta, y sirve para acceder a máquinas remotas a través de una red.

Además de la conexión a otras máquinas, SSH nos permite copiar datos de forma segura (tanto ficheros sueltos como simular sesiones FTP cifradas), gestionar claves RSA para no escribir claves al conectar a las máquinas y pasar los datos de cualquier otra aplicación por un canal seguro de SSH.

Page 7: 2.3.7 Capa de aplicación · 2019. 10. 15. · casi totalmente, hace unos años, cuando apareció y se popularizó el SSH, que puede describirse como una versión cifrada de telnet.

Telnet

Telnet es el nombre de un protocolo (y del programa informático que imple-menta el cliente) que se utiliza para acceder mediante una red a otra compu-tadora, para manejarla como si estuviéramos sentados delante de ella. Para que la conexión funcione, como en todos los servicios de Internet, la máquina a la que se acceda debe tener un programa especial que reciba y gestione las conexiones. El puerto que se utiliza generalmente es el 23.

Sólo sirve para acceder en modo terminal, es decir, nada de gráficos, pero fue una herramienta muy útil para arreglar fallos a distancia, sin necesidad de estar físicamente en el mismo sitio que la máquina que los tenía. También se usaba para consultar datos a distancia, como datos personales en máquinas accesi-bles por red, información bibliográfica, etcétera.

Su mayor problema es de seguridad, ya que todos los nombres de usuario y contraseñas necesarias para entrar en las máquinas viajan por la red como texto plano (cadenas de texto sin encriptar). Esto facilita que cualquiera que espíe el tráfico de la red pueda obtener los nombres de usuario y contraseñas, y así acceder él también a todas esas máquinas. Por esta razón dejó de usarse, casi totalmente, hace unos años, cuando apareció y se popularizó el SSH, que puede describirse como una versión cifrada de telnet.

El Protocolo Simple de administración de red o SNMP es un protocolo de la capa de aplicación que facilita el intercambio de información de administra-ción entre dispositivos de red. Es parte de la suite de protocolos TCP/IP. SNMP permite a los administradores supervisar el desempeño de la red, buscar y re-solver sus problemas, y planear su crecimiento.

Las versiones de SNMP más utilizadas son dos: SNMP versión 1 (SNMPv1) y SNMP versión 2 (SNMPv2). Ambas versiones tienen un número de caracterís-ticas en común, pero SNMPv2 ofrece mejoras como, por ejemplo, operaciones adicionales.

SNMP en su última versión (SNMPv3) posee cambios significativos en relación con sus predecesores, sobre todo en aspectos de seguridad, sin embargo, no ha sido mayoritariamente aceptado en la industria.

Page 8: 2.3.7 Capa de aplicación · 2019. 10. 15. · casi totalmente, hace unos años, cuando apareció y se popularizó el SSH, que puede describirse como una versión cifrada de telnet.

Componentes básicos de SNMP

Una red administrada a través SNMP consiste de tres componentes claves:

• Dispositivos administrados.• Agentes.• Sistemas administradores de red (NMS’s).

Un dispositivo administrado es un nodo de red que contiene un agente SNMP y reside en una red administrada. Éstos recogen y almacenan información de administración, la cual es puesta a disposición de los NMS’s, usando SNMP. Los dispositivos administrados, a veces llamados elementos de red, pueden ser routers, servidores de acceso, switches, bridges, hubs, computadores o im-presoras.

Un agente es un módulo de software de administración de red que reside en un dispositivo administrado. Un agente posee un conocimiento local de in-formación de administración, la cual es traducida a un formato compatible con SNMP.

Un NMS ejecuta aplicaciones que supervisan y controlan a los dispositi-vos administrados. Los NMS’s proporcionan el volumen de recursos de proce-samiento y memoria requeridos para la administración de la red. Uno o más NMS’s deben existir en cualquier red administrada.

Comandos básicos de SNMP

Los dispositivos administrados son supervisados y controlados usando cuatro comandos SNMP básicos: lectura, escritura, notificación y operaciones trans-versales.

• El comando de lectura es usado por un NMS para supervisar elementos de red. El NMS examina diferentes variables que son mantenidas por los disposi-tivos administrados.

• El comando de escritura es usado por un NMS para controlar elementos de red. El NMS cambia los valores de las variables almacenadas dentro de los dis-positivos administrados.

• El comando de notificación es usado por los dispositivos administrados para reportar eventos en forma asincrónica a un NMS. Cuando cierto tipo de evento ocurre, un dispositivo administrado envía una notificación al NMS.

Page 9: 2.3.7 Capa de aplicación · 2019. 10. 15. · casi totalmente, hace unos años, cuando apareció y se popularizó el SSH, que puede describirse como una versión cifrada de telnet.

Las operaciones transversales son usadas por el NMS para determinar qué va-riables soporta un dispositivo administrado y para recoger secuencialmente información en tablas de variables, como, por ejemplo, una tabla de rutas.

DNS

Domain Name System es una base de datos distribuida y jerárquica que al-macena información asociada a nombres de dominio en redes como Internet. Aunque como base de datos el DNS es capaz de asociar distintos tipos de infor-mación a cada nombre, los usos más comunes son la asignación de nombres de dominio a direcciones IP y la localización de los servidores de correo electróni-co de cada dominio.

La asignación de nombres a direcciones IP es ciertamente la función más cono-cida de los protocolos DNS. Por ejemplo, si la dirección IP del sitio FTP de prox.ve es 200.64.128.4, la mayoría de la gente llega a este equipo especificando ftp.prox.ve y no la dirección IP. Además de ser más fácil de recordar, el nombre es más fiable. La dirección numérica podría cambiar por muchas razones, sin que tenga que cambiar el nombre.

Inicialmente, el DNS nació de la necesidad de recordar fácilmente los nombres de todos los servidores conectados a Internet. En un inicio, SRI (aho-ra SRI International) alojaba un archivo llamado HOSTS que contenía todos los nombres de dominio conocidos (técnicamente, este archivo aún existe -la mayoría de los sistemas operativos actuales todavía pueden ser configurados para revisar su archivo hosts).

El crecimiento explosivo de la red causó que el sistema de nombres cen-tralizado en el archivo HOSTS no resultara práctico y en 1983, Paul Mockape-tris publicó los RFCs (conjunto de notas técnicas y organizativas donde se des-criben los estándares o recomendaciones de Internet) 882 y 883, definiendo lo que hoy en día ha evolucionado al DNS moderno.

Componentes

Para la operación práctica del sistema DNS se utilizan tres componentes prin-cipales:

• Los Clientes DNS (resolvers), un programa cliente DNS que se ejecuta en la computadora del usuario y que genera peticiones DNS de resolución de nom-bres a un servidor DNS (Por ejemplo: ¿Qué dirección IP corresponde a nombre.dominio?).

• Los Servidores DNS (name servers), que contestan las peticiones de los clien-

Page 10: 2.3.7 Capa de aplicación · 2019. 10. 15. · casi totalmente, hace unos años, cuando apareció y se popularizó el SSH, que puede describirse como una versión cifrada de telnet.

tes, los servidores recursivos tienen la capacidad de reenviar la petición a otro servidor si no disponen de la dirección solicitada.

• Y las Zonas de autoridad, porciones del espacio de nombres de dominio que almacenan los datos. Cada zona de autoridad abarca, al menos, un dominio y posiblemente sus subdominios, si estos últimos no son delegados a otras zo-nas de autoridad.

Entendiendo las partes de un nombre de dominio

Un nombre de dominio usualmente consiste en dos o más partes (técnicamen-te etiquetas), separadas por puntos cuando se las escribe en forma de texto. Por ejemplo:

cursos.clavijero.edu.mx ó es.Wikipedia.org

A la etiqueta ubicada a la derecha, se le llama dominio de nivel superior (inglés < Top Level Domain). Como org en cursos.clavijero.edu.mx o es.Wikipedia.org.

Cada etiqueta a la izquierda especifica una subdivisión o subdominio. Nótese que “subdominio” expresa dependencia relativa, no dependencia absoluta. En teoría, esta subdivisión puede tener hasta 127 niveles, y cada etiqueta conte-ner hasta 63 caracteres, pero restringido a que la longitud total del nombre del dominio no exceda los 255 caracteres, aunque en la práctica los dominios son casi siempre mucho más cortos.

Finalmente, la parte más a la izquierda del dominio suele expresar el nombre de la máquina (en inglés hostname). El resto del nombre de dominio simple-mente especifica la manera de crear una ruta lógica a la información requeri-da. Por ejemplo, el dominio es.Wikipedia.org tendría el nombre de la máquina “es”, aunque en este caso no se refiere a una máquina física en particular.

El DNS consiste en un conjunto jerárquico de servidores DNS. Cada dominio o subdominio tiene una o más zonas de autoridad que publican la información acerca del dominio y los nombres de servicios de cualquier dominio incluido. La jerarquía de las zonas de autoridad coincide con la jerarquía de los dominios. Al inicio de esa jerarquía se encuentra los servidores raíz: los servidores que responden cuando se busca resolver un dominio de primer nivel.