FTP (File Transfer Protocol/Protocolo de transferencia de archivos)

Protocolo de la capa de aplicación que permite el intercambio de ficheros entre dos equipos de forma remota

La arquitectura de FTP es C/S, ergo intervienen dos sistemas de archivos, el del cliente y el del servidor

  • Servidor: Ofrece una serie de carpetas y archivos

  • Cliente: Accede a dichas carpetas pudiendo descargarse los archivos a su equipo local o subir ficheros a las carpetas remotas

  • FTP funciona en la capa de aplicación

  • FTP usa TCP en el nivel de transporte

  • Existe una simplificación de FTP llamada TFTP que usa UDP

Puerto:

  • El protocolo FTP utiliza los puertos 20 y 21 por defecto

    • 21: usado para los comandos (cambiar de directorio, descargarse un fichero, etc.)
    • 20: (generalmente): usado para los datos (contenido de los ficheros que se transfieren)

Protocolo de transferencia de archivos (FTP) - parte 3/6

Modos de conexión:

Activa (Default):

Cliente: Establece una conexión a través de uno de sus puertos libres hacia el puerto 21 del servidor. A través de esa conexión envía el numero de puerto que usara para datos (Puerto Y)

Servidor: Iniciará la transferencia de datos desde su puerto 20 al puerto Y del cliente

Problema: El cortafuegos del cliente deberá estar configurado para aceptar conexiones entrantes en su puerto Y

Pasiva:

1.Cliente: El cliente establece una conexión desde uno de sus puertos libres hacia el puerto 21 del servidor. A través de esa conexión envía el comando PASV

2.Servidor: indica al cliente el no de puerto que debe usar (Z), de entre los que tiene libres él mismo

3.Cliente: inicia la transferencia desde uno de sus puertos libres al puerto Z del servidor

En la conexión activa el cliente baja archivos del servidor mientras que en la pasiva los sube

Tipos de transferencia

Son las maneras que tienen clientes y servidores de interpretar los bits que se envían en cada fichero

Binario (por defecto): transmite bit a bit. Útil cuando no deben agruparse los bits porque el fichero ya tiene una estructura propia (ficheros ejecutables, ISOs, imágenes, videos, audio, documentos, ficheros comprimidos…)

ASCII: transmite byte a byte (caracteres). Es más rápido. Útil para ficheros de texto puro (txt, HTML…)

  • Si se envía un archivo binario en modo ASCII, se corrompe la estructura del archivo binario

  • Si se envía un archivo ASCII en modo binario, llegará correctamente

Clientes FTP

Un cliente FTP permite conectarse a un servidor FTP, navegar entre sus carpetas y descargarse o subir archivos, así como gestionar diversas opciones generales de las transferencias o la conexión

Tipos:

  • Modo texto (Comandos)

  • Modo ,grafico

    • Navegador web
    • Aplicación de ventanas

Servidores FTP

  • Ofrece ficheros y directorios y opciones de transferencia y conexión

Ejemplo: FileZilla: