FTP: Protocolo, Modos de Conexión (Activo y Pasivo) y Comandos Esenciales

Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 238,25 KB

Protocolo de Transferencia de Archivos (FTP): Fundamentos y Operación

El Protocolo de Transferencia de Archivos (FTP) es un protocolo de red fundamental diseñado para la transferencia de archivos entre sistemas conectados a una red, operando bajo el modelo cliente-servidor utilizando TCP. FTP es esencialmente un conjunto de normas y reglas que permiten el diálogo y el intercambio de datos entre máquinas.

Funcionalidades Clave de FTP

FTP permite las siguientes operaciones principales:

  • Listar directorios y ficheros.
  • Transferir archivos desde o hacia el sistema remoto.
  • Borrar archivos y crear directorios.

Arquitectura y Puertos

FTP se sitúa en la capa de aplicación del modelo TCP/IP y utiliza TCP como protocolo de transporte. Para su funcionamiento, emplea dos puertos distintos para separar el control del flujo de datos:

  • Puerto 21: Utilizado para el flujo de control. Se usa para enviar órdenes del cliente al servidor.
  • Puerto 20: Utilizado para el flujo de datos (específicamente en modo Activo).

Clientes FTP y Comandos Esenciales

Clientes FTP

Los Clientes FTP son aplicaciones que acceden al sistema de archivos del equipo donde están instalados y establecen conexiones con los servidores FTP remotos para enviar y descargar archivos. Permiten interactuar con un servidor FTP remoto.

Clientes en Línea (Consola)

La interacción se activa con la orden FTP.

Comandos FTP Fundamentales

A continuación, se listan los comandos más comunes utilizados en una sesión FTP:

  • ftp> open servidor: Inicia la conexión con el servidor.
  • ? o help: Muestra un listado de comandos.
  • help [comando]: Proporciona ayuda específica sobre un comando.
  • cd: Accede a una carpeta en el servidor.
  • lcd: Accede a una carpeta en el cliente (local).
  • pwd: Muestra el directorio de trabajo actual en el servidor.
  • ls o dir: Lista ficheros y directorios del servidor.
  • delete: Elimina un archivo en el servidor.
  • rename: Renombra un archivo en el servidor.
  • rmdir o rm: Elimina un directorio en el servidor.
  • mkdir: Crea un directorio en el servidor.

Nota: Cuando un comando lleva el signo ! delante (ej. !ls), actúa sobre la máquina cliente.

Comandos de Transferencia de Archivos

Existen dos tipos de transferencia: asc o ascii, y bin o binary (o type).

  • put [fichero local]: Sube un fichero del cliente al servidor.
  • mput [varios ficheros locales]: Sube varios ficheros del cliente al servidor.
  • get [fichero remoto]: Descarga un fichero del servidor al cliente.
  • mget [varios ficheros remotos]: Descarga varios ficheros del servidor al cliente.

Gestión de Sesión

  • prompt: Alterna el modo interactivo (pregunta sí/no antes de transferencias múltiples).
  • close: Cierra la sesión FTP, pero no sale de la aplicación cliente.
  • bye o quit: Cierra la sesión y sale de la aplicación cliente.

Tipos de Acceso

El acceso a un servidor FTP puede ser:

  1. Acceso Anónimo (Anonymous): Se conecta sin contraseña (pass) y solo puede acceder a un directorio específico para descargar ficheros.
  2. Acceso Autorizado: Se conecta con un usuario validado en el sistema o en el servicio ftp. El servidor establece los permisos de lo que el usuario puede hacer.



ftp



Tipos de Conexiones en FTP

Conexión de Control

El cliente establece una conexión con el servidor para dialogar. Envía comandos y recibe respuestas del servidor que informan si hubo errores o no. La conexión está activa hasta que el cliente cierra sesión o por timeout.

Conexión de Datos

Cuando el cliente solicita una transferencia, se crea una nueva conexión de datos que se cierra al acabar la transmisión. Pueden existir varias conexiones de datos ligadas a una única conexión de control.

Modos de Transferencia de Datos

Modo Activo

En el Modo Activo, el servidor inicia la conexión de datos hacia el cliente:

  1. El cliente se conecta desde un puerto aleatorio n (n > 1024) al puerto de control del servidor (21).
  2. El cliente escucha en el puerto n+1 y envía este puerto de control al servidor.
  3. El servidor inicia la conexión de datos: se conecta al cliente por el puerto n+1 desde su puerto 20.

Se llama activo porque es el servidor el que inicia la transmisión de datos hacia el puerto que se le indica.

Modo Pasivo (PASV)

En el Modo Pasivo, el cliente inicia ambas conexiones (control y datos):

  1. El cliente abre dos puertos n y n+1 (n > 1024).
  2. El primer puerto (n) se utiliza como puerto de control y se conecta por el puerto 21 del servidor para enviarle el comando PASV.
  3. El servidor abre un puerto aleatorio p (p > 1024) y envía el comando PORT p al cliente.
  4. El cliente inicia la conexión de datos: se conecta desde el puerto n+1 al puerto p del servidor para transferir los datos.

En el modo pasivo, el cliente siempre inicia las conexiones, y el puerto 20 del servidor no se usa.

Tipos de Transferencia de Archivos

  • ASCII (o ASC): Transferencia byte a byte, utilizada para archivos de texto (.txt).
  • Binario (o BIN): Transferencia bit a bit, utilizada para archivos que no son de texto (imágenes, ejecutables, etc.).


ftp2

ftp pasivo

ACTIVO ---------------------------------------------------------- PASIVO

Entradas relacionadas: