Instalación y Administración de Servicios de Transferencias de

Anuncio
SERVICIOS DE RED
E INTERNET
Autor: Miguel Ángel García Felipe
IES GREGORIO PRIETO
Servicios de Transferencia de Ficheros
SERVICIOS DE RED E
INTERNET
SERVICIOS DE TRANSFERENCIA DE FICHEROS
ÍNDICE
1. Funcionalidad del servicio de transferencia de archivos.
- Características. Componentes y funcionamiento.
- Protocolo FTP.
- Tipos de usuarios y accesos al servicio: Acceso anónimo y acceso autorizado.
- Configuración del servicio de transferencia de archivos. Permisos y cuotas.
- Conexiones y modos: Conexión de control y conexión de datos. Modos activo
y pasivo.
- Tipos de transferencia de archivos: ASCII y Binario.
- Clientes FTP: en línea de comandos, entornos “gráficos” y navegadores /
exploradores.
- Monitorización y registro del servicio de transferencia de archivos.
- Seguridad en FTP.
- FTPS (FTP/SSL): FTPS Implícito. FTPS Explícito (FTPES)
- Protocolo FXP (File eXchange Protocol).
2. Servicio TFTP (Trivial File Transfer Protocol).
3. Servicios SFTP/SCP.
4. Transferencia o distribución de archivos entre iguales (peer-to-peer).
- Características. Protocolos. Software. Configuración.
2
SERVICIOS DE RED E
SERVICIOS DE TRANSFERENCIA DE FICHEROS INTERNET
1. Funcionalidad del servicio de transferencia de archivos.
- Características. Componentes y funcionamiento.
Es una utilidad que permite la copia de un archivo desde un ordenador a otro a través
de una red de computadoras. El servicio más usado para realizar este movimiento es el
FTP (File Transfer Protocol), el cual consiste en un programa FTP alojado en un servidor
-llamado FTP daemon- el cual se encarga de gestionar las transacciones que solicita el
cliente. Los movimientos que podemos realizar a la hora de transferir archivos de un
equipo a otro son: "download" (bajada de archivos de Internet), "upload" (subida de
archivos a Internet), o intercambio de objetos entre dos o más usuarios. Las redes P2P
se crearon posteriormente. Se trata de un software mediante el cual se podían
compartir archivos entre distintas computadoras en cualquier parte del mundo, sin
necesidad de acceder a un servidor central. Actualmente, es el método de intercambio
de archivos más utilizado, el cual fomentó el nacimiento de polémicos programas
como Napster o Emule.
- Protocolo FTP.
FTP (siglas en inglés de File Transfer Protocol, 'Protocolo de Transferencia de Archivos')
en informática, 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 aplicación del modelo de capas de red TCP/IP
al usuario, utilizando normalmente el puerto de red 20 y el 21. Un problema básico de
FTP es que está pensado para ofrecer
la máxima velocidad en la conexión,
pero no la máxima seguridad, ya que
todo el intercambio de información,
desde el login y password del usuario
en el servidor hasta la transferencia
de cualquier archivo, se realiza en
texto plano sin ningún tipo de cifrado,
con lo que un posible atacante puede
capturar este tráfico, acceder al
servidor y/o apropiarse de los
archivos transferidos.
Para solucionar este problema son de gran utilidad aplicaciones como scp y sftp,
incluidas en el paquete SSH, que permiten transferir archivos pero cifrando todo el
tráfico.
3
SERVICIOS DE RED E
INTERNET
SERVICIOS DE TRANSFERENCIA DE FICHEROS
- Tipos de usuarios y accesos al servicio: Acceso anónimo y acceso
autorizado.
Acceso anónimo
Los servidores FTP anónimos 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 más cómoda fuera del servicio web de permitir que todo el
mundo tenga acceso a cierta información 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 por tu usuario tendrás acceso a ese sistema. No se
necesita ninguna contraseña preestablecida, aunque tendrás que introducir una sólo
para ese momento, normalmente se suele utilizar la dirección de correo electrónico
propia.
Solamente con eso se consigue acceso a los archivos del FTP, aunque con menos
privilegios que un usuario normal. Normalmente solo podrás leer y copiar los archivos
que sean públicos, así indicados por el administrador del servidor al que nos queramos
conectar.
Normalmente, se utiliza un servidor FTP anónimo para depositar grandes archivos que
no tienen utilidad si no son transferidos a la máquina del usuario, como por ejemplo
programas, y se reservan los servidores de páginas web (HTTP) para almacenar
información textual destinada a la lectura en línea.
Acceso autorizado
Si se desea tener privilegios de acceso a cualquier parte del sistema de archivos del
servidor FTP, de modificación 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 información de las distintas cuentas de usuario que pueden
acceder a él, de manera que para iniciar una sesión FTP debemos introducir una
4
SERVICIOS DE RED E
SERVICIOS DE TRANSFERENCIA DE FICHEROS INTERNET
autentificación (en inglés: login) y una contraseña (en inglés: password) que nos
identifica unívocamente.
- Configuración del servicio de transferencia de archivos. Permisos y
cuotas.
El protocolo FTP se desarrolló en entornos de tipo UNIX similares a los populares
GNU/Linux.
Por eso tenemos los permisos de ejecución, lectura y escritura, estableciendose tres
tipos de usuarios:



