ckaserer.tftp
Un rol de Ansible para instalar un servidor TFTP (Protocolo de Transferencia de Archivos Trivial) en RHEL/CentOS 7. Específicamente, las responsabilidades de este rol son:
- instalar los paquetes necesarios
- gestionar la configuración
- gestionar la configuración de SELinux
Para más documentación relevante sobre TFTP, consulta:
Requisitos
ninguno.
Variables del Rol
Las siguientes variables pueden ser configuradas por el administrador:
Variable | Predeterminado | Comentarios (tipo) |
---|---|---|
tftp_anon_write |
falso | Booleano que especifica si SELinux permite modificar archivos. |
tftp_config |
/usr/lib/systemd/system/tftp.service | Ruta al archivo de unidad systemd para tftp |
tftp_group |
root | Grupo del tftp_root_directory |
tftp_home_dir |
falso | Booleano que especifica si SELinux |
tftp_mode |
0755 | Permisos del tftp_root_directory |
tftp_root_directory |
/var/lib/tftpboot | Ruta al directorio raíz servido por tftp. |
tftp_server_args |
--secure | Argumentos de línea de comandos que se pasarán al ejecutable del servidor |
tftp_server_foreman_support |
falso | Habilita el soporte de Foreman creando un tftpd.map adecuado |
tftp_setype |
tftpdir_rw_t | Contexto de SELinux para el directorio raíz de tftp |
tftp_user |
root | Propietario del tftp_root_directory |
Dependencias
Sin dependencias.
Ejemplo de Playbook
Consulta el playbook de prueba
Pruebas
Las pruebas para este rol se proporcionan en forma de un entorno Vagrant que se mantiene en una rama separada, tests. Utilizo git-worktree(1) para incluir el código de prueba en el directorio de trabajo. Instrucciones para ejecutar las pruebas:
- Obtener la rama de pruebas:
git fetch origin tests
- Crear un Git worktree para el código de prueba:
git worktree add tests tests
(nota: esto requiere al menos Git v2.5.0). Esto creará un directoriotests/
. cd tests/
vagrant up
creará una máquina virtual y aplicará el segundo de los dos playbooks de prueba disponibles enumerados a continuación.
Los playbooks de prueba:
test-minimal.yml
aplica el rol a una máquina virtual, con configuraciones predeterminadas (no se configuran variables del rol).test.yml
aplica el rol a una máquina virtual, cambiando algunos valores predeterminados. Este playbook también coloca un archivo llamado README en el directorio raíz de TFTP. Después de aplicar este playbook, deberías poder obtener ese archivo desde tu sistema host (suponiendo que el clientetftp
esté instalado):$ tftp 127.0.0.1 6969 -c get README
El puerto TFTP (69) en la máquina virtual se reenvía a través de la interfaz NAT al puerto 6969 en tu sistema host, por eso usamos 127.0.0.1 y el número de puerto en la línea de comandos.
Contribuciones
Se agradecen problemas, solicitudes de características, ideas y se pueden publicar en la sección de Problemas. También son bienvenidas las solicitudes de extracción. Preferiblemente, crea una rama temática y, al enviar, combina tus commits en uno solo (con un mensaje descriptivo).
Licencia
BSD
Información del Autor
Bert Van Vreckem (bert.vanvreckem@gmail.com)
Contribuciones de:
- @ckaserer
- @kostyrevaa : Soporte de Foreman (v1.2.0)
- @pugnacity
Installs and configures a TFTP (Trivial File Transfer Protocol) server on RHEL/CentOS 7 and Ubuntu
ansible-galaxy install ckaserer.tftp