Setting Up a TFTP Server for Embedded Linux Development¶
This guide configures a TFTP server on Ubuntu with a dedicated root directory such as /mnt/external/ipc/tftpdir.
Install the server¶
Configure tftpd-hpa¶
Edit the configuration file:
Set the service account, root directory, address, and secure mode:
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/mnt/external/ipc/tftpdir"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="--secure"
Set directory permissions¶
The TFTP service needs read and write access to the selected directory:
For a production server, prefer the least permissive ownership and mode that still satisfy your upload workflow.
Start the service¶
Verify the server¶
- Create a test file on the server:
- Download it from a client. The client may be the same machine:
- Check the downloaded content:
Firewall¶
If UFW is enabled, allow TFTP traffic on UDP port 69: