0% encontró este documento útil (0 votos)
33 vistas50 páginas

Tema4 FTP

Cargado por

laramerinojohn
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
33 vistas50 páginas

Tema4 FTP

Cargado por

laramerinojohn
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Servicio de Transferencia

de Ficheros
FTP (File Transfer Protocol)
Objetivo
• Conocer los protocolos empleados en un servicio de transferencia de ficheros.
• Manejar los diferentes clientes del protocolo FTP para la realización tareas básicas.
• Identificar los agentes que intervienen en la comunicación de un cliente y un
servidor FTP.
• Reconocer los diferentes tipos de mensajes intercambiados entre clientes y
servidores FTP.
• Distinguir los diferentes modos de transferencias.
• Aprender a instalar y configurar servicios FTP en Windows y Linux.
Glosarios de términos
Introducción. Protocolo FTP
• El servicio de Transferencia de Ficheros permite la transferencia de ficheros de
un equipo a otra ubicación física.
• El protocolo principal que utiliza es el FTP (File Transfer Protocol).
• El protocolo FTP apareció en 1971.
• El servicio opera en la capa de Aplicación del Modelo OSI y trabaja sobre TCP de
la capa de Transporte.
• Los puertos de comunicación que usa son el 20 para Datos y el 21 de Control.
Protocolo FTP
Características y Funcionamiento
• Los servicios FTP se han usados mucho en la administración de los
servidores Web que ofrecen Hosting a sus clientes. En las descargas de
actualizaciones y software de repositorios de Linux, en las actualizaciones de
firmware, …
• Los servicios FTP permiten a demás de transferir ficheros interactuar con el
servidor permitiendo operaciones como crear directorios, eliminar o
renombrar ficheros y obtener un listado de todo el directorio.
Esquema de trabajo FTP
Funcionamiento
• Un servidor FTP puede trabajar en modo activo o pasivo, pero siempre
permanece a la escucha de solicitudes de conexión a través del puerto 21
(puerto predeterminado).
• En el puerto 21 se establece la conexión de Control por donde el cliente
enviará los comandos y el servidor las respuestas.
• Paralelamente a las conexiones de Control se crean Conexiones de Datos a
través del puerto 20, para transferencias de datos sugeridas por los
comandos.
Agentes implicados en la comunicación.
(Según esquema anterior)

• Interface de usuario: Es la aplicación o conjunto de comandos de alto nivel que


permite al usuario interactuar con el Protocolo Interprete(PI) del cliente para que
envíe los comandos FTP al PI del servidor.
• Protocolo Interprete (PI): Existe un Interprete de comandos tanto en el cliente
como en el servidor y estos se encargan de emitir/recibir comandos, recibir/emitir
respuestas y controlar el DTP (Proceso de transferencia de Datos) servidor.
• DTP ( Data Transfer Process). Esperará las señales de control del Interprete que
permitirá la transferencia de datos desde el cliente al servidor y viceversa.
Seguridad
• FTP se diseñó para realizar transferencia de archivos con la máxima
velocidad y para ello se basaba en enviar la mínima información de control
posible, dejando a un lado la seguridad.
• FTP es un protocolo inseguro ya que los datos son enviados sin cifrar
incluidos los de establecimiento de sesión donde se envían usuarios y
contraseñas de conexión.
• Para instalar FTP se deben instalar sobre una capa de seguridad extra
SSL/TLS.
Modos de conexión: Activo, Pasivo
• Una vez que el cliente inicia una conexión de control en el servidor y cada
vez que se envíe un comando de transferencia de datos se creará una
conexión de datos.
• Quién inicia la conexión de datos como los puertos de transmisión
dependen directamente del modo de conexión.
Conexión Modo Activo.
(Este es el modo de conexión predeterminada)
1. El cliente abre un puerto (superior al 1023) por donde esperará que le llegue la petición de
inicio de conexión de Datos y se lo comunica al servidor con el comando PORT.
2. El servidor le responde con un mensaje de confirmación a través de una conexión de
control.
3. El cliente envía comando por la conexión de control.
4. El servidor responde a dichos comandos.
5. En un momento de la comunicación el servidor inicia una conexión de datos a través del
puerto 20 hacia el puerto indicado por el cliente en el paso 1 y se realiza la transferencia.
6. Terminada la transferencia es el servidor quien indica fin de la transferencia a través de la
conexión de control.
Modo Activo.

