ckaserer.tftp

gplv3 Maintenance

Un rôle Ansible pour installer un serveur TFTP (Trivial File Transfer Protocol) sur RHEL/CentOS 7. Plus précisément, les responsabilités de ce rôle sont de :

  • installer les paquets nécessaires
  • gérer la configuration
  • gérer les paramètres SELinux

Pour plus de documentation pertinente sur TFTP, voir :

Exigences

aucune.

Variables du rôle

Les variables suivantes peuvent être définies par l'administrateur :

Variable Par défaut Commentaires (type)
tftp_anon_write false Booléen qui spécifie si SELinux permet de modifier des fichiers.
tftp_config /usr/lib/systemd/system/tftp.service Chemin vers le fichier d'unité systemd pour tftp
tftp_group root Groupe du tftp_root_directory
tftp_home_dir false Booléen qui spécifie si SELinux
tftp_mode 0755 Permissions du tftp_root_directory
tftp_root_directory /var/lib/tftpboot Chemin vers le répertoire racine desservi par tftp.
tftp_server_args --secure Arguments de ligne de commande à passer à l'exécutable du serveur
tftp_server_foreman_support false Activer le support de Foreman en créant un tftpd.map approprié
tftp_setype tftpdir_rw_t Contexte SELinux pour le répertoire racine tftp
tftp_user root Propriétaire du tftp_root_directory

Dépendances

Pas de dépendances.

Exemple de Playbook

Voir le playbook de test

Tests

Des tests pour ce rôle sont fournis sous la forme d'un environnement Vagrant qui est conservé dans une branche séparée, tests. J'utilise git-worktree(1) pour inclure le code de test dans le répertoire de travail. Instructions pour exécuter les tests :

  1. Récupérer la branche des tests : git fetch origin tests
  2. Créer un Git worktree pour le code de test : git worktree add tests tests (remarque : cela nécessite au moins Git v2.5.0). Cela créera un répertoire tests/.
  3. cd tests/
  4. vagrant up créera alors une VM et appliquera le second des deux playbooks de test disponibles énumérés ci-dessous.

Les playbooks de test :

  • test-minimal.yml applique le rôle à une VM, avec les paramètres par défaut (aucune variable de rôle n'est définie).

  • test.yml applique le rôle à une VM, en modifiant certaines valeurs par défaut. Le playbook place également un fichier nommé README dans le répertoire racine TFTP. Après avoir appliqué ce playbook, vous devriez pouvoir récupérer ce fichier depuis votre système hôte (en supposant que le client tftp est installé) :

    $ tftp 127.0.0.1 6969 -c get README
    

Le port TFTP (69) sur la VM est redirigé via l'interface NAT vers le port 6969 sur votre système hôte, d'où le 127.0.0.1 et le numéro de port dans la ligne de commande.

Contribution

Les problèmes, demandes de fonctionnalités, idées sont appréciés et peuvent être publiés dans la section Issues. Les demandes de tirage sont également très bienvenues. De préférence, créez une branche thématique et lors de la soumission, combinez vos commits en un (avec un message descriptif).

Licence

BSD

Informations sur l'auteur

Bert Van Vreckem (bert.vanvreckem@gmail.com)

Contributions de :

À propos du projet

Installs and configures a TFTP (Trivial File Transfer Protocol) server on RHEL/CentOS 7 and Ubuntu

Installer
ansible-galaxy install ckaserer.tftp
Licence
other
Téléchargements
146.7k
Propriétaire
Anything related to Containers, CI/CD or general automation is fair game for him - give him a terminal and he is happy.