Propietario: Es normalmente la persona que ha creado o que ha subido el
archivo al servidor FTP.
Grupo: Se refiere a un grupo de usuarios al que probablemente pertenece el
propietario.
Otros: Son todos los demás usuarios anónimos o que no pertenecen al grupo
indicado.
Para establecer los permisos de escritura existe un algoritmo, el cual asigna valores al
tipo de acceso que se quiere otorgar a cada tipo de usuario.



4=lectura
2= escritura
1= ejecución
Los permisos se asignan acorde con la suma de los tipos ya descritos. Por ejemplo:




6 (4+2) = lectura y escritura
5 (4+1) = lectura y ejecución
3 (2+1) = escritura y ejecución
7 (4+2+1) = lectura, escritura y ejecución
Las combinaciones se dan en el siguiente orden: propietario, grupo y usuarios.
Por ejemplo: 755, otorga lectura, escritura y ejecución al propietario, y al grupo y otros
le otorga los permisos de ejecución y lectura.
- Conexiones y modos: Conexión de control y conexión de datos. Modos
activo y pasivo.
5
SERVICIOS DE RED E
INTERNET
SERVICIOS DE TRANSFERENCIA DE FICHEROS
FTP admite dos modos de conexión del cliente. Estos modos se denominan activo (o
Estándar, o PORT, debido a que el cliente envía comandos tipo PORT al servidor por el
canal de control al establecer la conexión) y pasivo (o PASV, porque en este caso envía
comandos tipo PASV). Tanto en el modo Activo como en el modo Pasivo, el cliente
establece una conexión con el servidor mediante el puerto 21, que establece el canal
de control.
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 indicándole ese número de puerto, de manera que el servidor pueda abrirle
una conexión de datos por donde se transferirán los archivos y los listados, en el
puerto especificado.
Lo anterior tiene un grave problema de seguridad, y es que la máquina cliente debe
estar dispuesta a aceptar cualquier conexión de entrada en un puerto superior al 1024,
con los problemas que ello implica si tenemos el equipo conectado a una red insegura
como Internet. De hecho, los cortafuegos que se instalen en el equipo para evitar
ataques seguramente rechazarán esas conexiones aleatorias. Para solucionar esto se
desarrolló el modo pasivo.
Modo pasivo
6
SERVICIOS DE RED E
SERVICIOS DE TRANSFERENCIA DE FICHEROS INTERNET
Modo pasivo.
Cuando el cliente envía 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. Ej: 2040) al que
debe conectarse el cliente. El cliente inicia una conexión desde el puerto siguiente al
puerto de control (ej: 1036) hacia el puerto del servidor especificado anteriormente
(ej: 2040).
Antes de cada nueva transferencia tanto en el modo Activo como en el Pasivo, el
cliente debe enviar otra vez un comando de control (PORT o PASV, según el modo en
el que haya conectado), y el servidor recibirá esa conexión de datos en un nuevo
puerto aleatorio (si está en modo pasivo) o por el puerto 20 (si está en modo activo).
En el protocolo FTP existen 5 tipos de transferencia en ASCII y en binarios.
- Tipos de transferencia de archivos: ASCII y Binario.
Es importante conocer cómo debemos transportar un archivo a lo largo de la red. Si no
utilizamos las opciones adecuadas podemos destruir la información del archivo. Por
eso, al ejecutar la aplicación FTP, debemos acordarnos de utilizar uno de estos
comandos (o poner la correspondiente opción en un programa con interfaz gráfica):

tipo ascii
Adecuado para transferir archivos que sólo contengan caracteres imprimibles (archivos
ASCII, no archivos resultantes de un procesador de texto), por ejemplo páginas HTML,
pero no las imágenes que puedan contener.

