Protocolo de Transferencia de Ficheros (FTP)

Figura: Protocolo de Transferencia de Ficheros (FTP)

FTP es un protocolo estándar con STD número 9. Su estado es recomendado y se describe en el RFC 959 - Protocolo de Transferencia de Ficheros (FTP).

Una de las operaciones que más se usa es la copia de ficheros de una máquina a otra. El cliente puede enviar un fichero al servidor. Puede también pedir un fichero de este servidor.

Para acceder a un fichero remoto, el usuario debe identificarse al servidor. En este momento el servidor es responsable de autentificar al cliente antes de permitir la transferencia del fichero.

Operaciones de FTP

Conectando con el Host Remoto

Existen tres órdenes:

Open
Selecciona el host remoto e inicia la sesión de login
User
Identifica el usuario remoto
Pass
Autentifica al usuario

Seleccionando un Directorio

Cuando se establece el enlace de control, el usuario puede usar la suborden cd para seleccionar un directorio remoto. El usuario puede seleccionar un directorio local con la orden lcd.

Copiando ficheros

Get
Copia un fichero del host remoto al host local.
Put
Copia un fichero del host local al host remoto.

Terminando la sesión de transferencia

Quit
Disconecta del host remoto y termina el FTP.
Close
Disconecta del hoat remoto pero deja el cliente de FTP ejecutado.

Códigos de Respuesta

Los códigos de respuesta son de tres dígitos, donde el primer dígito es el más significativo.

Códigos de Respuesta de FTP - El segundo y tercer dígitos proporcionan más detalles acerca de la respuesta
CódigoDescripción
1xxRespuesta preliminar positiva
2xxRespuesta finalización positiva
3xxRespuesta intermedia positiva
4xxRespuesta finalización negativa
5xxRespuesta finalización permanente negativa

Ejemplo

Para cada orden de usuario, mostrada como esto, el servidor de FTP responde con un mensaje que comienza con un código de respuesta de 3 dígitos, mostrado como esto:

FTP foreignhost
220 service ready
USERNAME cms01
331 user name okay
PASSWORD xyxyx
230 user logged in
TYPE Image
200 command okay

Una muestra de sesión FTP


[C:\SAMPLES]ftp host01.itsc.raleigh.ibm.com
Connected to host01.itsc.raleigh.ibm.com.
220 host01 FTP server (Version 4.1 Sat Nov 23 12:52:09 CST 1991) ready.
Name (rs60002): cms01
331 Password required for cms01.
Password: xxxxxx
230 User cms01 logged in.
ftp> put file01.tst file01.tst
200 PORT command successful.
150 Opening data connection for file01.tst (1252 bytes).
226 Transfer complete.
local: file01.tst remote: file01.tst
1285 bytes received in 0.062 seconds (20 Kbytes/s)
ftp> close
221 Goodbye.
ftp> quit

Figura: Una muestra de sesión FTP - Transferir un fichero a un host remoto

FTP Anónimo

Muchos sitios TCP/IP implementan lo que se llama un FTP anónimo, que significa que estos sitios permiten acceder públicamente a algunos directorios de ficheros. El usuario remoto sólo necesita usar el nombre de login anonymous y la clave guest o alguna otra clave convenida, normalmente una dirección de correo electrónico. La clave convenida a utilizar en un sistema se explica al usuario durante el proceso de conexión.

Protocolo TFTP  |  Tabla de Contenidos  |  Sistema de Nombres de Dominio (DNS)