No es recomendable el uso del Modo


activo por seguridad. Es el cliente quién
proporciona al servidor el puerto por el
que va a enviar los datos
Conexión modo Pasivo
1. El cliente envía un comando PASV por el canal de control al servidor.
2. El servidor selecciona un puerto (superior a 1023) y se lo notifica al cliente FTP en la
respuesta de confirmación para que sepa por el puerto que se iniciará la transferencia de
datos.
3. El cliente envía comandos por el canal de control.
4. El servidor envía las respuestas por el canal de control.
5. El cliente inicia la transferencia de datos a través del puerto proporcionado en el paso 2 y
se realiza la transferencia.
6. El servidor finaliza la transferencia el servidor cierra la conexión de datos y lo comunica
por la conexión de control.
Modo Pasivo.

En este tipo de
transferencia el puerto 20
del servidor no se utiliza.
Comandos o órdenes FTP
• Todo servicio de FTP dispone de una serie de comandos cuya sintaxis varía
de un servidor a otro, pero que podemos agruparlas en:
• Órdenes de control
• Órdenes de parámetros de transferencia.
• Órdenes del servicio FTP.
• Cada vez que se envía una orden al servidor FTP este envia una respuesta
según los códigos de estado.
Órdenes de control
Órdenes de parámetros de transferencia.
Órdenes de servicio FTP
Órdenes de servicio FTP
Códigos de estado

El código estado informa de


cómo se ha ejecutado el
comando. Contiene 3 dígitos.

El primer dígito proporciona una


