Ceci est une ancienne révision du document !
Plusieurs versions de serveurs TFTP 1) sont disponibles sur la majorité des distributions GNU/Linux :
Le service TFTP est largement utilisé par PXE pour charger des images via le réseau et démarrer des systèmes sans disques, automatiser des installations, charger des programmes de diagnostic etc.
De nombreux matériels réseau permettent de charger/exporter leurs configurations via TFTP.
sudo apt-get install tftpd-hpa
Le fichier de configuration est minimaliste :
# /etc/default/tftpd-hpa TFTP_USERNAME="tftp" TFTP_DIRECTORY="/srv/tftp" TFTP_ADDRESS=":69" TFTP_OPTIONS="--secure"
L'installateur crée un dossier /srv/tftp
c'est le dossier racine du serveur. Par défaut ce dossier appartient à root, l'utilisateur tftp qui executera le service n'aura qu' un accès en lecture.
Pour permettre l'écriture par l'utilisateur tftp sur la racine du dossier tftp :
Par défaut le serveur TFTP rend accessible ses fichiers aux systèmes distants mais ne permet pas la création de contenu/l'écriture de fichiers. Il est possible d'autoriser la copie de fichiers sur le serveur TFTP
Si le serveur n'est pas paramétré pour accepter la création de nouveaux fichiers, lors de l'utilisation de la commande put
une erreur avec le message File not found
est retournée:
tftp> put prise-A10.txt Error code 1: File not found
Modifier le fichier de configuration
Moidifier les droits sur le dossier racine du serveur TFTP, l'utilisateur tftp doit avoir les droits d'écriture. Si les droit ne sont pas correctment positionnés, on obtient un message 'Error code 0: Permission denied'' :
sudo chown tftp:tftp /srv/tftp/
Relancer le service
systemctl restart tftpd-hpa.service
Modifier le masque associé à l'utilisateur tftp pour que les fichiers créés ne soient accessibles qu'en lecture aux utilisateurs du système (other).