TFTP (Protocolo trivial de transferencia de archivos) se describió por primera vez en 1980. Es un protocolo bastante antiguo publicado en junio de 1981 como Protocolo TFTP revisión 2 en RFC 783 (Solicitud de comentarios) por Karen R. Sollins.

Al principio, el objetivo principal de TFTP era enviar y recibir archivos a través de una red. En particular, se usó para transferir los archivos necesarios durante el arranque para permitir que los sistemas arranquen a través de una red.

Así es como puede configurar un servidor TFTP en una máquina Linux.

¿Qué es TFTP?

TFTP todavía se usa para fines de transferencia de archivos y no hay cambios fundamentales en las funciones que admite. TFTP se utiliza para descargar y enviar archivos a través de UDP/IP. No tiene funciones adicionales como control de identidad y autorización, listado de archivos, eliminación o cambio de nombre, que normalmente se encuentran en otros protocolos de transferencia de archivos.

A diferencia de los protocolos avanzados de transferencia de archivos que utilizan TCP en la capa de transmisión, funciona sobre el protocolo UDP y no tiene funciones como verificar si los paquetes que pertenecen al archivo van o no al otro lado. Debido a esta limitación, es más adecuado para su uso en redes locales en lugar de Internet o redes de área amplia.

instagram viewer

A pesar de todas estas características aparentemente negativas enumeradas anteriormente, un aspecto del protocolo TFTP que es muy sólido es su simplicidad. La implementación del protocolo es bastante fácil en comparación con sus alternativas, incluso para entornos que no tienen un sistema operativo en ellos. Debido a esta característica, tiene una amplia área de uso en sistemas integrados.

Instalación de un servidor TFTP en Linux

Cuando se trabaja con dispositivos integrados, es importante tener instalado el servicio de servidor TFTP. En los sistemas Linux, se pueden ejecutar varias implementaciones de servidor TFTP. Si estás usando un Distribución basada en Debian, puede instalar el tftpd-hpa, tftpd, o atftpd paquetes Si no está seguro de cuál elegir, considere instalar el paquete tftpd-hpa.

sudo apt-obtener instalar tftpd-hpa

Después de la instalación, el servicio TFTP comenzará a escuchar en el puerto UDP 69. Para servir los archivos a otros sistemas a través del servidor TFTP, debe tener en cuenta algunos requisitos previos:

  • Copiar el archivo requerido al directorio de inicio de TFTP o un directorio debajo de ese directorio de inicio
  • Hacer que los permisos de archivos sean visibles para el público

Para averiguar cuál es el directorio de inicio del servidor TFTP, puede consultar el DIRECTORIO_TFTP variables en el /etc/default/tftpd-hpa expediente. Por lo general, verá directorios como /var/lib/tftpboot o /srv/tftp. Si lo desea, puede cambiar este directorio y reiniciar el servicio.

gato /etc/defecto/tftpd-hpa

Para facilitar el uso, si cambia el propietario del directorio de inicio TFTP relevante a su cuenta de usuario, no necesitará agregar el prefijo sudo a cada comando que ejecute. Use el comando chown para cambiar la propiedad de root al usuario actual:

sudo chown -R $USUARIO /srv/tftp

Los nombres de los paquetes del servidor TFTP y los directorios de inicio predeterminados pueden diferir según la distribución de Linux utilizada.

Envío de archivos con el servidor TFTP

A veces hay situaciones en las que TFTP es la única opción para mover un archivo de su sistema Linux embebido al ambiente externo. Por ejemplo, a veces es posible que el sistema no admita ningún medio grabable mediante el cual pueda transferir el archivo.

En tales casos, dado que el cliente TFTP probablemente se compilará en caja ocupada, puede enviar un archivo guardado en el sistema a un servidor TFTP en una red.

Para utilizar la aplicación de cliente TFTP, emita el caja ocupada tftp dominio:

caja ocupada tftp 

Para enviar un archivo de muestra al servidor TFTP, debe usar un comando como este:

caja ocupadatftp-lejemplo.compartimiento-pags 192.168.1.100

Aunque el comando anterior es correcto, obtendrá un error al transferir el archivo a su servidor TFTP. Dado que el mensaje de error devuelto no se explica por sí mismo, es difícil entender cuál es el problema real.

El problema aquí se debe a algunos procedimientos de seguridad en el servidor TFTP. TFTP requiere que un archivo con el mismo nombre esté en el directorio donde se escribirá el archivo como requisito previo para la carga de un archivo y que el acceso de escritura para este archivo debe estar disponible para todo el mundo.

En otras palabras, no es posible cargar un archivo que no existe en el servidor TFTP a través de clientes TFTP. Si crea un archivo vacío con el mismo nombre y edita sus derechos de acceso, el proceso de carga anterior será exitoso. Para ello, debe ejecutar los siguientes comandos en el directorio de inicio del servidor TFTP correspondiente:

discos compactos /srv/tftp 
tocarejemplo.compartimiento
chmod 666 ejemplo.compartimiento

Ahora puede realizar su carga con éxito.

También es posible deshabilitar la medida de seguridad anterior y hacer que el servidor TFTP cree un archivo que no existe. Para ello, puede utilizar el -C o --crear parámetro al iniciar el tftpd-hpa solicitud. Es suficiente agregar este parámetro al existente. TFTPD_OPCIONES variables en el /etc/default/tftpd-hpa expediente:

# /etc/default/tftpd-hpa 
TFTP_NOMBRE DE USUARIO="tftp"
TFTP_DIRECTORIO="/srv/tftp"
DIRECCIÓN_TFTP="0.0.0.0:69"
TFTP_OPCIONES="--seguro --crear"

¿Por qué utilizar un servidor TFTP para la transferencia de archivos?

La ventaja más importante de TFTP es que es rápido y le ayuda a ahorrar tiempo. Es una opción ideal para transferir archivos de configuración de dispositivos de red a otros sistemas. Además, tiene criterios de uso muy simples. Funciona cómodamente con software en sistemas operativos basados ​​en Windows y Linux. Finalmente, TFTP siempre está ahí para salvar el día en situaciones en las que técnicamente no puede usar FTP.

La mayor desventaja es, por supuesto, que no es seguro. Por lo tanto, debe tener mucho cuidado al transferir archivos mediante un servidor TFTP.

Aparte de las transferencias de archivos, no puede realizar funciones como la eliminación, edición y modificación de archivos utilizando un servidor TFTP. Esta característica es una gran desventaja para aquellos que usan o buscan sistemas avanzados. Finalmente, no requiere autenticación, lo cual es un gran inconveniente si se toma en serio su seguridad.

Configuración de TFTP en otros sistemas operativos

Si va a utilizar TFTP en Windows, no necesita instalar ningún software de terceros. Puede habilitar TFTP con la opción Activar o desactivar funciones de Windows en el panel de control.