Está en la página 1de 16

ASIR – Servicios de Red e Internet

Página 1 de 16
FUNCIONAMIENTO DE FTP .............................................................................................. 3

PARÁMETROS DE CONFIGURACIÓN DE FTP ...................................................... 7

PARÁMETROS EN EL SERVIDOR ......................................................................................................................... 7


PARÁMETROS EN EL CLIENTE ........................................................................................................................... 7

CONFIGURACIÓN DE UN SERVIDOR ......................................................................... 8

CONFIGURACIÓN EN MICROSOFT WINDOWS ..................................................................................................... 8


CONFIGURACIÓN EN GNU/LINUX .................................................................................................................. 11

CONFIGURACIÓN DE UN CLIENTE .......................................................................... 13

ACCESO MEDIANTE LÍNEA DE ÓRDENES ............................................................................................................ 14


ACCESO MEDIANTE NAVEGADOR .................................................................................................................... 16
ACCESO MEDIANTE PROGRAMAS ESPECÍFICOS ................................................................................................... 16

Página 2 de 16
Funcionamiento de FTP
Para operar con los diferentes sistemas de archivos disponibles en una red local o Internet,
es necesario un protocolo que permita enviar archivos de una forma transparente. El protocolo
FTP (File Transfer Protocol o Protocolo de Transferencia de Archivos) es el encargado de esta
tarea.

Para ello, el protocolo FTP establece una doble conexión TCP entre el cliente y el servidor:

El cliente y el servidor cuentan con dos procesos que permiten la administración de estos dos
tipos de información:

DTP (Proceso de transferencia de datos) es el proceso encargado de establecer la


conexión y de administrar el canal de datos. El DTP del lado del servidor se
denomina SERVIDOR DE DTP y el DTP del lado del cliente se denomina USUARIO DE
DTP.

PI (Intérprete de protocolo) interpreta el protocolo y permite que el DTP pueda ser


controlado mediante los comandos recibidos a través del canal de control. Esto es diferente
en el cliente y el servidor:

 El SERVIDOR PI es responsable de escuchar los comandos que provienen de un


USUARIO PI a través del canal de control en un puerto de datos, de establecer la
conexión para el canal de control, de recibir los comandos FTP del USUARIO PI a
través de éste, de responderles y de ejecutar el SERVIDOR DE DTP.

 El USUARIO PI es responsable de establecer la conexión con el servidor FTP, de


enviar los comandos FTP, de recibir respuestas del SERVIDOR PI y de controlar al
USUARIO DE DTP, si fuera necesario.

Página 3 de 16
Conexión de control
Utiliza el puerto 21 del servidor y es la que sirve para acceder a éste e indicarle las
operaciones que el cliente desea realizar.

Conexión de datos
Utiliza el puerto 20 del servidor y es la que sirve para la transferencia de archivos hacia o
desde el servidor. El cliente puede negociar con el servidor un puerto distinto para
establecer esta conexión, distinguiéndose dos modos:

 Modo activo: el cliente establece una conexión con el puerto habitual de datos para
realizar la transferencia. Es el modo por defecto.

De este modo, es el servidor el que inicia las conexiones de datos y el cliente tiene que
abrir puertos para atender dichas conexiones. Esto puede comprometer la seguridad
del equipo y, los cortafuegos instalados en el equipo donde se encuentra el cliente FTP
evitarán estas conexiones aleatorias para prevenir ataques.

Página 4 de 16
Para solventar estos problemas, consecuencia de que sea el servidor el que inicia las
conexiones de datos, se desarrolló el modo pasivo.

 Modo pasivo: el cliente utiliza la conexión de control para solicitar al servidor la


utilización de un puerto distinto al habitual para la transferencia de datos. El servidor
comunicará al cliente el puerto por encima del 1023 por donde atenderá la conexión de
datos. El cliente utiliza un puerto aleatorio para establecer la conexión de control y
habitualmente el puerto inmediatamente superior para establecer la conexión de datos.

