Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Servicio FTP
Características
Componentes y funcionamiento
Servidores FTP
Clientes FTP
Clientes en líneas de comandos
Clientes gráficos
Navegadores / exploradores
Protocolo FTP
Tipos de acceso
Conexiones y modos
Tipos de transferencia de archivos
Seguridad
FTPS (o FTP/SSL)
Protocolo FXP
Servicio TFTP
Servicios SFTP/SCP
RESUMENTEMA 4
Los conceptos clave de este capítulo son los siguientes:
o FTP es uno de los servicios de transferencia de ficheros más utilizado. Es un servicio fácil
de mantener y configurar, ofrece rapidez en la transferencia de ficheros y abstrae a los
usuarios de los detalles de los sistemas operativos empleados.
o Los servidores FTP permiten dos tipos de acceso desde los clientes. Acceso anónimo
donde la conexión al servidor de realiza con usuario especial (anonymous o ftp) y acceso
autorizado donde el cliente se conecta con un usuario que debe existir en el servidor (puede
ser un usuario local o un usuario "virtual"). En el servidor se configuran los privilegios que
tiene cada usuario. Lo normal es que el usuario anónimo solo pueda descargar archivos.
o Los servidores y los clientes mantienen conexiones TCP independientes para control y
transferencia de datos.
o Los clientes FTP puede iniciar conexiones a servidores FTP de dos formas distintas que
se conocen como modo activo y modo pasivo. En el modo activo el cliente inicia y establece
la conexión de control al puerto 2/TCP del cliente, y el servidor inicia las conexiones de
datos desde su puerto 20/TCP a puertos que previamente le comunica el servidor. En el
modo pasivo es siempre el cliente el que inicia las conexiones con el servidor, el puerto 20
del servidor no se utiliza.
o Los archivos pueden estar en formato ASCII o binario. Los clientes FTP permiten definir o
detectan de forma automática el formato de transmisión a utilizar en función del tipo de
archivo a transferir.
CARACTERÍSTICAS
permite a los usuarios:
● Acceder a sistemas remotos y listar directorios y ficheros
● Transferir ficheros desde o hacia el sistema remoto, es decir, subir (upload) o bajar
(download) ficheros.
● Realizar acciones adicionales en el sistema remoto como renombrar, borrar, crear
archivos y carpetas, cambiar permisos, descomprimir, etc
COMPONENTES Y FUNCIONAMIENTO
Su funcionamiento se basa en el modelo cliente/servidor y está formado por los siguiente
componentes:
● clientes FTP: Acceden al sistema de ficheros del equipo donde están instalados y
establecen conexiones con los servidores FTP para subir o descargar archivos.
● Servidores FTP: Acceden al sistema de ficheros del equipo donde están instalados,
manejan las conexiones de los clientes y en función de los privilegios definidos
permiten la descarga y/o subida de ficheros.
SERVIDORES FTP
Es un programa que atiende y procesa las conexiones de los clientes FTP y que puede
acceder al sistema de ficheros del equipo donde esta instalado permitiendo la subida y
bajada de archivos. Ofrecen multiples opcines de configuracon para establecer privilegios
de los usuarios, limitaciones de subida y descarga, tiempos de conexión y espera, etc
(recordar filezilla cuando lo configuramos)
CLIENTES FTP
Programas que acceden al archivo de ficheros del equipo donde están instalados y
establecen conexiones con los servidores FTP para subir o descargar archivos. Ejemplo
filezilla client que usamos
NAVEGADORES / EXPLORADORES
Los navegadores actuales pueden actuar como clientes ftp, para utilizarlos hay que indicarlo
como se indica:
● formato general:ftp://[usuario][:password]@servidor
● ejemplos: ftp://ftp.rediris.es, ftp://alumno@92.68.00.00 (SALE EN UNA
PREGUNTA)
● PARA REALIZAR CONEXIONES CON ANONYMOUS NO HAY QUE INDICAR NI
USUARIO NI CONTRASEÑA.
● Usan el modo activo por defecto.
PROTOCOLO FTP
Determina un conjunto de normas y reglas en función de las cuales dialogan los clientes y
servidores FTP.
Utiliza el TCP como protocolo de transporte
Las respuestas FTP son enviadas por el servidor como consecuencia de la accion
ejecutada al recibir un comando. Se componen de 3 digitos:
● el primero indica si la accion solicitada por el comando fue exitosa o fallida
● el segundo indica a que se refiere la respuesta
● el tercero ofrece informacion más especifica reacionada con el segundo digito
TIPOS DE ACCESO
Los servidores FTP permiten dependiendo de como se configuren dos tipos de acceso
desde los clientes
1)Acceso anonimo:
.) el cliente ftp se conecta al servidor con el usuario especial anonymous y /o ftp .2)de
manera habitual el usuario anonymous solo puede descargar archivos y su
acceso se limita a un directorio del servidor
2)Acceso autorizado:
2.1)el cliente ftp se conecta con un usuario que debe existir en el servidor. Los
usuarios pueden ser locales o virtuales.
2.2)Una vez se ha autenticado, el usuario accede a un directorio del servidor en que
puede estar o no confinado o “enjaulado” (no puede subir a directorios superiores)
2.3)En el servidor se configuran los privilegios que tiene cada usuario (descargar,
subir, borrar, limitacion de espacio, acceso a unos directorios u otros, limitacion de
velocidades, etc)
CONEXIONES Y MODOS
Es un servicio basado exclusivamente en TCP que utiliza varias conexiones y puertos
conexiones de datos:
cuando el cliente solicita una transferencia de información se crea una nueva conexión de
datos que se cierra al finalizar la transmision, pueden haber tantas transferencias de datos
simultaneas como se configure en el servidor para evitar su sobrecarga.
Por la conexión de control nunca se envian datos y por la conexión de datos nunca se
envian comandos de control.
los servidores FTP usa el puerto 2/TCP para atender conexiones de control y el puerto
20/TCP para las conexiones de datos, pero actualemnte no se usa siempre la 20, sino
puertos mayores a 023 para iniciar o atender conexiones.
Un cliente FTP puede iniciar una conexión a un servidor de dos formas distintas que se
conocen como modo activo y modo pasivo.
MODO ACTIVO
ES EL MODO NATIVO DE FTP,
1. Se incia el cliente y establece una conexión de control
a. abre un puerto local superior al 023
b. establece una conexión TCP con el puerto 2 del servidor.
2. Cuando se solicita una transferencia de ficheros
a. El cliente envia el comando PORT al servidor en el que especifica su
direccion IP y un numero de puerto que abrira para usar en la conexión de
datos
b. el servidor inicia una conexión TCP desde su puerto 20 hacia el puerto que le
ha indicado el cliente (ejemplo el 300)
c. se utiliza la conexión de datos para realizar la transferencia de informacion.
Los cortafuegos instalados en el equipo donde esta el cliente FTP o en la red a la que
pertenece evitaran las conexiones a estos puertos superiores al 023 para prevenir
ataques.
Los cortafuegos actales y versiones modernas de NATP implemente FTP ALG (Application
Level Gateway)
Por lo tanto si un NATP implementa un ALG LOS CLIENTES DE LA RED INTERNA
PODRAN INICIAR CONEXIONES FTP UTILIZANDO EL MODO ACTIVO
No todos los cortafuegos / NATP implementan ALG.
●
MODO PASIVO
En el modo pasivo es siempre el cliente el que inicia las conexiones con el servidor. EL
PUERTO 20 DEL SERVIDOR NO SE UTILIZA.
1. El cliente se inicia y establece una conexión de control
a. abre un puerto superior al 023
b. establece una conexión TCP con el puerto 2 del servidor
c. esto es igual que el modo activo
-La máquina donde se ejecuta el servidor FTP tiene que aceptar conexiones en multiples
puertos y esto es una amenaza para el equipo. LOS CORTAFUEGOS ACTUALES
PERMITEN HACER SEGUIMIENTO A LAS CONEXIONES PASIVAS DE DATOS PARA
COMPROBAR QUE EL CLIENTE QUE SOLICITA LA CONEXIÓN AL PUERTO
ESPECIFICADO POR EL SERVIDOR ES EL CLIENTE AL QUE SE LE INDICO ESE
PUERTO Y POR LO TANTO LA CONEXIÓN SE ESTABLECE PARA EL ENVIO O
RECEPCION DE DATOS.
CLIENTE FTP
Conexión modo activo
● el cortafuegos tiene que permitir conexiones TCP salientes hacia el puerto 2 y
entranten a puertos mayores que el 023 desde el puerto 20
● si el cliente esta detras del cortafuegos de red y/o un encaminador NATP
○ si el NATP no implementa el FTP ALG existiran problemas porque se filtraran
las conexiones TCP iniciadas desde el exterior por los servidores FTP a
puertos mayores que 023 del cliente
○ si el NATP implementa FTP ALG los cliente podran usar el modo activo
porque se permitiran conexiones entrantes a puertos mayores que 023.
Conexión modo pasivo
● los cortafuegos existentes tienen que permitir conexiones TCP salientes hacia el
puerto 2 y hacia puertos mayores que 023.
SERVIDOR FTP
MODO ACTIVO
● conexión control: cliente (>023 ) => Servidor (2)
● conexiones de datos: cliente (>023) <= Servidor (20)
MODO PASIVO
● conexión control: cliente (>023) => Servidor (2)
● conexiones de datos: cliente (>023) => Servidor (>023)
Casi todos los clientes ofrecen modo automatico que detecta el modo de archivo y
establece el tipo de transferencia adecuado
SEGURIDAD
FTPS
Es un conjunto de especificaciones que determinan como encapsular FTP en SSL (secure
sockets layer) o en TLS (transport layer security) para ofrecer comunicaciones seguras.
Gracias a la utilizacion de algoritmos criptograficos y certificados digitales se pueden
garantizar la confidencialidad y la integridad de la informacion transmitida, asi como la
autenticidad de los servidores.
● FTP Explicito
○ el cliente establece una conexión de control al puerto 2 y solicita
explicitamente que la comunicacion sea segura con el comando AUTH SSL o
AUTH TTL y si el servidor lo soporta se establece una conexión SSL/TLS
basandose en algoritmos criptograficos y certificados digitales.
○ si el servidor no soporta FTPS le ofrece al cliente la posibilidad de usar FTP
“normal” no seguro
○ el cliente y el servidor pueden negociar que parte de las comunicaciones si
conexiones de control y/o datos seran cifradas.
○ es el metodo más recomendado porque permite mayor control sobre las
comunicaciones
RECORDAR QUE FTPS, SFTP (SSH File Transfer Protocol) y Secure FTP(que es
enviar el protocolo FTP a traves de una conexión SSH) SON DIFERENTES!!!
PROTOCOLO FXP
FXP(File eXchange Protocol) es un protocolo de transferencia de datos directa entre
servidores FTP, utilizando un cliente solo para conectarlos inicialmente, es decir, el ancho
de banda del cliente es solo para conexión inicial y no para la transferencia de ficheros que
se hace directamente de un servidor a otro.
SERVICIO TFTP
TFTP(Trivial File Transfer Protocol) es un protocolo de la capa de aplicacion diseñado
para ofrecer un servicio de trasnferencia de ficheros simple y rapido basado en el modelo
cliente/servidor
Características Principales
● TFTP utiliza UDP como protocolo de nivel de transporte y usan el puerto 69/UDP
como puerto estándar
● no existen mecanismos de autenticación o cifrado
SERVICIO SFTP/SCP
SSH(Secure shell protocol) es un protocolo de la capa de aplicación diseñado para ofrecer
un servicio de acceso a terminales de equipos remotos. está basado en el modelo
cliente/servidor. Usan el puerto 22/TCP como puerto estándar, ofrece autenticación,
confidencialidad e integridad.
se basa en los protocolos SFTP (SSH File Transfer Protocol) y SCP (Secure copy Protocol)
● SFTP
○ permite la transferencia de ficheros entre sistemas remotos
○ permite listar ficheros y directorios del servidor
○ permite realizar funciones adicionales en el servidor como renombrar, borrar,
crear archivos y carpetas, cambiar permisos, etc
● SCP
○ permite la copia de ficheros entre sistemas remotos
○ hay clientes SCP graficos que integran funcionalidades adicionales como
listar, borrar, etc. No son clientes scp puros
Existen multiples clientes SFTP/SCP y se pueden clasificar segun el interfaz de usuario que
ofrecen
● Clientes en linea de comandos
○ clientes que se pueden invocar desde la linea de comandos
○ clientes scp y sftp
● clientes graficos
○ la mayoria de los clientes graficos FTP también pueden actuar como clientes
SFTP/SCP