martes, 28 de junio de 2011

Diferencias entre FTP y TFTP

Windows admite el protocolo de transferencia de archivos (FTP) y protocolo de transferencia de archivos trivial (TFTP) en su implementación de TCP/IP. Ambos de estos protocolos se pueden utilizar para transferir archivos a través de Internet. A continuación se explican las diferencias entre los dos protocolos:

  • FTP es un protocolo de transferencia de archivo completo orientado a la sesión, general propósito. TFTP se utiliza como un protocolo de transferencia de archivos de propósito especial básica.
  • FTP puede utilizarse de forma interactiva. TFTP permite a sólo unidireccional transferencia de archivos.
  • FTP depende de TCP, conexión orientada y proporciona control confiable. TFTP depende de UDP, requiere menos sobrecarga y no proporciona prácticamente ningún control.
  • FTP proporciona autenticación de usuario. TFTP no.
  • FTP utiliza números de puerto TCP conocidos: 20 para datos y 21 para el cuadro de diálogo de conexión. TFTP utiliza número de puerto UDP 69 para su actividad de transferencia de archivos.

Protocolo TFTP


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 arranca desde un servidor de red.

Algunos detalles del TFTP:
  • 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.

Protocolo FTP


FTP (sigla 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, o apropiarse de los archivos transferidos.

Aquí podemos observar el modelo del servicio FTP.
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.


Modos de Conexión

  • Modo Pasivo: 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.
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 Activo: 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.

Introducción a los Protocolos FTP y TFTP

En esta oportunidad, se obtendrá conocimientos acerca de los protocolos nombrados, así como sus diferencias y aplicaciones en el entorno informático.