tipo binario
7
SERVICIOS DE RED E
INTERNET
SERVICIOS DE TRANSFERENCIA DE FICHEROS
Este tipo es usado cuando se trata de archivos comprimidos, ejecutables para PC,
imágenes, archivos de audio...
Ejemplos de cómo transferir algunos tipos de archivo dependiendo de su extensión:
En la red existen diversas soluciones de software que desarrolla este tipo de
tecnología, los más conocidos, son Filezilla (software libre) y CuteFTP (shareware).
- Clientes FTP: en línea de comandos, entornos “gráficos” y navegadores
/ exploradores.
Un cliente FTP emplea el protocolo FTP para conectarse a un servidor FTP para
transferir archivos.
Algunos clientes de FTP básicos vienen integrados en los sistemas operativos,
incluyendo Windows, DOS, Linux y Unix. Sin embargo, hay disponibles clientes con más
funcionalidades, habitualmente en forma de shareware/freeware para Windows y
como software libre para sistemas de tipo Unix. Muchos navegadores recientes
también llevan integrados clientes FTP (aunque un cliente FTP trabajará mejor para
FTP privadas que un navegador).
Algunos sistemas operativos, incluyendo los Windows más recientes y Mac OS X
pueden montar servidores FTP como unidades virtuales directamente dentro del
sistema operativo, como puede ser fireftp para firefox, pues es un plugin que se puede
8
SERVICIOS DE RED E
SERVICIOS DE TRANSFERENCIA DE FICHEROS INTERNET
añadir al navegador, solo si se necesita. Lo que puede resultar más fácil o más
conveniente para algunos usuarios, que emplear un cliente especializado.
Core FTP Lite
Core FTP Lite es un cliente FTP de Windows que soporta la carga / descarga / borrado
de directorios (carpetas) y archivos, navegador de integración, SFTP (o FTP seguro), SSL
/ TLS, el manejo de permisos de archivos, control de ancho de banda de transferencia,
etc.
FileZilla código abierto cliente FTP / SFTP
FileZilla es una fuente libre, abierta de cliente FTP para Windows, Linux y Mac OS X se
distribuye bajo la Licencia Pública General de GNU. Usted puede hacer lo de siempre,
cargar y descargar archivos, así como reanudar cargas y descargas, funciona con
servidores de seguridad, compatible con SFTP (Secure FTP) y conexiones seguras SSL,
manejar las colas de archivos a subir / descargar, etc.
OneButton FTP
OneButton FTP es un cliente gráfico de FTP para Mac OS X utilizando el marco del
Cacao. Según el sitio web, soporta arrastrar y soltar archivos y las colas. Se necesita
Mac OS X 10.4 o posterior.
Curl
Curl es una herramienta de línea de comandos que le permite transferir archivos a
través de FTP, SFTP, TFTP, FTPS, Telnet, DICT, FILE y LDAP, etc También puede utilizar
los protocolos HTTP y HTTPS GET y PUT métodos para cargar y descargar archivos. Es
compatible con servidores proxy SSL, cookies, y la autenticación de usuario /
contraseña. La herramienta es de código abierto y compatible con Mac OS X,
Windows, Linux, AIX, AmigaOS, BeOS, DOS, FreeBSD, NetBSD, FreeBSD, BSD, BSD
9
SERVICIOS DE RED E
INTERNET
SERVICIOS DE TRANSFERENCIA DE FICHEROS
medianoche, OpenBSD, menta, GNU-Darwin, HPUX, IRIX, Netware, Open Server, OS /
2, QNX, RISC OS, Solaris, Syllable, Tru64 Unix, UnixWare, VMS, etc El programa se
distribuye bajo una licencia de código abierto.
Cyberduck
Cyberduck es un FTP de código abierto y el navegador de SFTP para Mac OS X. Soporta
arrastrar y soltar, reanudar las cargas y descargas, la sincronización de archivos en un
equipo local con un servidor, carga y descarga de carpetas, etc está licenciado bajo la
GNU GPL.
Fugu - Mac OS X SFTP / SCP / SSH FrontEnd
Fugu es una interfaz de código abierto para SFTP (Secure FTP), SCP y SSH. Es liberado
bajo la licencia BSD, y es compatible con Mac OS X.
Net Transport
Net Transport es un gestor de descargas para Windows compatibles con múltiples
flujos de carga a través de HTTP, HTTPS, FTP, MMS (Microsoft Media Services), RTSP
(Real-Time Streaming Protocol) y PNM. Usted puede realizar la descarga por lotes,
categorizar sus archivos de descarga, el trabajo a través de múltiples proxies,
programar tus descargas, limitar la velocidad de descarga, etc Hay archivos de idioma
para numerosos idiomas.
PuTTy: Win32 SSH / FTP seguro (SFTP) cliente
PuTTY es un conjunto de programas libre de código abierto. Incluye un cliente de
Secure Shell (SSH), un cliente de SCP (Secure Copy), una línea de comandos segura
cliente FTP (SFTP), un cliente de Telnet, etc
NcFTP
NcFTP es una es un cliente FTP gratuito en la línea de comandos para Linux, Windows,
Mac OS X, y un gran número de sistemas Unix y tipo. Viene con código fuente.
Cliente FTP Commander
Al igual que otros clientes de FTP, FTP Commander puede cargar o descargar archivos,
crear y borrar directorios, renombrar archivos, activar descargas múltiples, y mantener
un registro de la sesión. Se trata de un programa de Windows.
i.FTP
i.FTP es un cliente FTP de Windows que viene con código fuente. También hay una
versión anterior de BeOS.
10
SERVICIOS DE RED E
SERVICIOS DE TRANSFERENCIA DE FICHEROS INTERNET
Star Downloader
Star Downloader maneja FTP y descargas HTTP, puede reanudar descargas
interrumpidas, contiene una instalación de descomprimir integrado, soporta
servidores proxy, tiene la capacidad de dividir un archivo en varias partes y
descargarlos todos al mismo tiempo (en teoría le ahorra tiempo de descarga), se
integra con los navegadores (para ser gerente de tu navegador Web de descargas por
defecto), maneja varios idiomas, incluye un planificador, la integración con el software
antivirus, incluye un visor de texto, etc Tenga en cuenta que, como su nombre indica,
Star Downloader no es un gestor de descargas FTP completos hecho y derecho cliente,
así que si estás buscando una herramienta para cargar su sitio, esto probablemente no
es la herramienta correcta.
AceFTP Freeware
Esta es una versión gratuita del cliente AceFTP comerciales. Tiene las características
habituales de FTP que permite subir y descargar archivos y gestionar su sitio web.
A veces no tenemos instalado o a mano un programa para subir archivos por FTP. O
simplemente preferimos no recurrir a un programa cliente cuando podemos usar el
mismo navegador.
Efectivamente, los navegadores pueden establecer conexiones mediante el protocolo
FTP además del protocolo HTTP que emplean habitualmente para requerir páginas
web. Basta teclear en la barra de navegación la dirección
ftp://usuario@servidor
(Donde usuario es por supuesto el login o nombre de usuario con el que accedes al
servidor, y servidor es la dirección del servidor al que quieres acceder) Se abrirá una
ventana solicitando la contraseña, si es necesaria, y ya está.
Una vez dentro del sitio, puedes navegar por su árbol de directorios y hacer las
operaciones típicas: subir, bajar, eliminar, copiar…
11
SERVICIOS DE RED E
INTERNET
SERVICIOS DE TRANSFERENCIA DE FICHEROS
- Monitorización y registro del servicio de transferencia de archivos.
Para saber quién está conectado a su servidor vía FTP, en qué directorios se
encuentran y qué archivos están cargando o descargando del servidor:
1. Vaya a Herramientas y utilidades > Sesiones Activas.
2. Haga clic en la pestaña Sesiones FTP. Se mostrarán todas las sesiones, incluida la
suya, así como los siguientes detalles:










Estado. Estado actual de la conexión FTP.
Nombre de usuario FTP. Nombre de usuario usado para acceder a la cuenta
FTP.
Nombre de dominio. Dominio en el que el usuario FTP está conectado.
Ubicación actual. Directorio donde se encuentra el usuario FTP.
Nombre del Archivo. El nombre de archivo con el que se opera.
Velocidad. Velocidad de transferencias en kilo bites.
Progreso, %. Progreso de la operación de transferencia de archivo en
porcentaje.
Dirección IP. Dirección IP desde la que se accede a la cuenta FTP.
Hora de acceso. Tiempo transcurrido desde que el usuario se conectó.
Tiempo de inactividad. Tiempo en que el usuario no estaba realizando ninguna
acción en el panel de control aún y estando conectado.
3. Para actualizar la lista de sesiones FTP haga clic en Actualizar
4. Para finalizar la sesión marque la casilla respectiva y haga clic en Eliminar.
- Seguridad en FTP.
El mayor problema con el FTP es que el servidor sólo puede manejar nombres de
usuario y contraseñas en texto plano. Esta es una de las razones por las que la cuenta
de root no se puede utilizar para el acceso FTP en la mayoría de los servidores. Lo
mismo se aplica para telnet.
Por estas razones, hay varias alternativas incluyendo FTP seguro (SFTP), que a pesar
del nombre es muy diferente de FTP. SFTP se aplica el cifrado de los mensajes entre el
cliente y el servidor.
12
SERVICIOS DE RED E
SERVICIOS DE TRANSFERENCIA DE FICHEROS INTERNET
También hay otra alternativa FTPS. Podemos pensar que FTP es a FTPS lo que HTTPS a
HTTP.
Los nombres de usuario y las contraseñas no son las únicas cosas que se envían a
través de un texto claro. Los mismos archivos se cargan o descargan sin ningún tipo de
cifrado.
Problemas de seguridad en el FTP
El comando PORT
En los últimos años, se ha incrementado el debate en torno a los problemas
relacionados con el comando PORT del protocolo del FTP. Estos problemas se basan el
uso erróneo de dicho comando.
El Protocolo FTP
Para entender estos ataques, es necesario tener una comprensión básica del protocolo
FTP, para ello recordaremos su funcionamiento:
Un cliente abre una conexión al puerto de control de ftp (21) de un FTP SERVER. De
este modo, para que el servidor sea capaz luego de enviar datos de nuevo a la máquina
del cliente, una segunda conexión (de datos) debe abrirse entre el servidor y el cliente.