El modo pasivo resuelve el problema de que el cliente tenga que aceptar conexiones
en puertos mayores a 1023 pero lo traslada al servidor. La máquina donde se ejecuta el
servidor FTP tiene que aceptar conexiones en múltiples puertos y esto es una amenaza
para la seguridad del equipo. Los cortafuegos actuales permiten realizar un
seguimiento de las conexiones pasivas de datos, comprobando que el cliente que
solicita la conexión al puerto especificado por el servidor se corresponde con el cliente
al que se le indicó ese puerto y que, por tanto, la conexión se establece para el envío o
recepción de datos.

Comparativa de modos: el modo activo facilita la configuración y la administración del servidor


FTP, pero presenta problemas de seguridad a los clientes. El modo pasivo favorece al cliente
pero implica una configuración más compleja en el servidor.

Un servidor FTP permite dos formas de acceso:

 Acceso privado: requiere que el cliente se autentique para poder acceder a él


(nombre de usuario y contraseña). Previamente la cuenta del usuario se deberá haber
creado en el servidor.

 Acceso público: no requiere autenticación. El cliente utiliza una cuenta de tipo


genérico denominada "anonymous".

Página 5 de 16
Establecida la conexión entre el cliente y el servidor, el cliente tendrá acceso al sistema de
ficheros del servidor mediante cualquiera de los siguientes métodos: línea de órdenes,
navegador o programas específicos.

Las partes del sistema de ficheros a las que el usuario tendrá acceso y las operaciones que
podrá realizar en él, dependerá de los privilegios que al usuario se le hayan otorgado.

La jerarquía de ficheros y subdirectorios que se pone a disposición de los usuarios, se localiza


en un directorio específico del servidor FTP, denominado sitio.

La autenticación del usuario como la transferencia de información se realizan sin encriptar. Si


se necesita un mayor nivel de seguridad se recomienda usar SSH que implementa el protocolo
SFTP proporcionando un canal seguro en la transferencia de ficheros.

Existe una versión del protocolo FTP denominada TFTP (Trivial File Transfer Protocol o
Protocolo Trivial de Transferencia de Archivos) cuyo funcionamiento es similar a FTP pero no
requiere autenticación del usuario antes de la conexión. Se usa para clonar equipos en una
red, instalación por red o para obtener los archivos del sistema operativo de un servidor en
estaciones sin disco duro, etc. Para logra dicho objetivo, se debe utilizar de forma conjunta con
otros protocolos como:

 UDP (protocolo de datagramas de usuario): permite a la máquina cliente enviar un


mensaje de petición a los equipos de la red solicitando una dirección IP.

 DHCP o BOOTP (Bootstrap Protocol o Protocolo Autosuficiente): permite al cliente


obtener su dirección IP del servidor.

 IP para establecer comunicación con el servidor a través de la red

Página 6 de 16
Parámetros de configuración de FTP

 Parámetros en el servidor
Hay que determinar el directorio que ejercerá de raíz del sitio y establecer toda la estructura de
ficheros y directorios a ofertar a los clientes. Se puede establecer otros parámetros que
determinen la forma de acceso al sitio, los privilegios, restricción en el número de conexiones o
el tiempo.

Mantenimiento del servidor FTP

Da igual como esté montado el servidor FTP, el administrador tendrá que hacer una serie de
tareas cada cierto tiempo.

Organizar la información disponible en el servidor FTP por directorios, documentos, etc.


Gestionar las cuentas de usuario dando permisos, borrando cuentas inactivas, etc.
Mantener la seguridad en el acceso al contenido.
Realizar el mantenimiento del servidor y su contenido (actualizar el software, etc.).

 Parámetros en el cliente
Asegurarse de tener configurada correctamente la red TCP / IP.
Indicar el servidor al que se quiere acceder con su dirección IP o su nombre FQDN, modo de
transferencia, directorio local y remoto, etc.

Los parámetros dependerán de la forma escogida para acceder al servidor.

Página 7 de 16
Configuración de un servidor

 Configuración en Microsoft Windows


Windows permite la instalación de un servidor FTP mediante la utilidad IIS.

La configuración de dicho servicio resulta sencilla al igual que se trató en el servicio HTTP.

