Curiosidades De Hackers
REDES

Servicios de la Capa de Aplicación


La Relación Cliente Servidor 

Interacción de Cliente y Servidor

Diariamente utilizamos los servicios disponibles en las redes y en internet para comunicarnos con otras personas y realizar tareas de rutina. Pocas veces pensamos en los servidores, clientes y dispositivos de redes necesarios para poder recibir un correo electrónico, actualizar nuestro estado en los medios sociales o buscar las mejores ofertas en una tienda en línea. La mayoría de las aplicaciones de internet más comunes se basa en interacciones complejas entre diversos servidores y clientes.

El término servidor hace referencia a un host que ejecuta una aplicación de software que proporciona información o servicios a otros hosts que están conectados a la red. Un ejemplo conocido de dicha aplicación es un servidor Web. Hay millones de servidores conectados a Internet que proporcionan servicios como sitios web, correo electrónico, transacciones financieras, descargas de música, etc. Un factor fundamental para permitir el funcionamiento de estas interacciones complejas es que todos emplean estándares y protocolos acordados.
Un navegador web, como Chrome o Firefox, es un ejemplo de software de cliente. Una única PC también puede ejecutar varios tipos de software de cliente. Por ejemplo, un usuario puede consultar el correo electrónico y ver una página web mientras envía mensajes instantáneos y escucha una transmisión de audio. La tabla enumera tres tipos comunes de software de servidor.

El servidor de correo electrónico ejecuta el software del servidor de correo electrónico. Los clientes utilizan software de cliente de correo, como Microsoft Outlook, para acceder al correo electrónico en el servidor.

El servidor web ejecuta software de servidor web. Los clientes usan software de navegador, como Chrome o Firefox, para acceder a páginas web en el servidor.

El servidor de archivos almacena archivos de usuario y empresariales en una ubicación central. Los dispositivos cliente acceden a estos archivos con software cliente como el Explorador de Archivos de Windows.

URI, URN, y URL

Los recursos web y los servicios web, como las API RESTful, se identifican mediante un Identificador Uniforme de Recursos (Uniform Resource Identifier, URI). Un URI es una cadena de caracteres que identifica un recurso de red específico. Como se muestra en la figura, un URI tiene dos especializaciones:

  • Nombre uniforme de recurso (URN) – Identifica solo el espacio de nombres del recurso (página web, documento, imagen, etc.) sin referencia al protocolo.
  • Localizador uniforme de recursos (URL) – Define la ubicación de red de un recurso específico en la red. Las URL HTTP o HTTPS se utilizan normalmente con los navegadores web. Otros protocolos como FTP, SFTP, SSH y otros pueden usarse como URL. Una URL que usa SFTP podría tener el siguiente aspecto: sftp://sftp.example.com.

Estas son las partes de un URI, tal y como se muestra en la figura:

  • Protocolo/esquema – HTTPS u otros protocolos como FTP, SFTP, mailto y NNTP
  • Nombre de hostwww.example.com
  • Ruta y nombre de archivo – /author/book.html

Servicios de Aplicaciones de Red 

Servicios de Aplicaciones de Red Comunes

¿Cuáles son los servicios de Internet más comunes que utiliza periódicamente? Para la mayoría de las personas, la lista incluye servicios como búsquedas en Internet, sitios de redes sociales, transmisión de vídeo y audio, sitios de compras en línea, correo electrónico y mensajería. Cada uno de estos servicios depende de los protocolos de la suite de protocolos TCP/IP para transmitir de manera confiable la información entre los clientes y los servidores.

Algunos de los servidores más comunes que proporcionan estos servicios se muestran en la figura. En la tabla se muestra una breve descripción de cada servicio.

Sistema de Nombres de Dominio 

Una Nota Sobre las Actividades del Verificador de Sintaxis