Para hacer esta segunda conexión, el cliente envía un comando PORT al
servidor.
Este comando incluye parámetros que indican al servidor cuál IP ADDRESS
conectar y qué puerto abrir en aquella dirección.
El servidor luego abre aquella conexión, siendo la fuente de la conexión el
puerto 20 del servidor y el destino el puerto identificado en los parámetros del
comando PORT.
13
SERVICIOS DE RED E
INTERNET
SERVICIOS DE TRANSFERENCIA DE FICHEROS
El comando PORT se utiliza generalmente sólo en el " modo activo " del ftp (por
default). No se suele utilizar en modo pasivo (PASV). Debe notarse que los servidores
de ftp generalmente implementan ambos modos en ejecución, y el cliente especifica
qué método utilizar.
El ataque “Ftp bounce”
Conforme con el protocolo FTP, el comando PORT hace que la máquina que lo origina
especifique una máquina de destino y un puerto arbitrarios para la conexión de datos.
Sin embargo, esto también significa que un hacker puede abrir una conexión a un
puerto del hacker eligiendo una máquina que puede no ser el cliente original.
Hacer esta conexión a una máquina arbitraria es hacer un ataque “ftp bounce”. Se
presentan seguidamente varios ejemplos de cómo los hackers pueden utilizar el “ftp
bounce”.
“Scanning” de puertos
Un hacker que desea realizar una port scan contra un sitio puede hacerlo de un server
FTP de un tercero, que actúa como un “puente” para el scan. El sitio de la víctima ve la
exploración como procedente del server FTP más que de la fuente verdadera (el
cliente FTP).
“Bypass” de dispositivos básicos de filtrado de paquetes.
Un hacker puede realizar un “bypass” de un firewall en ciertas configuraciones de red.
Por ejemplo, supongamos que un sitio tiene su servidor de FTP anónimo detrás del
firewall. Usando la técnica de escaneo de puertos, un hacker determina que un web
server interno en ese sitio está disponible en el acceso 8080, un puerto normalmente
bloqueado por un firewall.
Conectándose al server FTP público del sitio, el hacker inicia otra conexión entre el
server FTP y un puerto arbitrario, en una máquina no pública del sitio (por ejemplo el
web server interno en el puerto 8080). Como resultado, el hacker establece una
conexión a una máquina que sería protegida de otra manera por el firewall.
Bypass de dispositivos de filtrado dinámicos
Otro problema se refiere a los sitios que tienen firewalls que utilizan filtros dinámicos
para protegerse. Los sitios están abiertos al ataque porque el firewall confía en la
información que recibe.
Como el firewall de filtros dinámicos examina los paquetes de salida para determinar si
alguna acción se requiere de su parte, observa el comando PORT y permite una
conexión entrante del server web remoto al port del telnet en la máquina de la
14
SERVICIOS DE RED E
SERVICIOS DE TRANSFERENCIA DE FICHEROS INTERNET
víctima. Esta conexión normalmente no es permitida por el firewall; fue permitida en
este caso porque el comando PORT fue realizado por el cliente.
Soluciones
Software del Ftp server
La mejor solución al problema del “ftp bounce” desde la perspectiva de la seguridad es
asegurarse de que el software del server FTP no puede establecer conexiones a
máquinas arbitrarias.
- FTPS (FTP/SSL): FTPS Implícito. FTPS Explícito (FTPES)
FTPS (comúnmente referido como FTP/SSL) es un nombre usado para abarcar un
número de formas en las cuales el software FTP puede realizar transferencias de
ficheros seguras. Cada forma conlleva el uso de una capa SSL/TLS debajo del protocolo
estándar FTP para cifrar los canales de control y/o datos. No debería confundirse con
el protocolo de transferencia de ficheros SFTP, el cual suele ser usado con SSH. El uso
más común de FTP y SSL es:

AUTH TLS o FTPS Explicito, nombrado por el comando emitido para indicar que
la seguridad TLS es obligatoria. Este es el método preferido de acuerdo al RFC
que define FTP sobre TLS. El cliente se conecta al puerto 21 del servidor y
comienza una sesión FTP sin cifrar de manera tradicional, pero pide que la
seguridad TLS sea usada y realiza la negociación apropiada antes de enviar
cualquier dato sensible.

