Sunteți pe pagina 1din 6

File Transfer Protocol

FTP (siglas en ingls de File Transfer Protocol, 'Protocolo de Transferencia de Archivos) en informtica, es un
protocolo de red para la transferencia de archivos entre
sistemas conectados a una red TCP (Transmission Control Protocol), basado en la arquitectura cliente-servidor.
Desde un equipo cliente se puede conectar a un servidor
para descargar archivos desde l o para enviarle archivos, independientemente del sistema operativo utilizado
en cada equipo.
El servicio FTP es ofrecido por la capa de aplicacin del
modelo de capas de red TCP/IP al usuario, utilizando normalmente el puerto de red 20 y el 21. Un problema bsico
de FTP es que est pensado para ofrecer la mxima velocidad en la conexin, pero no la mxima seguridad, ya
que todo el intercambio de informacin, desde el login y
password del usuario en el servidor hasta la transferencia
de cualquier archivo, se realiza en texto plano sin ningn
tipo de cifrado, con lo que un posible atacante puede capturar este trco, acceder al servidor y/o apropiarse de los
archivos transferidos.

El siguiente modelo representa el diagrama de un servicio FTP.

operacin sobre el sistema de archivos (almacenar, recuperar, aadir, borrar, etc.). El proceso de transferencia de
datos (DTP) de usuario u otro proceso en su lugar, debe
esperar a que el servidor inicie la conexin al puerto de
datos especicado (puerto 20 en modo activo o estndar)
y transferir los datos en funcin de los parmetros que se
Para solucionar este problema son de gran utilidad apli- hayan especicado.
caciones como SCP y SFTP, incluidas en el paquete SSH, Vemos tambin en el diagrama que la comunicacin enque permiten transferir archivos pero cifrando todo el tr- tre cliente y servidor es independiente del sistema de arco.
chivos utilizado en cada computadora, de manera que no
importa que sus sistemas operativos sean distintos, porque las entidades que se comunican entre s son los PI y
los DTP, que usan el mismo protocolo estandarizado: el
1 Historia
FTP.
Tambin hay que destacar que la conexin de datos es bidireccional, es decir, se puede usar simultneamente para enviar y para recibir, y no tiene por qu existir todo el
tiempo que dura la conexin FTP. Pero tena en sus comienzos un problema, y era la localizacin de los servidores en la red. Es decir, el usuario que quera descargar
algn archivo mediante FTP deba conocer en qu mquina estaba ubicado. La nica herramienta de bsqueda
de informacin que exista era Gopher, con todas sus limitaciones.

El protocolo FTP se empez a utilizar en abril de 1971,


publicado como el RFC 114, antes de que existiera la pila
TCP/IP. La estructura general fue establecida en 1973.
Fue modicado varias veces, aadiendo nuevos comandos y funcionalidades. Al nal se public el RFC 959 en
octubre de 1985, que es la que se utiliza actualmente.[1]

El Modelo FTP

En el modelo, el intrprete de protocolo (IP) de usuario


inicia la conexin de control en el puerto 21. Las rdenes
FTP estndar las genera el IP de usuario y se transmiten
al proceso servidor a travs de la conexin de control. Las
respuestas estndar se envan desde la IP del servidor la
IP de usuario por la conexin de control como respuesta
a las rdenes.

2.1 Primer buscador de informacin

Gopher signica 'lanzarse sobre' la informacin. Es un


servicio cuyo objetivo es la localizacin de archivos a
partir de su ttulo. Consiste en un conjunto de mens de
recursos ubicados en diferentes mquinas que estn inEstas rdenes FTP especican parmetros para la cone- tercomunicadas. Cada mquina sirve una rea de inforxin de datos (puerto de datos, modo de transferencia, macin, pero su organizacin interna permite que todas
tipo de representacin y estructura) y la naturaleza de la ellas funcionen como si se tratase de una sola mquina.
1

El usuario navega a travs de estos mens hasta localizar la informacin buscada, y desconoce exactamente de
qu mquina est descargando dicha informacin. Con
la llegada de Internet, los potentes motores de bsqueda
(Google) dejaron el servicio Gopher, y la localizacin de
los servidores FTP dej de ser un problema. En la actualidad, cuando el usuario se descarga un archivo a partir de
un enlace de una pgina web no llega ni a saber que lo est
haciendo desde un servidor FTP. El servicio FTP ha evolucionado a lo largo del tiempo y hoy da es muy utilizado
en Internet, en redes corporativas, Intranets, etc. Soportado por cualquier sistema operativo, existe gran cantidad
de software basado en el protocolo FTP.

CLIENTE FTP

integrado FTP, es ms conable a la hora de conectarse con servidores FTP no annimos utilizar un programa
cliente.

4.1 Acceso annimo


Los servidores FTP annimos ofrecen sus servicios libremente a todos los usuarios, permiten acceder a sus archivos sin necesidad de tener un 'USER ID' o una cuenta de
usuario. Es la manera ms cmoda fuera del servicio web
de permitir que todo el mundo tenga acceso a cierta informacin sin que para ello el administrador de un sistema
tenga que crear una cuenta para cada usuario.

Si un servidor posee servicio 'FTP anonymous solamente con teclear la palabra anonymous, cuando pregunte
3 Servidor FTP
por tu usuario tendrs acceso a ese sistema. No se necesita ninguna contrasea preestablecida, aunque tendrs
Un servidor FTP es un programa especial que se ejecuta
que introducir una slo para ese momento, normalmente
en un equipo servidor normalmente conectado a Interse suele utilizar la direccin de correo electrnico propia.
net (aunque puede estar conectado a otros tipos de redes,
LAN, MAN, etc.). Su funcin es permitir el intercambio Solamente con eso se consigue acceso a los archivos del
FTP, aunque con menos privilegios que un usuario norde datos entre diferentes servidores/ordenadores.
mal. Normalmente solo podrs leer y copiar los archivos
Por lo general, los programas servidores FTP no suelen
que sean pblicos, as indicados por el administrador del
encontrarse en los ordenadores personales, por lo que un
servidor al que nos queramos conectar.
usuario normalmente utilizar el FTP para conectarse remotamente a uno y as intercambiar informacin con l. Normalmente, se utiliza un servidor FTP annimo para
depositar grandes archivos que no tienen utilidad si no son
Las aplicaciones ms comunes de los servidores FTP suetransferidos a la mquina del usuario, como por ejemplo
len ser el alojamiento web, en el que sus clientes utilizan el
programas, y se reservan los servidores de pginas web
servicio para subir sus pginas web y sus archivos corres(HTTP) para almacenar informacin textual destinada a
pondientes; o como servidor de backup (copia de segula lectura en lnea.
ridad) de los archivos importantes que pueda tener una
empresa. Para ello, existen protocolos de comunicacin
FTP para que los datos se transmitan cifrados, como el
4.2 Acceso de usuario
SFTP (Secure File Transfer Protocol).

Cliente FTP

Cuando un navegador no est equipado con la funcin


FTP, o si se quiere cargar archivos en un ordenador remoto, se necesitar utilizar un programa cliente FTP. Un
cliente FTP es un programa que se instala en el ordenador
del usuario, y que emplea el protocolo FTP para conectarse a un servidor FTP y transferir archivos, ya sea para
descargarlos o para subirlos.
Para utilizar un cliente FTP, se necesita conocer el nombre del archivo, el ordenador en que reside (servidor, en
el caso de descarga de archivos), el ordenador al que se
quiere transferir el archivo (en caso de querer subirlo nosotros al servidor), y la carpeta en la que se encuentra.
Algunos clientes de FTP bsicos en modo consola vienen integrados en los sistemas operativos, incluyendo
Microsoft Windows, DOS, GNU/Linux y Unix. Sin embargo, hay disponibles clientes con opciones aadidas e
interfaz grca. Aunque muchos navegadores tienen ya

Si se desea tener privilegios de acceso a cualquier parte


del sistema de archivos del servidor FTP, de modicacin
de archivos existentes, y de posibilidad de subir nuestros
propios archivos, generalmente se suele realizar mediante una cuenta de usuario. En el servidor se guarda la informacin de las distintas cuentas de usuario que pueden
acceder a l, de manera que para iniciar una sesin FTP
debemos introducir una autenticacin (en ingls: login)
y una contrasea (en ingls: password) que nos identica
unvocamente.

4.3 Cliente FTP basado en Web


Un cliente FTP basado en Web no es ms que un cliente
FTP al cual podemos acceder a travs de nuestro navegador web sin necesidad de tener otra aplicacin para ello.
El usuario accede a un servidor web (HTTP) que lista los
contenidos de un servidor FTP. El usuario se conecta mediante HTTP a un servidor web, y el servidor web se conecta mediante FTP al servidor FTP. El servidor web acta de intermediario haciendo pasar la informacin desde

3
el servidor FTP en los puertos 20 y 21 hacia el puerto 80
HTTP que ve el usuario.
Siempre hay momentos en que nos encontramos fuera de
casa, no llevamos el ordenador porttil encima y necesitamos realizar alguna tarea urgente desde un ordenador
de acceso pblico, de un amigo, del trabajo, la universidad, etc. Lo ms comn es que no estn instaladas las
aplicaciones que necesitamos y en muchos casos hasta carecemos de los permisos necesarios para realizar su instalacin. Otras veces estamos detrs de un proxy o cortafuegos que no nos permite acceder a servidores FTP
externos.

Weeble File Manager


FileZilla

5 Modos de conexin del cliente


FTP
FTP admite dos modos de conexin del cliente. Estos modos se denominan activo (o Estndar, o PORT, debido
a que el cliente enva comandos tipo PORT al servidor
por el canal de control al establecer la conexin) y pasivo (o PASV, porque en este caso enva comandos tipo PASV). Tanto en el modo Activo como en el modo
Pasivo, el cliente establece una conexin con el servidor
mediante el puerto 21, que establece el canal de control.

Al disponer de un cliente FTP basado en Web podemos


acceder al servidor FTP remoto como si estuviramos
realizando cualquier otro tipo de navegacin web. A travs de un cliente FTP basado en Web podrs, crear, copiar, renombrar y eliminar archivos y directorios. Cambiar permisos, editar, ver, subir y descargar archivos, as
como cualquier otra funcin del protocolo FTP que el ser- 5.1 Modo activo
vidor FTP remoto permita.
Cliente
Modo
Activo

4.4

Acceso de invitado

El acceso sin restricciones al servidor que proporcionan


las cuentas de usuario implica problemas de seguridad, lo
que ha dado lugar a un tercer tipo de acceso FTP denominado invitado (guest), que se puede contemplar como
una mezcla de los dos anteriores.
La idea de este mecanismo es la siguiente: se trata de permitir que cada usuario conecte a la mquina mediante su
login y su password, pero evitando que tenga acceso a
partes del sistema de archivos que no necesita para realizar su trabajo, de esta forma acceder a un entorno restringido, algo muy similar a lo que sucede en los accesos
annimos, pero con ms privilegios.

Puerto
de datos
1036

Servidor FTP

Puerto de
control
1035

1. Mandar
comando
PORT y el
puerto 1036

Puerto de
control
21
IPClient
e:1035
IPServid
orFTP:21
P:21
idorFT
IPServ e:1035
nt
IPClie

Puerto
de datos
20

2. Enviar comando
ACK
3. Enviar
Datos

0
FTP:2
vidor
36
IPSer
nte:10
IPClie

4. Enviar comando
ACK

IPClient
e:1036
IPServid
orFTP:20

Modo activo.

En modo Activo, el servidor siempre crea el canal de datos en su puerto 20, mientras que en el lado del cliente el
canal de datos se asocia a un puerto aleatorio mayor que
el 1024. Para ello, el cliente manda un comando PORT al
servidor por el canal de control indicndole ese nmero
4.5 Ejemplos de Clientes FTP
de puerto, de manera que el servidor pueda abrirle una
conexin de datos por donde se transferirn los archivos
Entre los varios clientes FTP que existen, se pueden meny los listados, en el puerto especicado.
[2]
cionar los siguientes:
Lo anterior tiene un grave problema de seguridad, y es
que la mquina cliente debe estar dispuesta a aceptar
Free FTP Upload Manager
cualquier conexin de entrada en un puerto superior al
1024, con los problemas que ello implica si tenemos el
F->IT
equipo conectado a una red insegura como Internet. De
net2ftp
hecho, los cortafuegos que se instalen en el equipo para
evitar ataques seguramente rechazarn esas conexiones
Web FTP.co.uk
aleatorias. Para solucionar esto se desarroll el modo pasivo.
Web-Ftp
Jambai FTP
ftp4net
PHP FTP Client
Asuk PHP FTP

5.2 Modo pasivo


Cuando el cliente enva un comando PASV sobre el canal
de control, el servidor FTP le indica por el canal de control, el puerto (mayor a 1023 del servidor. Ejemplo:2040)

Modo
Pasivo

1.Mandar
comando
PASV
3.Iniciar la conexion
de datos desde el
puerto 1036 a un
puerto aleatorio
del servidor

Puerto de
control
21

Puerto de
control
1035
IPClie
nt
IPServ e:1035
idorFT
P:21
P:21
idorFT
IPServ
e:1035
IPClient

Puerto
de datos
2040

Puerto
de datos
20
Este
puerto
no se
utiliza

2. Respuesta del
servidor con un
puerto > 1023

IPClie
nte:10
36
IPServ
idorFT
P:2040

2040

5. Cerrar la conexion

6 Gua de comandos FTP

Servidor FTP

Cliente
Puerto
de datos
1036

CONEXIN A UN SERVIDOR FTP PROTEGIDO DESDE NAVEGADOR

orFTP:
ervid

IPS

4.Enviar
comando
ACK

36
nte:10

IPClie

Modo pasivo.

7 Cdigos de respuesta de FTP


A continuacin se muestra un resumen de la respuesta de
los cdigos FTP que puede ser devuelto por un servidor
FTP. Estos cdigos se han estandarizado en RFC 959 por
IETF. El cdigo de respuesta es un valor de tres dgitos.
El primer dgito se utiliza para indicar una de tres posibles
resultados-el xito, el fracaso o para indicar un error o una
respuesta incompleta:
2yz - respuesta xito

al que debe conectarse el cliente. El cliente inicia una


conexin desde el puerto siguiente al puerto de control
(Ejemplo: 1036) hacia el puerto del servidor especicado anteriormente (Ejemplo: 2040).[3]

4yz o 5yz - No hay respuesta


1yz o 3yz - Un error o una respuesta incompleta

Antes de cada nueva transferencia tanto en el modo Ac- El segundo dgito dene la clase de error:
tivo como en el Pasivo, el cliente debe enviar otra vez un
comando de control (PORT o PASV, segn el modo en el
x0z - Sintaxis. Estas respuestas se reeren a errores
que haya conectado), y el servidor recibir esa conexin
de sintaxis.
de datos en un nuevo puerto aleatorio (si est en modo
pasivo) o por el puerto 20 (si est en modo activo). En el
x1z - Informacin. Las respuestas a las solicitudes
protocolo FTP existen 2 tipos de transferencia en ASCII
de informacin.
y en binarios.
x2z - Conexiones. Respuestas en referencia al control y las conexiones de datos.

5.3

Tipos de transferencia de archivos en


FTP

Es importante conocer cmo debemos transportar un archivo a lo largo de la red. Si no utilizamos las opciones
adecuadas podemos destruir la informacin del archivo.
Por eso, al ejecutar la aplicacin FTP, debemos acordarnos de utilizar uno de estos comandos (o poner la correspondiente opcin en un programa con interfaz grca):
Tipo ASCII
Adecuado para transferir archivos que slo contengan caracteres imprimibles (archivos ASCII, no archivos resultantes de un procesador de texto), por ejemplo pginas
HTML, pero no las imgenes que puedan contener.
Tipo Binario

x3z - Autenticacin y contabilidad. Respuestas para


el proceso de inicio de sesin y los procedimientos
contables.
x4z - No denido.
x5z - Sistema de archivos. Estas respuestas transmiten cdigos de estado del sistema de archivos del
servidor.
El tercer dgito del cdigo de respuesta se utiliza para
proporcionar detalles adicionales para cada una de las categoras denidas por el segundo dgito.[4]

8 Conexin a un servidor FTP protegido desde navegador


Para iniciar sesin en un servidor FTP que requiere una
contrasea teclee la URL de esta forma:

Este tipo es usado cuando se trata de archivos comprimi- ftp://<usuario>:<contrasea>@<servidor


dos, ejecutables para PC, imgenes, archivos de audio... ruta>

ftp>/<url-

Ejemplos de cmo transferir algunos tipos de archivo de- Donde <usuario> es el nombre de usuario, <servidor ftp>
pendiendo de su extensin:
es el servidor FTP, <contrasea> es la contrasea de acEn la red existen diversas soluciones de software que ceso, y <url-ruta> es el directorio donde iniciamos sesin.
desarrolla este tipo de tecnologa, los ms conocidos, son Ejemplo: ftp://alumno:alumnopass@ftp.example.com/
Filezilla (software libre) y CuteFTP (shareware).
public

Vase tambin
Archie
FTPS
TFTP
OFTP
File eXchange Protocol
PTP, Picture Transfer Protocol
MTP, Media Transfer Protocol (una extensin del
PTP)
SSH File Transfer Protocol
Network File System
Sistema de archivos
Sistema de archivos distribuido

10

Referencias

[1] La historia del protocolo FTP (y sus desventajas actuales). Consultado el 26 de junio de 2014.
[2] Micaela. Los mejores 10 clientes FTP. Consultado el
27 de junio de 2014.
[3] Active FTP vs. Passive FTP, a Denitive Explanation
(en ingls).
[4] Forouzan, Behrouz. TCP/IP Protocol Suite. McGraw Hill.

RFC 959: Referencia que dene las caractersticas


actuales, a fecha de febrero de 2007, del protocolo
FTP.
RFC 114: Primera referencia propuesta de FTP del
ao 1971.
TCP/IP Protocol Suite. Fourth Edition. Behrouz A.
Forouzan. McGraw Hill.

11

11
11.1

TEXT AND IMAGE SOURCES, CONTRIBUTORS, AND LICENSES

Text and image sources, contributors, and licenses


Text

File Transfer Protocol Fuente: http://es.wikipedia.org/wiki/File%20Transfer%20Protocol?oldid=82095979 Colaboradores: Youssefsan,


Mac, Youandme, 4lex, Moriel, Sauron, JorgeGG, Robbot, Gauss, Rosarino, Dodo, Jynus, Rsg, Tostadora, Sefer, Barcex, Enric Naval,
Hildergarn, TuringTest, JCCO, Caos, Petronas, Xavmp, Airunp, JMPerez, Rembiapo pohyiete (bot), Drini2, RobotQuistnix, Byj2000,
Superzerocool, Chobot, Caiserbot, Yrbot, BOT-Superzerocool, Adrruiz, FlaBot, YurikBot, Mortadelo2005, Icvav, GermanX, Beto29,
KnightRider, Eloy, JRGL, Santiperez, Eskimbot, Ummowoa, Isra00, Morza, Maldoror, Er Komandante, Ciencia Al Poder, Lancaster,
Ketamino, Jarke, BOTpolicia, CEM-bot, Damifb, Alexav8, Antur, Jjafjjaf, Dorieo, Montgomery, Thijs!bot, Dajuam, Papouten, RoyFocker, JoaquinFerrero, Isha, Hanjin, Mpeinadopa, JAnDbot, Jugones55, .roman.., Mansoncc, Death Master, Muro de Aguas, Jorge Estrada,
TXiKiBoT, Aalvarez12, JoseA, Gacq, Netito777, NaSz, Plux, Galaxy4, Jmvkrecords, Delphidius, AlnoktaBOT, Cinevoro, Aibot, VolkovBot, Snakeyes, Technopat, Galandil, Queninosta, Oscarxs.ULE, Carlostorres01, Matdrodes, Synthebot, BlackBeast, Shooke, AlleborgoBot,
Proton.72, Muro Bot, Feministo, Dinopmi, BotMultichill, SieBot, Cobalttempest, Teyer, Macarse, Greek, Fadesga, Tirithel, XalD, Jarisleif,
Javierito92, HUB, Bienacass, Dggionco, Sol felipe, Botelln, Alejandrocaro35, Pablo323, LordT, BetoCG, Jperelli, Nepenthes, Ravave,
SilvonenBot, AVBOT, MastiBot, Angel GN, EivindBot, Diegusjaimes, Bethan 182, CarsracBot, Andreasmperu, Luckas-bot, Dangelin5,
Nixn, ArthurBot, Jllopezpino, Xusete18, SuperBraulio13, Manuelt15, Xqbot, Jkbw, SassoBot, Rubinbot, Leandro.ditommaso, Teruillo,
Igna, Botarel, Sony 3220, BenzolBot, Auxctionsmx, Panderine!, BOTirithel, Hprmedina, TobeBot, Caritdf, Kizar, Leugim1972, PatruBOT,
Dinamik-bot, Goica, Aldorhoe, Mathonius, Alstur, GrouchoBot, EmausBot, Savh, HRoestBot, J. A. Glvez, Grillitus, KLBot, ChuispastonBot, MadriCR, Albertojuanse, Michellelopez477, MerlIwBot, Ninrouter, Orleons17, Santga, ELOTSO, Makecat-bot, Syum90, JessicaZurik, Legobot, Josefrodo, Edgar arevalos, Churrasco italiano, JacobRodrigues, Lezotho, BenjaBot, MatiasKnell y Annimos: 353

11.2

Images

Archivo:Activo.svg Fuente: http://upload.wikimedia.org/wikipedia/commons/9/90/Activo.svg Licencia: CC BY-SA 3.0 Colaboradores:


Trabajo propio Artista original: Gabiwxp
Archivo:Modelo_ftp.jpg Fuente: http://upload.wikimedia.org/wikipedia/commons/c/c5/Modelo_ftp.jpg Licencia: Public domain Colaboradores: ? Artista original: ?
Archivo:Pasivo.svg Fuente: http://upload.wikimedia.org/wikipedia/commons/6/65/Pasivo.svg Licencia: CC BY-SA 3.0 Colaboradores:
Trabajo propio Artista original: Gabiwxp

11.3

Content license

Creative Commons Attribution-Share Alike 3.0

S-ar putea să vă placă și