Servicios de Transferencia de Archivos: Protocolos FTP, SFTP, FTPS y TFTP

Diapositivas sobre Servicios de Transferencia de Archivos. El Pdf, de nivel universitario y enfocado en Informática, explora los protocolos FTP, SFTP, FTPS y TFTP, con un ejemplo práctico de uso de FTP en Windows.

Ver más

47 páginas

6. Servicios de Transferencia
de Archivos
2
Índice
1. Introducción
2. Protocolo FTP
3. Seguridad en FTP (SFTP, FTPS)
4. Protocolo TFTP

Visualiza gratis el PDF completo

Regístrate para acceder al documento completo y transformarlo con la IA.

Vista previa

Servicios de Transferencia de Archivos

6. Servicios de Transferencia de ArchivosÍndice

1. Introducción 2. Protocolo FTP 3. Seguridad en FTP (SFTP, FTPS) 4. Protocolo TFTP

Transferencia de Archivos

De forma genérica la transferencia de archivos utilizando una red puede realizarse de formas muy distintas:

  • Transferencias de archivos transparentes a través sistemas de archivos de red. Por ejemplo, SMB 3.0 (Server Message Block) o servicios en la nube.
  • Transferencias de archivos explícitas usando protocolos de transferencia de archivos como FTP, BitTorrent, HTTP, etc.
  • Transferencia de archivos en los sistemas de mensajería instantánea, redes sociales, etc.

Introducción

1. Introducción 3Índice

1. Introducción 2. Protocolo FTP

Introducción al FTP

O Modelo Establecimiento Conexión de Control D Gestión de la Conexión de Datos Comandos y Códigos Respuesta 3. Seguridad en FTP 4. Protocolo TFTP

Protocolo de Transferencia de Archivos (FTP)

4Introducción al FTP . FTP (File Transfer Protocol): En castellano 'Protocolo de Transferencia de Archivos', es un protocolo de capa de aplicación utilizado en arquitecturas TCP/IP Desde un equipo cliente se puede conectar a un servidor para descargar archivos desde él o para enviar archivos hasta él. El protocolo proporciona una gran variedad de comandos para gestionar el Sistema de Archivos, como moverse, borrar, copiar, crear, etc. Para asegurar que los archivos se envían y reciben sin errores, FTP utiliza el protocolo fiable TCP como protocolo de nivel de transporte.

2. Protocolo FTP

Estandarización del FTP

5Estandarización (Informativa) O El primer documento de FTP fue el RFC141 publicado en 1971, antes incluso que los protocolos TCP e IP estuvieran definidos. Tras una serie de mejoras aparece el RFC765 en 1980, donde se describe el funcionamiento ya sobre los protocolos TCP e IP. El RFC959 "File Transfer Protocol FTP", publicado en 1985, revisó el RFC anterior e incluyó nuevos comandos. Es la base actual del protocolo FTP estandarizado bajo el nombre STD 9, https://www.rfc-es.org/rfc/rfc0959-es.txt Desde entonces se han ido creando nuevos documentos que definen extensiones de seguridad (RFC2228), extensiones para IPV6 y NAT (RFC2428), etc.

2. Protocolo FTP

Modelo de Funcionamiento FTP

6Modelo Interface con el usuario USUARIO Conexión de Control Órdenes Intérprete de Protocolo (PI) del Servidor Intérprete de Protocolo (PI) de usuario Respuestas Puerto 21 Puerto 20 (en modo estándar) Sistema de Archivos Proceso de Transferencia de Datos (DTP) del Servidor Conexión de Datos Proceso de Transferencia de Datos (DTP) de usuario Sistema de Archivos Servidor FTP Cliente FTP

2. Protocolo FTP

Conexiones en FTP

7Modelo A diferencia de otros protocolos en FTP se establecen dos conexiones entre el Servidor y el Cliente:

  • Conexión de Control: Se crea cuando se establece la sesión FTP y se mantiene mientras dura la sesión. Se utiliza para intercambiarse comandos y respuestas. No se utiliza para enviar archivos. Se utiliza el puerto 21 del servidor.
  • Conexión de Datos: Se establece cada vez que se desea enviar datos entre el servidor y el cliente. Una vez la transferencia de estos datos se completa la conexión se cierra