AUTH como está definido en RFC 2228.

FTPS Implícito es un estilo antiguo, pero todavía ampliamente implementado
en el cual el cliente se conecta a un puerto distinto (como por ejemplo 990), y
se realiza una negociación SSL antes de que se envíe cualquier comando FTP.
15
SERVICIOS DE RED E
INTERNET
SERVICIOS DE TRANSFERENCIA DE FICHEROS
- Protocolo FXP (File eXchange Protocol).
File eXchange Protocol (FXP) es un método de transferencia de datos, a través del cual
los datos se envían de un servidor FTP a otro sin pasar por un cliente intermedio. La
comunicación convencional FTP consiste en un solo servidor y un solo cliente. Toda la
transferencia de datos se realiza entre los dos. Durante una sesión FXP, un cliente
mantiene conexiones estándares con dos servidores, dirigiendo cualquiera de los dos
servidores que se conecte al otro para iniciar una transferencia de datos. Este método
permite a un cliente con poco ancho de banda intercambiar datos entre dos servidores
con más ancho de banda sin el retraso asociado con la comunicación convencional FTP.
A lo largo de este proceso, sólo el cliente es capaz de acceder a los recursos de los dos
servidores.
Riesgos Sin embargo, algunos de los servidores que soportan el FXP son vulnerables a
un exploit conocido como el ataque FTP Bounce, por el cual un usuario malicioso
puede superar algunos cortafuegos. FXP a través de SSL Algunos servidores FTP como
glFTPD, RaidenFTPd y wzdftpd soportan la negociación de un canal de dato seguro
entre dos servidores mediante cualquiera de las dos órdenes de extensión del
protocolo FTP: CPSV o SSCN. Normalmente, un cliente realiza esto enviando CPSV en
lugar de la orden PASV (modo pasivo), o enviando SSCN antes de iniciar las
transferencias pasivas. No obstante, ambos métodos aún son susceptibles a los
ataques Man-in-the-middle, pues los dos servidores FTP no comprueban sus
respectivos certificados SSL.
2. Servicio TFTP (Trivial File Transfer Protocol).
TFTP son las siglas de Trivial file transfer Protocol (Protocolo de transferencia de
archivos trivial).
Es un protocolo de transferencia muy simple semejante a una versión básica de FTP.
TFTP a menudo se utiliza para transferir pequeños archivos entre ordenadores en una
red, como cuando un terminal X Window o cualquier otro cliente ligero arrancan desde
un servidor de red.
16
SERVICIOS DE RED E
SERVICIOS DE TRANSFERENCIA DE FICHEROS INTERNET
Algunos detalles del TFTP:





Utiliza UDP (en el puerto 69) como protocolo de transporte (a diferencia de FTP
que utiliza el puerto 21 TCP).
No puede listar el contenido de los directorios.
No existen mecanismos de autenticación o cifrado.
Se utiliza para leer o escribir archivos de un servidor remoto.
Soporta tres modos diferentes de transferencia, "netascii", "octet" y "mail", de
los que los dos primeros corresponden a los modos "ascii" e "imagen" (binario)
del protocolo FTP.
Ya que TFTP utiliza UDP, no hay una definición formal de sesión, cliente y servidor,
aunque se considera servidor a aquel que abre el puerto 69 en modo UDP, y cliente a
quien se conecta.
Sin embargo, cada archivo transferido vía TFTP constituye un intercambio
independiente de paquetes, y existe una relación cliente-servidor informal entre la
máquina que inicia la comunicación y la que responde.

La máquina A, que inicia la comunicación, envía un paquete RRQ (read
request/petición de lectura) o WRQ (write request/petición de escritura) a la
máquina B, conteniendo el nombre del archivo y el modo de transferencia.

B responde con un paquete ACK (acknowledgement/confirmación), que
también sirve para informar a A del puerto de la máquina B al que tendrá que
enviar los paquetes restantes.

La máquina origen envía paquetes de datos numerados a la máquina destino,
todos excepto el último conteniendo 512 bytes de datos. La máquina destino
responde con paquetes ACK numerados para todos los paquetes de datos.