Cuando esté aprendiendo a modificar las configuraciones de los dispositivos, es posible que desee comenzar en un entorno seguro que no sea de producción antes de probarlo en equipos reales. Hay diferentes herramientas de simulación para ayudarlo a desarrollar sus habilidades de configuración y resolución de problemas. Debido a que se trata de herramientas de simulación, normalmente no tienen toda la funcionalidad del equipo real. Una de esas herramientas es el Verificador de Sintaxis. En cada Verificador de Sintaxis, se le da un conjunto de instrucciones para introducir un conjunto específico de comandos. No puede progresar en el Verificador de Sintaxis a menos que se introduzca el comando exacto y completo como se especifica. Las herramientas de simulación más avanzadas, como Packet Tracer, le permiten introducir comandos abreviados, como lo haría con equipos reales.

Comprobador de Sintaxis — El Comando nslookup

Cuando configura manualmente un dispositivo para conectividad de red, recuerde que también incluye una dirección de servidor DNS. En el caso de las redes domésticas, DHCP ejecuta esta configuración en el router doméstico. Su ISP proporciona la dirección del servidor DNS al router de su hogar, y luego utiliza el DHCP para enviar la configuración a todos los dispositivos conectados a su red. Cuando escribe el nombre de un sitio web, como www.cisco.com, el cliente DNS que se ejecuta en su dispositivo primero solicita al servidor DNS la dirección IP, como 172.230.155.162, antes de enviar su solicitud HTTP.

Puede utilizar el comando nslookup para descubrir las direcciones IP de cualquier nombre de dominio. En esta actividad del Verificador de sintaxis, practique el ingreso del comando nslookup tanto en Windows como en Linux.

Clientes y Servidores Web 

 HTTP y HTML

Cuando un cliente web recibe una dirección IP de un servidor web, el explorador cliente utiliza esa dirección IP y el puerto 80 para solicitar servicios web. Esta solicitud se envía al servidor mediante el protocolo de transferencia de hipertexto (HTTP, Hypertext Transfer Protocol).

Cuando el servidor recibe una solicitud del puerto 80, responde la solicitud del cliente y le envía la página Web. El contenido de la información de una página Web se codifica utilizando lenguajes de «etiquetas» especializados. La codificación del Lenguaje de Marcado de Hipertexto (HTML) indica al navegador cómo formatear la página web y qué gráficos y fuentes usar. HTML es el lenguaje más utilizado.

Haga clic en el botón Reproducir de la figura para ver a un cliente solicitando una página web.

El protocolo HTTP no es un protocolo seguro; la información podría ser fácilmente interceptada por otros usuarios a medida que los datos se envían a través de la red. Para garantizar la seguridad de los datos, HTTP se puede utilizar con protocolos de transporte seguros. Las solicitudes de HTTP se envían al puerto 443. These requests use https in the site address in the browser, rather than http.

Hay muchos servidores web y clientes web diferentes disponibles. El protocolo HTTP y los estándares HTML hacen posible que estos servidores y clientes de diferentes fabricantes funcionen juntos sin problemas.

 Clientes y Servidores FTP 

Protocolo de Transferencia de Archivos

Además de los servicios Web, otro servicio que se utiliza comúnmente por medio de Internet es el que permite a los usuarios transferir archivos.

El Protocolo de Transferencia de Archivos (FTP, File Transfer Protocol) brinda un método sencillo para transferir archivos de una computadora a otra. Un host que ejecuta un software cliente FTP puede acceder a un servidor FTP para realizar diversas funciones de administración de archivos, entre ellas subir y descargar archivos.

El servidor FTP permite a un cliente intercambiar archivos entre dispositivos. También permite a los clientes administrar archivos de manera remota enviando comandos de administración de archivos, como Eliminar o Cambiar nombre. Para lograr esto, el servicio FTP utiliza dos puertos para las comunicaciones entre el cliente y el servidor.

En el ejemplo de la figura se ilustra cómo funciona FTP. Para comenzar con una sesión FTP, se envían solicitudes de conexión de control al servidor mediante el puerto 21 TCP de destino. Cuando se abre la sesión, el servidor cambia al puerto 20 TCP para transferir los archivos de datos.

El software cliente FTP viene incorporado en los sistemas operativos y en la mayoría de los exploradores Web. Los clientes FTP independientes ofrecen muchas opciones en una interfaz fácil de usar basada en GUI.

De acuerdo con el comando enviado a través de la conexión de control, los datos pueden descargarse desde el servidor o subirse desde el cliente.

Terminales Virtuales 

 Telnet

Mucho antes de que existieran las computadoras de escritorio con interfaces gráficas sofisticadas, las personas utilizaban sistemas basados en textos que eran simplemente terminales conectadas físicamente a una computadora central. Después de que las redes estuvieron disponibles, la gente necesitaba una manera de acceder remotamente a los sistemas informáticos de la misma manera que con terminales conectados directamente.

Para satisfacer esa demanda, se desarrolló Telnet. Telnet se remonta a principios de la década de los 70 y se encuentra entre los servicios y protocolos de capa de aplicación más antiguo dentro del grupo TCP/IP. Telnet proporciona un método estándar de emulación de dispositivos de terminal con base en texto en la red de datos. Tanto el protocolo como el software del cliente que implementa son conocidos como Telnet. Los servidores Telnet escuchan las solicitudes del cliente en el puerto 23 de TCP.

De un modo adecuado, una conexión que utiliza Telnet se llama sesión de terminal virtual (vty) o conexión. En lugar de utilizar un dispositivo físico para conectarse al servidor, Telnet utiliza software para crear un dispositivo virtual que proporcione las mismas características de una sesión de terminal con acceso a la interfaz de línea de comandos (CLI) del servidor.

En la figura, el cliente se ha conectado de forma remota al servidor a través de Telnet. Ahora el cliente puede ejecutar comandos como si estuviera conectado localmente al servidor.

Nota: Telnet no se considera un protocolo seguro. Se debe usar SSH en la mayoría de los entornos en lugar de Telnet. Telnet se usa en varios ejemplos de este curso para simplificar la configuración.

16.6.3 Problemas de Seguridad con Telnet

Una vez establecida una conexión Telnet, los usuarios pueden realizar cualquier función autorizada en el servidor, como si utilizaran una sesión de línea de comandos en el servidor mismo. Si están autorizados, pueden iniciar y detener procesos, configurar el dispositivo e inclusive apagar el sistema.

Aunque el protocolo Telnet puede requerir que un usuario inicie sesión, no admite el transporte de datos cifrados. Todos los datos intercambiados durante las sesiones de Telnet se transportan como texto normal por la red. Esto significa que los datos pueden ser fácilmente interceptados y entendidos.

El protocolo Secure Shell (SSH) ofrece un método alternativo y seguro para el acceso a servidores. SSH proporciona la estructura para un inicio de sesión remoto seguro y otros servicios de red seguros. También proporciona una autenticación más sólida que Telnet y admite el transporte de datos de sesión mediante cifrado. Como una mejor práctica, los profesionales de red deberían utilizar siempre SSH en lugar de Telnet, cada vez que sea posible.

En la figura se ilustra por qué SSH es más seguro que Telnet. Observe que, cuando se utiliza Telnet, los datos que captura el pirata informático son claramente legibles, mientras que al utilizar SSH, los datos están cifrados y, por lo tanto, son más seguros.

Correo Electrónico y Mensajería 

Clientes y Servidores de Correo Electrónico

El correo electrónico es una de las aplicaciones cliente/servidor más populares de Internet. Los servidores de correo electrónico ejecutan software servidor que les permite interactuar con clientes y con otros servidores de correo electrónico mediante la red.

Cada servidor de correo recibe y almacena correspondencia para los usuarios que tienen buzones configurados en el servidor de correo. Cada usuario que tenga un buzón deberá utilizar entonces un cliente de correo electrónico para acceder al servidor de correo y leer estos mensajes. Muchos sistemas de mensajería de Internet utilizan un cliente basado en web para acceder al correo electrónico. Algunos ejemplos de este tipo de cliente son Microsoft 365, Yahoo y Gmail.

Los buzones se identifican con el formato: [email protected]

Diversos protocolos de aplicaciones que se usan en el procesamiento del correo electrónico incluyen SMTP, POP3 e IMAP4.