2. Protocolo FTP

Componentes Lógicos del Proceso FTP

8Modelo El proceso FTP se divide en dos componentes lógicos:

  • Intérprete del Protocolo (PI): Se encarga de gestionar la conexión de control. El PI de usuario envía comandos estándar que se transmiten al proceso servidor a través de la conexión de control. Como respuesta a las órdenes, las respuestas estándar se envían desde el PI del servidor al PI de usuario.
  • Proceso de transferencia de datos (DTP): Responsable de enviar los datos entre cliente y servidor.

La comunicación entre cliente y servidor es independiente del sistema de archivos utilizado en cada ordenador, porque las entidades que se comunican entre sí son los PI y los DTP, que usan el mismo protocolo estandarizado FTP.

2. Protocolo FTP

Establecimiento de la Conexión de Control

9Establecimiento Conexión de Control El Servidor FTP asume un rol pasivo, de manera que el PI del servidor queda a la escucha en el puerto 21. El PI de usuario establece una conexión TCP con el puerto 21 del servidor. Como puerto local utiliza un puerto aleatorio. Tras la conexión TCP, la Conexión de Control esta establecida para el intercambio de comandos. El primer paso es realizar la autentificación del usuario. Esto tiene dos propósitos:

  • Realizar un Control de Acceso. Permitiendo el acceso sólo a usuarios autorizados.
  • Selección de Recursos: La identificación permite al servidor decidir que recursos pondrá a disposición del usuario.

2. Protocolo FTP

Proceso de Autentificación FTP

10Proceso de Autentificación La autentificación es un proceso sencillo e inseguro utilizando los comandos USER y PASS

FTP Client FTP Server 1. Establish TCP Connection To Server (TCP) 2. Establish TCP Connection, Send 220 "Ready" Reply 220 3. Receive "Ready" Reply, Send User Name USER 4. Receive User Name, Send 331 "Need Password" Reply 331 5. Receive "Need Password" Reply, Send Password PASS 6. Receive Password, Send 230 "Greeting" Reply 230 7. Receive "Greeting" Reply, Connection Open @ Anonymous ftp, RFC1635: Los servidores pueden permitir el acceso libre usando como usuario "Anonymous". Como pass normalmente solicitan una dirección de email, únicamente para registrar la entrada.

2. Protocolo FTP

Gestión de la Conexión de Datos

11Gestión de la Conexión de Datos Es necesario crear una Conexión de Datos entre los DTP de servidor y usuario. cada vez que se tiene que enviar archivos u otro tipo de datos (por ejemplo, una solicitud del listado de archivos en un directorio). Se definen dos formas diferentes de crear la Conexión de Datos, que se diferencian en quién inicia la conexión:

  • Conexión de Datos Activa, también denominada estándar.
  • Conexión de Datos Pasiva.

2. Protocolo FTP

Conexión de Datos Activa

12Conexión de Datos Activa El servidor inicia el establecimiento de la conexión TCP utilizando su puerto local 20 y el puerto del cliente que le ha sido indicado en el comando PORT.

FTP Client FTP Server Control Connection (Port 1678) Control Connection (Port 21) 1. Send PORT 1742 Command 2. Receive PORT Command, Acknowledge Data Connection (Port 1742) Data Connection (Port 20) 3. Open Data Connection To Client Port 1742 4. Acknowledge Data Connection (Send/Receive Data) (Send/Receive Data) ...

2. Protocolo FTP

Conexión de Datos Pasiva

13Conexión de Datos Pasiva El cliente envía un comando PASV sobre la Conexión de Control. El servidor FTP le indica un nº de puerto. El cliente inicia una conexión TCP desde un puerto local aleatorio hacia el puerto del servidor especificado.

