* Conexión de control (Open Active): La conexión de control se utiliza para establecer los parámetros de la transferencia de datos, como el tipo de datos, el puerto para usar para la transferencia de datos y cualquier autenticación necesaria. El cliente inicia esta conexión activamente porque necesita decirle al servidor lo que quiere hacer. El servidor escucha pasivamente en un puerto conocido (por ejemplo, 22 para SSH, 21 para FTP). El firewall generalmente permite conexiones entrantes a estos puertos establecidos, lo que facilita el inicio de la conexión de control por parte del cliente.
* Conexión de datos (Open pasiva): Una vez que se establece la conexión de control, el servidor a menudo escucha pasivamente la conexión de datos del cliente. Esto se hace por varias razones:
* Nat Traversal: La traducción de direcciones de red (NAT) puede complicar las cosas. Un cliente detrás de un enrutador NAT podría tener una dirección IP privada que no sea directamente enrutable a Internet. Hacer que el servidor escuche pasivamente significa que el cliente solo necesita conocer la dirección y el puerto IP público del servidor, y el servidor maneja los detalles de recibir la conexión de datos. El servidor puede usar técnicas como reenvío de puertos o protocolos como Nat Traversal (por ejemplo, aturdimiento o giro) para facilitar esto.
* Restricciones de firewall: Los firewalls a menudo se configuran para ser más restrictivos sobre las conexiones de salida que las conexiones entrantes. Al hacer que el servidor escuche pasivamente, el cliente solo necesita iniciar una conexión saliente al puerto de control del servidor, que generalmente está permitido. La conexión de datos entrantes al puerto asignado dinámicamente del cliente podría ser más difícil de permitir a través del firewall. Tenga en cuenta que el cliente * todavía * necesita iniciar la conexión de datos.
* Seguridad: En algunos casos, se considera más seguro para que el servidor acepte pasivamente la conexión de datos. Esto podría ofrecer cierta protección contra ciertos ataques, aunque el beneficio principal aquí es NAT y Firewall Traversal.
En resumen, la combinación de una conexión de control activo y una conexión de datos pasivos es una estrategia común para trabajar en torno a las limitaciones y restricciones de seguridad impuestas por los firewalls y NAT. El cliente establece activamente el canal de control para negociar los términos, y el servidor acepta pasivamente el canal de datos para simplificar el recorrido NAT y tal vez mejorar la seguridad. La implementación exacta varía según el protocolo (FTP, SSH, etc.).