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.?ohelp: 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.lsodir: Lista ficheros y directorios del servidor.delete: Elimina un archivo en el servidor.rename: Renombra un archivo en el servidor.rmdirorm: 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.byeoquit: Cierra la sesión y sale de la aplicación cliente.
Tipos de Acceso
El acceso a un servidor FTP puede ser:
- Acceso Anónimo (Anonymous): Se conecta sin contraseña (pass) y solo puede acceder a un directorio específico para descargar ficheros.
- 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.
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:
- El cliente se conecta desde un puerto aleatorio
n(n > 1024) al puerto de control del servidor (21). - El cliente escucha en el puerto
n+1y envía este puerto de control al servidor. - El servidor inicia la conexión de datos: se conecta al cliente por el puerto
n+1desde 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):
- El cliente abre dos puertos
nyn+1(n > 1024). - El primer puerto (
n) se utiliza como puerto de control y se conecta por el puerto 21 del servidor para enviarle el comandoPASV. - El servidor abre un puerto aleatorio
p(p > 1024) y envía el comandoPORT pal cliente. - El cliente inicia la conexión de datos: se conecta desde el puerto
n+1al puertopdel 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.).
ACTIVO ---------------------------------------------------------- PASIVO