Protocolos de Transferencia de Archivos y Navegación por Internet: FTP, POP3, SMTP y HTTP/HTTPS
Transferencia de archivos
FTP (File Transfer Protocol) permite acceder al sistema de archivos del servidor, consultar su contenido, navegar por él, realizar cambios (copiar archivos, renombrarlos, etc.) y transferir archivos bidireccionalmente entre el cliente y el servidor.
Originalmente carecía de mecanismos de seguridad. Existen protocolos más modernos relacionados con FTP (por ejemplo, FTPS o FTP over SSH) que implementan seguridad criptográfica en las comunicaciones. FileZilla es un cliente muy común. Los navegadores también tienen implementado el protocolo FTP para descargar archivos.
Conexiones en FTP
El protocolo FTP maneja 2 conexiones simultáneas entre cliente y servidor:
- Conexión de control: para el envío de comandos y respuestas (por el puerto 21).
- Conexión de datos: para transferir archivos (por el puerto 20).
Por cuestiones de configuración, el servidor tiene 2 modos: el modo activo y el modo pasivo. El modo activo, más antiguo, supone cierta configuración extra (que puede implicar vulnerabilidades de seguridad) en el cliente. El modo pasivo traspasa esa responsabilidad al servidor.
Protocolo POP3
POP3 es un protocolo pensado para que el cliente descargue los mensajes de correo electrónico del servidor para manejarlos en local. Era especialmente popular cuando las conexiones eran lentas o intermitentes y los buzones de correo tenían limitaciones de tamaño, pues permitía descargar todos los mensajes en local y borrar su copia remota en una sola conexión.
Protocolo SMTP
SMTP sirve para enviar correos. Un cliente SMTP indica al servidor la información precisa para que este envíe correos electrónicos a otro servidor. El envío de correos entre distintos servidores (por ejemplo, entre Gmail y Yahoo) también se realiza mediante SMTP.
Muchos servidores de correo electrónico no permiten el acceso a clientes de origen desconocido. Generalmente se puede configurar la cuenta para que acepte estas conexiones; de lo contrario, podría marcar nuestros correos como spam.
Navegación por Internet
HTTP es el protocolo de transferencia de páginas web que, hoy en día, ha diversificado su uso para permitir comunicaciones entre cliente y servidor a través de aplicaciones web. Originalmente, al igual que Telnet o FTP, la transferencia se realizaba en texto plano.
Hoy en día se utiliza frecuentemente HTTPS, que es HTTP mediante TLS (Transport Layer Security). De este modo, la transferencia de datos está cifrada e invulnerable a sniffers. HTTP es un protocolo, en principio, sin estado. Por defecto, utiliza el puerto 80; HTTPS utiliza el 443.
Mensajes más importantes de HTTP
- GET: solicita al servidor que envíe el recurso solicitado.
- HEAD: igual que GET, pero solamente se envía la cabecera.
- POST: realiza una petición al servidor con información para ser procesada por este. Se utiliza, por ejemplo, para enviar los campos de un formulario al servidor y procesar un login.