Cómo funciona realmente el servicio FTP Parte(I)

domingo, 27 de noviembre de 2011

Supongo que a estas alturas, todo usuario habitual de internet habrá usado varias veces un servicio FTP para descargarse algún archivo, aunque muchas personas no sabrán ni que lo han usado.

FTP (File Transfer Protocol) es un servicio de la capa de aplicación que nos permite descargarnos archivos y subirlos a un servidor remoto. Actualmente existen infinidad de aplicaciones para todos los S.O. que nos permiten realizar el papel de cliente y conectarnos a los servidores que queramos.

Como ocurre en la mayoría de los servicios ofrecidos por internet, los clientes son tan gráficos que no nos permiten ver las entrañas de cómo funciona de verdad FTP.

Tenemos que tener claro que en el intercambio de paquetes FTP entran en juego dos conexiones. La primera es sobre el puerto 21, la conexión de control, por donde se envían los diferentes comandos hacia el servidor y sus respectivas contestaciones. La segunda conexión es la de datos y tal y como su nombre indica, es por donde se envían y se reciben los datos pedidos.



Dentro de la comunicación existen dos formas de realizar el establecimiento de la conexión de datos. La más usada por casi todos los clientes FTP de forma predefinida es la pasiva.

En la forma pasiva, es el propio servidor el que elige el puerto al que se le va enviar la información.


220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------
220-You are user number 42 of 3000 allowed.
220-<< 220- Bienvenido al FTP an..nimo de ... 220-Welcome to the ... anonymous FTP server. 220->>
220-Local time is now 00:23. Server port: 21.
220-Only anonymous FTP is allowed here
220-IPv6 connections are also welcome on this server.
220 You will be disconnected after 5 minutes of inactivity.

USER anonymous
...
PASV
227 Entering Passive Mode (130,106,1,101,159,194)
MLSD
150 Accepted data connection
226-Options: -a -l
226 13 matches total


Este código, es la comunicación realizada por el cliente y el servidor en la conexión de control. Se puede ver cómo el cliente se logea como usuario anonymous. Después de varios comandos intercambiados entre el cliente y el servidor de forma automática, el cliente envía un PASV señalando que quiere realizar una conexión de datos de forma pasiva, respondiendole el servidor que acepta y señalando que la comunicacion se realizara hacia la IP 130.106.1.101 (IP del servidor) y el puerto 159x256+194=40898. El ultimo comando realizado por el cliente es una orden MLSD con la que se solicita la impresión del contenido de la carpeta compartida.

Post redactador por Eduardo

Artículos relacionados


Comments

No response to “ Cómo funciona realmente el servicio FTP Parte(I) ”
Post a Comment | Enviar comentarios ( Atom )

Publicar un comentario en la entrada

Deja tu opinión realizando un comentario interesante. Cualquier intento de Spam no será admitido.