información simple como
muestra la tabla.
Establecimiento de una conexión FTP.
• Independientemente del modo de operación activo o pasivo, el protocolo
FTP requiere establecer una sesión de conexión y para ello necesita
introducir unas credenciales que consta de usuario y contraseña.
• Cuando las credenciales son aceptadas se establece la conexión entre el
cliente y el servidor.
• El cliente podrá llevar a cabo las acciones que permita el rol asignado a este
usuario, es decir previamente a cada usuario se le asigna las operaciones que
puede o no realizar.
Tipos de acceso a un servidor FTP
• Usuario autorizado. Dependiendo de la configuración del servidor los usuarios
autorizados pueden venir definidos como cuenta local, cuenta de usuario de
dominio o de otros almacenes de datos como LDAP (Protocolo ligero de dominio),
fichero de texto,…
A los usuarios se le asignan permisos de forma individualizada.
Para facilitar la configuración de permisos se crean grupos con ciertos permisos los
cuales los miembros del grupos heredaran estos permisos.
• Acceso anónimo. En algunos casos los servidores se permitían configurar un
usuario llamado “anonymous”, el cual permitía acceder a todo el mundo a una serie
de ficheros públicos.
Permisos, cuotas y límite de ancho de banda
• Un servidor FTP es una forma fácil de acceder remotamente a un sistema de archivo ubicado en otro
lugar. Donde podremos hacer todas las operaciones típicas de un servidor, crear, modificar o borrar
carpetas, archivos, transferencia de archivos en ambos sentidos. Estas operaciones son delicadas y
debemos controlarlas por ellos se asignan los permisos específico a cada usuario o grupo.
• La cuota es el establecimiento de una cantidad de espacio reservado para un usuario de
almacenamiento en le servidor. Con este valor evitamos que un usuario consuma todo el espacio del
servidor.
• Ancho de banda, es la cantidad de bits que se puede transferir por un medio. El servidor FTP
dispone de un único canal de transmisión para todos los usuarios, por tanto debemos controlar el
ancho de banda asignado para evitar que un usuario consuma todo el ancho de banda y deje al servidor
sin poder ser usado. Los parámetros a configurar son la velocidad de subida y de bajada. No tener
configurada estas restricciones puede ocasionar ataques DoS
Modos de transferencias.
• La transmisión de información a través de FTP se puede llevar a cabo de
diferentes manera según el tipo de dato especificado: ASCII, Binary, EBCDIC.
Aunque solo se utiliza dos tipos ASCII y Binary.
• ASCII: Se utiliza para enviar texto plano con formatos .txt, .html, .php, …) En la
transferencia en texto plano los finales de líneas los representa como CRLF como
Microsoft, pero en UNIX los representan como LF y en otros como CR. Esto hace que tras
la descarga del archivo se tenga que adaptar los finales de líneas. En los ficheros binarios
esto daría problemas de ficheros corruptos.
• Binary: Se utiliza para transferir archivos . Jpg, .exe, .mp3, …
Protocolo FTPS
• Una de las debilidades del protocolo FTP es la seguridad.
• FTP envía en texto plano usuario y contraseñas para conectarse a equipos
remotos, lo que lo hace muy vulnerable.
• FTPS es una extensión de FTP donde utiliza capa SSL/TLS para la
encriptación de la comunicación de extremo a extremo. DE esta forma se
evita las vulnerabilidades de transmisión que generan los servicios FTP.
Métodos de aplicación de FTPS
• Implícito o FTPS: La capa de seguridad SSL se activa en el momento que se
inicia la conexión a través del puerto 990. Esta fue la primera versión de
seguridad de FTP, aunque está obsoleto se sigue usando.
• Explícito o FTPES: En este caso la comunicación comienza como una
transmisión FTP normal a través del puerto 21, pero a través de comandos
especiales se activa la capa de seguridad SSL/TLS. Esta operación se realiza
antes de enviar el usuario y la contraseña para establecer la conexión.
SFTP/SSH
• Los navegadores se usaban como clientes ftp, pero ninguno admite FTPS ni
FTPES.
• Otra alternativa a las conexiones seguras de FTP son el protocolo SFTP. En
este caso no es una adaptación del protocolo FTP como ocurre con FTPS y
FTPES, sino que es una implementación nueva que se ejecuta a través de
SSH (Secure Shell) que actúa sobre el puerto 22 por defecto.
Protocolo TFTP
• TFPT (Trivial File Transfer Protocol), este protocolo junto con el BOOTP
permite el arranque de una máquina sin disco duro. Es decir, arranca el sistema
operativo ubicado en otra máquina. Según se describe en RFC1350.
• Es un protocolo sencillo. No necesita autenticación, por lo que no se transmite
usuario, ni contraseña.
• La implementación de l protocolo es reducido y se almacena en una memoria
PROM.
• Trabaja sobre UDP a través del puerto 69.
Modos de transferencia TFTP
• NetASCII: Utiliza caracteres ASCII 8
bits.
• Octe: Trata los datos como bytes de 8
bits sin interpretación.
• Mail: para transferencias a una dirección
de correo definido por RFC 783, aunque
está obsoleto.
Cliente FTP
• Para poder acceder a un servidor FTP se realiza siempre a través de un
cliente FTP. El cliente puede ser:
• Cliente en modo consola.
• Cliente navegador web
• Cliente explorador
• Cliente gráfico
Cliente FTP: Modo consola
• Viene preinstalada casi en
todos los sistemas
operativos. Se accede
desde la consola y su
operativa es tecleando
comandos y parámetros
para realizar las diferentes
funciones.
Listado de comandos
Cliente FTP: Navegador Web.
• Para conexiones tipo FTPs y FTPES no son aceptadas por los navegadores.
• Aunque ya los navegadores por la falta de seguridad están dejando de implementar el protocolo
FTP.
Cliente FTP: Explorador

• Algunos
exploradores como
el explorador de
Windows permite
conexiones ftp.
Cliente FTP: Gráfico
• Los clientes gráficos son las más fáciles de usar y las mas potentes. Existen muchas
aplicaciones gratuitas y de pago para todo tipo de plataforma. Algunas de las que caben
destacar son:
• WinSCP
• Cyberduck
• Filezilla Client
• And FTP
• SmartFTP
• gFTP
• Kasablanca …
Servidor FTP
• A igual que clientes podemos encontrar diferentes formas y aplicaciones que
hacen de servidor de FTP.
• En Windows Server a través de IIS (Internet Informations Server)
• En cualquier distribución de Linux
• En aplicaciones propietarias: Filezilla server, FreeFTPd, WingFTP Server, Xlight FTP
Server, Complete FTP, …
• A continuación se indicará como instalar un servidor FTP en Windows
Server, para el ejemplo anterior.

También podría gustarte