If you're new here, you may want to subscribe to my RSS feed. Thanks for visiting!
Install atftp Server in Ubuntu
sudo aptitude install atftpd
This will complete the installation
Using atftpd
By default atftpd server starts using inetd so we need to tell atftpd to run as a server directly, not through inetd.Edit /etc/default/atftpd file using the following command
sudo gedit /etc/default/atftpd
Change the following line
USE_INETD=true
to
USE_INETD=false
save and exit the file
Now you need to run the following command
sudo invoke-rc.d atftpd start
Configuring atftpd
First you need to create a directory where you can place the files
sudo mkdir /tftpboot
sudo chmod -R 777 /tftpboot
sudo chown -R nobody /tftpboot
sudo /etc/init.d/atftpd restart
Security configuration for atftp
Some level of security can be gained using atftp libwrap support. Adding proper entry to /etc/hosts.allow and /etc/hosts.deny will restrict access to trusted hosts. Daemon name to use in these files is in.tftpd.
/etc/hosts.allow /etc/hosts.deny
in.tftpd : FQD or IP
atftp client installation
Advance Trivial file transfer protocol client,atftp is the user interface to the Internet ATFTP (Advanced Trivial File Transfer Protocol), which allows users to transfer files to and from a remote machine. The remote host may be specified on the command line, in which case atftp uses host as the default host for future transfers.
sudo aptitude install atftp
That’s it you are ready to transfer your files using tftp clients
Testing tftp server
Tranfering file hda.txt from 192.168.1.100 (Client using tftp) to 192.168.1.2 (Server 192.168.1.100). Get an example file to transfer (eg. hda.txt)
touch /tftpboot/hda.txt
chmod 777 /tftpboot/hda.txt
ls -l /tftpboot/
total 0
-rwxrwxrwx 1 ruchi ruchi 223 hda.txt
atftp 192.168.1.2
atftp> put hda.txt
Sent 722 bytes in 0.0 seconds
atftp> quit
ls -l /tftpboot/
total 4
-rwxrwxrwx 1 ruchi ruchi 707 2008-07-07 23:07 hda.txt




Great job!
Just a little mistake, maybe this command “tftp 192.168.1.2″ should be “atftp 192.168.1.2″.
@alex
Thanks for your comment and i have updated the article
Very helpful – have achieved transfer from Ubuntu client to Ubuntu server (named UbuntuServer_2 with address 192.168.1.2) on in-house LAN.
Next step is to be able to transfer from Windows XP to Ubuntu server.
Results so far, using ‘ftp http://ftp.hostname‘ as suggested in Windows X Help:
ftp http://ftp.UbuntuServer_2 -> Unknown host
ftp http://ftp.192.168.1.2 -> Uknown host
ftp 192.168.1.2 -> connected to 192.168.1.2, then after a few secs, connection closed by remote host.
Question: any suggestions.
Eventual aim is to be able to upload files from NuSphere phpEd (Standard) which only supports ‘passive’ FTP, installed on the Windows XP PC to the Ubuntu sever.
@Ivan Ruter
If you want to transfer files from xp,any linux clients you can use ftp server on your ubuntu that is easy to transfer files
Hi Guys
My Question is:
Is possible to configure a Tftp Server for multiples domains or users.
For example a client connet to testtftp.com the server send a response with a mail folder
but if i connect on testtftp2.com th tfpt server send a reponse qith other folder direction
this possible this?
Hi admin,
Great job!
However I am having difficulties once it has all been installed.
When Trying to Download a file from the server (Using tftp client on another computer), I get the following error:
———————-
tftp> get config.jpg
tftp: error received from server
tftp: aborting
———————-
AND
When Trying to Upload a file to the server (Using tftp client on another computer) I get this error:
———————-
tftp> put config.jpg
tftp: error received from server
———————-
I’ve checked the permissions of the /tftpboot folder and it has all read/write access for ALL users.
I’ve got plenty experience with apache via port 80 and 443 (http and https) and also ftp. But i’ve never worked with tftp before and its proving to be so hard to get going.
Am I missing something?
Please help… I am desperate to get this going
Any help would be greatly appreciated so thanks in advance.
Peter
This was most useful – thanks you! That said, I had one additional step to make on Ubuntu server 8.10:
When editing the /etc/default/atftpd to change USE_INETD=true, I also had to amend the options line to point to the /tftpboot directory.
My original options line read:
OPTIONS=”–daemon –port 69 –tftpd-timeout 300 –retry-timeout 5 –mcast-port 1758 –mcast-addr 239.239.239.0-255 –mcast-ttl 1 –maxthread 100 –verbose=5 /var/lib/tftpboot”
My Amended options line reads:
OPTIONS=”–daemon –port 69 –tftpd-timeout 300 –retry-timeout 5 –mcast-port 1758 –mcast-addr 239.239.239.0-255 –mcast-ttl 1 –maxthread 100 –verbose=5 /tftpboot”
Your article was very helpfull
Still having some problems though. everthing works fine for tiny text files, but If i send anything larger (maybe 100k) it fails.
I am trying to set this up so my PXE client can boot with thintux
any help would be appreciated.
almost forgot, If I run the atftp client on the server itself i dont have a problem.
I think I have followed this very helpful article to the letter.
My problem is I get the error:
atftpd: can’t bind port :69/udp
whenever I start atftpd
Any suggestions?
Thanks
Maybe:
/etc/init.d/inetd restart
and then
/etc/init.d/atftpd start
Nice post, a lot of thanks!!
Well done!
atftp may have moved /tftpboot directory to /var/lib/tftpboot
look in /etc/default/atftpd
It was this way on ubuntu 8.10.
I’m using ubuntu server 9.04 and I get the following error when I type the command which is supposed to start the standalone service (sudo invoke-rc.d atftpd start):
invoke-rc.d: initscript atftpd, action “start” failed.
Any suggestions why it doesn’t start? I haven’t found any log files in /var/log… I tried setting it up using the –logfile option but it didn’t work.
Thanks,
Peter