3.5. Configuración de FTP
FTP (siglas en inglés de File Transport Protocol) es un protocolo de múltiples puertos que presenta un conjunto de retos para un entorno de LVS. Para entender la naturaleza de estos retos, se debe entender primero algunos conceptos claves sobre cómo funciona FTP.
3.5.1. Cómo funciona FTP
Como en la mayoría de servicios entre cliente y servidor, el cliente abre una conexión en el servidor en un puerto particular y el servidor le responde al cliente utilizando ese mismo puerto. Cuando un cliente FTP se conecta a un servidor FTP, el primero abre una conexión FTP de control en el puerto 21. Luego el cliente le informa al servidor FTP si la conexión debe ser activa o pasiva. El tipo de conexión elegida por el cliente determina cómo responde el servidor y en qué puerto la transacción ocurre.
Los dos tipos de conexiones de datos son:
- Conexiones activas
- Cuando se establece una conexión activa, el servidor abre una conexión de datos para el cliente desde el puerto 20 a un puerto de rango más alto en la máquina cliente. Todos los datos provenientes del servidor pasan por esta conexión.
- Conexiones pasivas
- Cuando una conexión pasiva es establecida, el cliente solicita al servidor FTP establecer un puerto de conexión pasiva (el cual puede ser un puerto superior a 10.000). El servidor se vincula con el puerto para esta sesión particular y envía ese número de puerto de regreso al cliente. El cliente abre el puerto para la conexión de datos. Cada solicitud de datos resulta en una conexión de datos diferente. La mayoría de clientes FTP intenta establecer una conexión pasiva cuando solicitan datos al servidor.
Nota
El cliente determina el tipo de conexión, no el servidor. Esto quiere decir que se debe configurar el enrutador LVS para manejar tanto conexiones pasivas como activas.
La relación entre cliente y servidor en FTP puede potencialmente abrir una larga cantidad de puertos que no serán detectados por la Piranha Configuration Tool y IPVS.