En primer lugar, hay que añadir el servidor a la lista del administrador de IIS si no se hizo ya al
instalar el servidor web, permitiéndose un equipo local o remoto. Después, aunque IIS ofrece
un sitio FTP predeterminado (\inetpub\ftproot), se puede crear otro sitio mediante la
opción del menú principal “Acción | Nuevo”.

Para alojar distintos sitios FTP en el servidor, ha de asociarse un puerto distinto a cada uno
para atender las peticiones cliente.

Página 8 de 16
Al crear un sitio con aislamiento de usuarios, debe crear una carpeta Localuser que
contendrá una subcarpeta por cada usuario local y una subcarpeta Public si se permite el
acceso a usuarios anónimos.

Página 9 de 16
La administración de cuotas en disco para los usuarios es posible gracias al sistema operativo:

Página 10 de 16
 Configuración en GNU/Linux
El servicio FTP lo proporciona el demonio vsftpd (Very Secure Ftp Daemon o demonio ftp muy
seguro).

1. Instalación

#apt-get install vsftpd

2. Configuración

Editar el fichero /etc/vsftpd.conf

El archivo tiene la estructura: directiva=valor


directiva: propiedad u opción que se configura.
valor: valor que se le asigna a la directiva.
No debe haber espacios antes ni después del =
Valores: boolean (YES, NO), números, cadenas.
El archivo está dividido en diferentes secciones.

Configurar los siguientes parámetros:

Página 11 de 16
Antes de iniciar el servicio, hay que crear la jerarquía de directorios y ficheros del sitio ftp.
El directorio raíz por defecto del sitio es /srv/ftp.

También se ha creado el usuario ftp.

Otro fichero de configuración es /etc/ftpusers con una lista de usuarios del sistema
que NO tendrán permiso para acceder al servicio ftp.

“Enjaular” a los usuarios locales a su directorio raíz (/home/usuario) es incompatible con el


permiso de escritura sobre él.

Iniciar el servicio:
#service vsftpd reload [stop | start | restart]

Página 12 de 16
Ejemplo:

Se quiere proporcionar un servicio FTP mediante un servidor Ubuntu en el que se


permita el acceso público y a usuarios con cuenta en el servidor. Se dará un mensaje
de bienvenida a los usuarios. A los usuarios anónimos solamente se les permitirá la
descarga, se limitará su tasa de transferencia a 7,2 Kb y solamente se les permite 5
minutos de acceso. Para los usuarios locales josemanuel y marian además, se
restringirá su acceso a su directorio personal.

Las opciones habilitadas en /etc/vdftpd.conf serían las siguientes:


#
#Fichero de configuración del servicio FTP
# General Settings
#----------------------------
ftpd_banner=”Bienvenido al servidor FTP”
#
#Local FTP user Settings
#---------------------------------
local_enable=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftp.chroot_list
#
#Anonymous FTP user Settings
#-------------------------------------------
anonymous_enable=YES
anon_world_readable_only=YES
anon_max_rate=7200
#
#Transfer Settings
#----------------------------
connect_from_port_20=YES
data_connection_timeout=300
#
#Modo standalone
#----------------------------
Listen=YES
#
#Nombre del servicio PAM para autenticación con vsftpd
#----------------------------------------------------------------------------------------
pam_service_name=vsftpd

En el fichero /etc/vsftpd.chroot_list:
#
#Usuarios restringidos a su directorio personal
#-----------------------------------------------------------------
josemanuel
marian

Página 13 de 16
Configuración de un cliente

 Acceso mediante línea de órdenes


En Windows se usa el símbolo del sistema (cmd.exe), en GNU/Linux una consola de terminal.

Orden genérica para conectar con el servidor ftp:

ftp servidor

<puerto>

Página 14 de 16
Página 15 de 16
 Acceso mediante navegador
Indicar en la barra de dirección la URL del recurso al que se desea acceder:

ftp://servidor
ftp://login:password@servidorFTP

 Acceso mediante programas específicos


En el mercado existe una amplia variedad de software para llevar a cabo la transferencia de
ficheros, destacando FileZilla, WinSCP o gFtp. El acceso y las operaciones a realizar,
dependerán de la interfaz del programa.

datos de la conexión

registro de mensajes

explorador local de archivos explorador remoto de archivos

Página 16 de 16

También podría gustarte