Protocolos de Correo Electrónico

Protocolo Simple de Transferencia de Correo (SMTP)

SMTP es utilizado por un cliente de correo electrónico para enviar mensajes a su servidor de correo electrónico local. El servidor local entonces decide si el mensaje se destina a un buzón local o si se remite a un buzón de otro servidor.

Si el servidor tiene que enviar el mensaje a un servidor diferente, también se utiliza SMTP entre esos dos servidores. Las solicitudes SMTP se envían al puerto 25.

Haga clic en el botón Reproducir de la figura para ver cómo se usa SMTP para enviar correo electrónico.

Protocolo de oficina de correos (POP3)

Un servidor que admite clientes POP recibe y almacena mensajes dirigidos a sus usuarios. Cuando el cliente se conecta con el servidor de correo electrónico, los mensajes se descargan al cliente. De manera predeterminada , los mensajes no se retienen en el servidor una vez que el cliente accede a ellos. Los clientes se ponen en contacto con los servidores POP3 en el puerto 110.

Protocolo de acceso a mensajes de Internet (IMAP4)

Un servidor que admite el cliente IMAP también recibe y almacena los mensajes dirigidos a sus usuarios. Sin embargo, a diferencia de POP, IMAP conserva los mensajes en los buzones del servidor, a menos que el usuario los elimine. La versión más actual de IMAP es IMAP4, que espera las solicitudes del cliente en el puerto 143.

Existen muchos servidores de correo electrónico diferentes para las diversas plataformas de sistema operativo de la red.

Mensajería de Texto

La mensajería de texto, que se muestra en la figura, es una de las herramientas de comunicación más populares que se utilizan en la actualidad. Además, el software de mensajería de texto está integrado en muchas aplicaciones en línea, aplicaciones de teléfonos inteligentes y sitios de redes sociales.

Ambos clientes pueden enviar y recibir mensajes simultáneamente.

Los mensajes de texto también pueden denominarse mensajes instantáneos, mensajes directos, mensajes privados y mensajes de chat. La mensajería de texto permite a los usuarios comunicarse o chatear por internet en tiempo real. Por lo general, se accede a los servicios de mensajería de texto en una computadora a través de un cliente basado en la web que está integrado en una red social o en un sitio para compartir información. Estos clientes se suelen conectar solo a otros usuarios del mismo sitio.

También hay varios clientes de mensajes de texto independientes, como Cisco Webex Teams, Microsoft Teams, WhatsApp, Facebook Messenger y muchos otros. Estas aplicaciones están disponibles para una amplia variedad de sistemas operativos y dispositivos. Por lo general, se ofrece una versión móvil. Además de los mensajes de texto, estos clientes admiten la transferencia de documentos, videos, música y archivos de audio.

Llamadas Telefónicas por Internet

Realizar llamadas telefónicas por medio de internet es cada vez más común. Un cliente de telefonía por Internet utiliza una tecnología entre pares similar a la empleada por la mensajería instantánea, como se indica en la figura. La telefonía IP usa la tecnología de Voz sobre IP (VoIP) que convierte las señales analógicas de voz en datos digitales. Los datos de voz se encapsulan en paquetes IP que llevan la llamada telefónica a través de la red.

Una vez instalado el software del teléfono IP, el usuario selecciona un nombre exclusivo. De esta manera, los usuarios pueden recibir llamadas de otros usuarios. Se necesitan altavoces y un micrófono, ya sea incorporados o independientes. También se suele conectar a la computadora un auricular para usarlo como teléfono.

Para llamar a otros usuarios del mismo servicio por Internet se debe seleccionar el nombre de usuario de una lista. Para realizar una llamada a un teléfono común (de línea o celular), se necesita una puerta de enlace para acceder a la Red Pública de Telefonía Conmutada (Public Switched Telephone Network, PSTN). Según el servicio, pueden aplicarse tarifas asociadas con este tipo de llamadas. Los protocolos y los puertos de destino que utilizan las aplicaciones de telefonía por Internet pueden variar según el software.