El paquete de datos final debe contener menos de 512 bytes de datos para
indicar que es el último. Si el tamaño del archivo transferido es un múltiplo
exacto de 512 bytes, el origen envía un paquete final que contiene 0 bytes de
datos.
3. Servicios SFTP/SCP.
SSH File Transfer Protocol (también conocido como SFTP o Secure File Transfer
Protocol) es un protocolo del nivel de aplicación que proporciona la funcionalidad
necesaria para la transferencia y manipulación de archivos sobre un flujo de datos
fiable. Se utiliza comúnmente con SSH para proporcionar la seguridad a los datos,
aunque permite ser usado con otros protocolos de seguridad. Por lo tanto, la
17
SERVICIOS DE RED E
INTERNET
SERVICIOS DE TRANSFERENCIA DE FICHEROS
seguridad no la provee directamente el protocolo SFTP, sino SSH o el protocolo que
sea utilizado en su caso para este cometido.
Protocolo SCP El protocolo SCP es básicamente idéntico al protocolo rcp de BSD. A
diferencia de rcp, los datos son cifrados durante su transferencia, para evitar que
potenciales packet sniffers extraigan información útil de los paquetes de datos. Sin
embargo, el protocolo mismo no provee autenticación y seguridad; sino que espera
que el protocolo subyacente, SSH, lo asegure.
El modo SCP o simple communication protocol, es un protocolo simple que deja al
servidor y al cliente tener múltiples conversaciones sobre una TCP normal. Este
protocolo está diseñado para ser simple de implementar.
El servicio principal de este protocolo es el control del dialogo entre el servidor y el
cliente, administrando sus conversaciones y agilizadas en un alto porcentaje, este
protocolo le permite a cualquiera de los dos establecer una sesión virtual sobre la
normal. La descripción de un formato de comunicación en las cabeceras enviadas por
la red es la siguiente:
SCP puede solicitar de manera iterativa cualquier contraseña para establecer una
conexión con un host remoto. El protocolo SCP implemente la transferencia de
archivos únicamente. Para ello se conecta al host usando SSH y allí ejecuta un servidor
SCP. Generalmente el programa SCP del servidor es el mismo que el del cliente. Para
realizar la subida, el cliente le proporciona al servidor los archivos que desea subir y
opcionalmente puede incluir otros atributos (permisos, fechas, etc.) Esto es una
ventaja sobre el protocoloFTP. Para descargar, el cliente envía una solicitud por los
archivos que desea descargar. El proceso de descarga está dirigido por el servidor y es
el que se encarga de la seguridad del mismo. Frecuentemente, para los usos aquí
detallados se utiliza el protocolo SFTP, también basado en SSH.
En comparación de capacidades con el anterior protocolo SCP, que únicamente
permite la transferencia de archivos (copia), el protocolo SFTP permite una serie de
operaciones sobre archivos remotos. SFTP intenta ser más independiente de la
plataforma que SCP, por ejemplo, con el SCP encontramos la expansión de comodines
especificados por el cliente hasta el servidor, mientras que el diseño SFTP evita este
problema.
Aunque SCP se aplica con más frecuencia en plataformas Unix, existen servidores SFTP
en la mayoría de las plataformas. El Secure Internet Live Conferencing (SILC) define el
protocolo SFTP como su protocolo de transferencia de archivos por omisión. En el SILC,
los datos del protocolo SFTP no están protegidos con SSH pero el protocolo de
paquetes seguros de SILC se utiliza para encapsular los datos SFTP dentro de los
paquetes de SILC para que se la llevara de igual a igual (peer to peer, P2P). Esto es
posible ya que SFTP está diseñado para ser un protocolo independiente.
SFTP utiliza el puerto 22 de TCP.
4. Transferencia o distribución de archivos entre iguales
(peer-to-peer).
18
SERVICIOS DE RED E
SERVICIOS DE TRANSFERENCIA DE FICHEROS INTERNET
La principal idea de la arquitectura Peer-to-Peer
(Par a par, P2P) es determinar la base y reglas
necesarias para compartir recursos en un
esquema donde las entidades participantes sean
iguales.
En la elección de los pares y el intercambio de
archivos debe existir una herramienta que
trabaje en un entorno distribuido y provea la
característica y transparencia necesaria para el
desarrollo de aplicaciones escalables; la
arquitectura CORBA provee esta herramienta a
través del componente negociador.
- Características. Protocolos. Software. Configuración.
A diferencia de la arquitectura cliente-servidor, la arquitectura peer-to-peer destaca
por su disminuida dependencia con el servidor central y su control descentralizado.
Algunas arquitecturas peer-to-peer no requieren servidores; los usuarios pueden
establecer conexiones directas con otros usuarios sin la necesidad de pasar por un
servidor. Los usuarios no están limitados por las reglas convencionales a seguir que
definen los servidores, como en la arquitectura cliente-servidor. En las arquitecturas
peer-to-peer que utilizan un servidor, la función de éste es mínima porque sólo se
limita a proporcionar una lista de usuarios conectados a la red.
En los años 90, la arquitectura cliente-servidor estaba en el tope de su rendimiento;
logró renombre por que promovió el régimen de monopolio de los exportadores de
datos alrededor del mundo, ofreciendo además la seguridad de firewalls para los
usuarios. Sin embargo, en 1999 Napster desafía la arquitectura cliente-servidor.
Napster, una aplicación basada en la arquitectura peer-to-peer, da un mayor avance
en la imaginación del intercambio de archivos entre usuarios. Con su aplicación para el
intercambio de archivos MP3, Napster da un nuevo alcance y dimensión de la red
(Internet) y optimiza su escalabilidad.
Peer-to-peer rompe los límites de una red en términos de los recursos compartidos y
los costos incurridos en los servidores. Comparado con la arquitectura cliente-servidor,
la arquitectura peer-to- peer es una mejor alternativa, siendo más flexible y escalable
Las siguientes aplicaciones peer-to-peer son escogidas por representar la raíz y base
fundamental en términos de concepto utilizadas por otras aplicaciones posteriores.
Napster
19
SERVICIOS DE RED E
INTERNET
SERVICIOS DE TRANSFERENCIA DE FICHEROS
Napster realiza el registro del usuario al servidor central por medio de la conexión a
Internet del usuario, el servidor central guarda un índice de todos los archivos (MP3)
de todos los usuarios en línea que están registrados con el servidor. El directorio que
contiene los archivos que se va a compartir es leído en contenido cada vez que nos
registramos en el servidor de Napster.
Cuando se envía una petición (búsqueda) para una canción en particular, el servidor de
Napster busca la canción en los índices que tiene de los archivos compartidos por los
usuarios que están en línea y registrados en el servidor. Posteriormente, el servidor
devuelve una lista de los usuarios que están actualmente conectados y que contengan
(compartan) la canción que se solicitó; entonces se puede escoger alguno de los
elementos de la lista y establecer una conexión directa de transferencia con el otro
usuario.
La función del servidor Napster es de realizar la búsqueda de los archivos y proveer
información del otro usuario, posteriormente se establece una conexión directa de
transferencia de archivos entre los dos pares y se procede a la transferencia del
archivo. Es importante observar que el servidor no interviene en la actividad de
transferencia, los bloques de datos del archivo nunca se almacenan en el servidor de
Napster.
Gnutella
En 1999, Napster obliga a reconsiderar varias ideas sobre las redes (Internet) y cómo
esta aplicación la había redefinido cuestionando las reglas de la industria de la
tecnología de la información. A pesar de varias críticas provenientes de los abogados y
las industria de música sobre el copyright (derechos de autor); la popularidad de
Napster no se vió disminuida, más bien incrementó.
Inspirado en cómo Napster cambió las reglas, otra aplicación basada en la arquitectura
peer-to-peer pura, Gnutella, se incorporó a la Internet, realizando un paso más allá
que Napster.
La aplicación Gnutella envía un mensaje a un ordenador, el cual pasa el mensaje a
otros ordenadores los cuales están conectados a su vez con otras redes, formando la
red Gnutella vía Internet, para notificar la presencia del nuevo usuario. El recorrido del
mensaje se realiza de la siguiente manera: El usuario cuando se conecta a la red e
informa a otra computadora, que alternativamente informa a otras 10; estas 10
computadoras informan a 9 computadoras más y así sucesivamente.
20
SERVICIOS DE RED E
SERVICIOS DE TRANSFERENCIA DE FICHEROS INTERNET
Napster anima a los usuarios a compartir sus archivos MP3, para ser indexados en el
servidor de localización; Gnutella facilita compartir todo tipo de archivos, desde MP3
hasta ficheros ejecutables sin la necesidad de un servidor.
21
SERVICIOS DE RED E
INTERNET
SERVICIOS DE TRANSFERENCIA DE FICHEROS
- BIBLIOGRAFÍA
http://es.wikipedia.org/wiki/File_Transfer_Protocol
http://www.desarrolloweb.com/articulos/2311.php
http://despuesdegoogle.com/2006/09/22/emplear-el-navegador-como-cliente-ftp/
http://es.wikipedia.org/wiki/FTPS
http://es.wikipedia.org/wiki/File_eXchange_Protocol
http://www.internetlab.es/post/637/que-significa-fxp-y-para-que-sirve
http://es.wikipedia.org/wiki/TFTP
http://es.wikipedia.org/wiki/Secure_Copy
http://es.wikipedia.org/wiki/SSH_File_Transfer_Protocol
http://www.univalle.edu/publicaciones/journal/journal11/pagina05.htm
http://www.slideshare.net/felay/transferencia-de-archivos-6010698
http://es.wikipedia.org/wiki/Peer-to-peer#Redes.2C_protocolos_y_aplicaciones
22
Descargar