Instale el servidor tftp en CentOS 8 o RedHat 8

Hoy el artículo será pequeño. En general, en mi opinión, todo es bastante simple, pero desde que se lanzó CentOS8 recientemente, hay pocas guías sobre él, y específicamente sobre tftp bajo CentOS, vi muchos consejos francamente dañinos en Internet, así que intentaré preguntar una tendencia para corregir la situación desde el momento en que se lanza la nueva versión. Entonces, pasemos al conjunto de tres patéticos cinco equipos que necesitamos. Primero, instale todos los paquetes requeridos:

sudo dnf -y install xinetd tftp-server tftp vim 

Ahora crearemos (o arreglaremos) el archivo de configuración xinetd para que inicie el servidor tftp cuando acceda al puerto correspondiente, esto se puede hacer a través del editor vi estándar, a través de nano, que es más familiar para la mayoría de las personas, o a través de vim, que difiere del vi predeterminado que tiene una funcionalidad más amplia, incluido el resaltado de sintaxis. Prefiero el último párrafo, por lo que este editor fue la última palabra en el comando anterior. Si alguien está satisfecho con los editores disponibles en el sistema, no puede instalar vim (aunque además de usar 60 MB adicionales de espacio en disco, tampoco lo hará peor).

 sudo vim /etc/xinetd.d/tftp 

Aquí debe ingresar al modo de inserción de texto (tipo: establecer pegar e ingresar), luego editar (Insertar tecla en el teclado), luego seleccionar el archivo de configuración a continuación, copiar y pegar en la ventana del terminal.

Cuando edite el texto de configuración , preste atención al argumento server_args . Al final de la línea, la ruta al directorio se especifica donde se ubicarán los archivos proporcionados por tftp. Cambie este directorio al que se debe usar con usted. También quiero decir de inmediato que será necesario configurar un servidor tftp en SeLinux para trabajar con este directorio, no hay una configuración "predeterminada" para un servidor tftp en CentOS. Ahora no escribiré sobre la configuración de SeLinux, porque de alguna manera prepararé un artículo separado sobre este tema.

 # default: off # description: The tftp server serves files using the trivial file transfer \ # protocol. The tftp protocol is often used to boot diskless \ # workstations, download configuration files to network-aware printers, \ # and to start the installation process for some operating systems. service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -v -s /var/lib/tftpboot disable = no per_source = 11 cps = 100 2 flags = IPv4 } 

Luego, presione Esc, y luego ": wq" e ingrese.

Ahora encienda el servidor:

 sudo systemctl start xinetd sudo systemctl enable xinetd sudo firewall-cmd --permanent --zone=public --add-service=tftp && sudo firewall-cmd --reload 

Sí, no necesita colgar tftpd al inicio, aunque esto no es del todo obvio.
A continuación, debe verificar que todo funcione. Creamos un archivo e intentamos descargarlo (lo hice para la ruta de almacenamiento de archivos popular, si tiene otro, cámbielo aquí):

 echo passed > ~/test.txt sudo mv ~/test.txt /var/lib/tftpboot tftp 127.0.0.1 -c get test.txt cat test.txt 

Si la palabra "aprobada" aparece en la consola, el servidor se está ejecutando. Si al mismo tiempo no será accesible desde la red local, trate con las zonas en Firewalld, hicimos acceso a la zona pública, no todos necesitan acceso a tftp desde ella.

PD: si hay preguntas en los comentarios, explicaré cómo transferir centos 8 de firewalld a iptables, pero en mi humilde opinión, no hay una diferencia fundamental entre ellos.

Source: https://habr.com/ru/post/470303/


All Articles