FTP Client FTP Server Control Connection (Port 1678) Control Connection (Port 21) 1. Send PASV Command 2. Receive PASV Command, Tell Client To Use Port 2223 Data Connection (Port 1742) Data Connection (Port 2223) 3. Open Data Connection To Server Port 2223 4. Acknowledge Data Connection ( Send / Receive Data ) (Send/Receive Data) ...

2. Protocolo FTP

Modos de Transferencia FTP

14Modos de Transferencia (Informativa) FTP define tres modos de transferencia que indican como los datos se envían a través de la Conexión de Datos establecida:

  • Modo de Flujo (Stream Mode): Los datos se envía de forma continua sin estructurar usando la conexión TCP. Por tanto, el final del archivo es indicado simplemente al iniciar el cierre de la conexión. Es el modo que se emplea casi siempre.
  • Modo Bloque (Block Mode): Los datos son divididos en bloques FTP ( FTP records) con cabecera de 3 bytes que indican longitud e información del bloque.
  • Modo Comprimido (Compressed Mode): Los datos son comprimidos antes del envío usando compresión RLE (Run-length encoding). Los datos se envían de forma similar al modo bloque utilizando una cabecera.

2. Protocolo FTP

Tipos de Datos en FTP

15Tipos de Datos (Informativa) Ciertos tipos de archivos utilizan distintas representaciones según el Sistema Operativo. Si el FTP realiza envío literal del archivo puede traducirse en que el receptor no entiende el archivo de forma correcta. FTP define dos tipos de datos principales:

  • Tipo ASCII: Los diferentes S.O utilizan de forma distinta los caracteres de control en archivos ASCII. Por tanto, FTP realiza un envío del archivo usando un ASCII neutral (NVT ASCII usado en Telnet). El receptor convierte al formato usado en su sistema de ficheros.
  • Tipo Imagen (Tipo Binario): El archivo es enviado byte a byte sin ningún tipo de procesamiento.

2. Protocolo FTP

Comandos FTP

16Comandos Una vez establecido la Conexión de Control en PI de usuario envía comandos al PI del servidor que los interpreta y responde con códigos de respuesta. Podemos agrupar los comandos en tres grupos basándonos en el tipo de función:

  • Comandos de Control de Acceso: Usados tanto en el proceso de autentificación como en el control general de la sesión.
  • Comandos de Parámetros de Transferencia: Controlan como se realiza la transferencia de datos.
  • Comandos de Servicio FTP: Controlan las operaciones con los archivos, como borrar, renombrar, etc.

2. Protocolo FTP

Comandos de Control de Acceso FTP

17Comandos Control de Acceso

Command CodeCommand Description
USERUser Name Identifies the user attempting to establish an FTP session.
PASSPassword Specifies the password for the user given previously by the USER command during login authentication.
ACCTAccount Specifies an account for an authenticated user during the FTP session. Only used on systems that require this to be separately identified; most select an account automatically based on the name entered in the USER command.
CWDChange Working Directory Allows the user to specify a different directory for file transfer during an FTP session.
CDUPChange To Parent Directory ("Change Directory Up") A special case of the CWD command that goes to the directory one level up in the server's directory structure. It is implemented separately to abstract out differences in directory structures between file systems; the user can just use CDUP instead of knowing the specific syntax for navigating up the directory tree on the server.
SMNTStructure Mount Allows the user to mount a particular file system for access to different resources.
REINReinitialize Reinitializes the FTP session, flushing all set parameters and user infor- mation. This returns the session to the state when the control connection is just established. It is, in essence, the opposite of the USER command. The next command issued is often USER, to log in a different user.
QUITLogout Terminates the FTP session and closes the control connection. Note that the naming of this command "Logout" was unfortunate; the REIN command is really most similar to a conventional "logout" command, as it terminates a logged-in user and allows another user to log in. In contrast, the QUIT command shuts down the entire session.

2. Protocolo FTP 18

¿Non has encontrado lo que buscabas?

Explora otros temas en la Algor library o crea directamente tus materiales con la IA.