Skip to main content

¿Qué es un cliente de protocolo de transferencia de archivos?

Un cliente de protocolo de transferencia de archivos es una aplicación de software utilizada para acceder a un servidor de datos mediante el protocolo de transferencia de archivos (FTP). Mediante el uso de este protocolo común, el cliente puede transferir datos hacia y desde el servidor. La aplicación cliente proporciona los medios para establecer una conexión y luego emitir los comandos FTP apropiados al servidor. Viene en muchas formas, operadas a través de una interfaz de línea de comando (CLI), una interfaz gráfica de usuario (GUI), incluso un navegador web común.

FTP es parte de la capa de aplicación superior del conjunto de protocolos de Internet (IP), y el protocolo de control de transmisión (TCP) se utiliza para el transporte de comunicaciones. El cliente del protocolo de transferencia de archivos, entonces, es responsable de establecer la conexión con el servidor abriendo finalmente dos conexiones TCP. La primera es la conexión de control, donde el cliente envía comandos al servidor FTP. Los primeros comandos enviados a través de la conexión de control son el comando USER, con el nombre del usuario como argumento, y luego el comando PASS seguido de la contraseña. Una vez establecida, la conexión de control permanece abierta durante toda la sesión.

Aquí, el cliente del protocolo de transferencia de archivos configura los diferentes modos de comunicación que tendrá con el servidor. Por lo general, los datos se representan en una de dos formas, texto o binario, dependiendo de los datos que se envían o reciben. Las transferencias de tipo de texto se usan con mayor frecuencia para archivos de texto sin formato codificados con el método de codificación del Código estándar estadounidense para el intercambio de información (ASCII). El modo binario, también conocido como modo de imagen, es para la transferencia de archivos en un formato binario sin texto, como las imágenes digitales. Otro, llamado modo local, es otra forma en que FTP puede transferir datos usando un formato único o propietario.

El segundo canal TCP utilizado por el cliente del protocolo de transferencia de archivos es la conexión de datos. Esta conexión es de naturaleza temporal y se crea solo cuando un cliente solicita una lista de los archivos en el servidor o está transfiriendo un archivo hacia o desde el servidor. La conexión de datos se destruye cuando no se produce transferencia de datos. La conexión de datos también es única en cómo se establece, ya sea de forma pasiva o activa. El cliente tiene que decirle al servidor el tipo de conexión de datos que debe usar según el tipo de conexión disponible en el cliente.

Con una conexión de datos activa, el cliente del protocolo de transferencia de archivos le dice al servidor qué número de puerto TCP debe usar para la conexión de datos. Sin embargo, cuando se usa en modo pasivo, el cliente simplemente le dice al servidor que es pasivo, y el servidor luego le informa al cliente qué puerto TCP debe usar para la conexión de datos. En la mayoría de los casos, el cliente está configurado para una conexión pasiva debido al uso de firewalls que lo protegen del acceso no autorizado.

Como resultado de la falta general de seguridad en FTP, la seguridad de un cliente de protocolo de transferencia de archivos es parte integral de su funcionamiento para que la actividad del usuario esté a salvo de miradas indiscretas. A lo largo de los años, se han ideado una serie de técnicas de seguridad adicionales para su uso con FTP, como que el cliente nombre explícitamente un protocolo de seguridad o uno implícito automáticamente. Otros clientes intentan usar FTP a través de un túnel de shell seguro (SSH), que puede tener dificultades debido a la naturaleza fugaz de la conexión de datos.