参考:
http://wenku.baidu.com/view/76e70cd702d276a201292e2f.html?re=view
http://wenku.baidu.com/view/cec7efaf08a1284ac850437d.html?re=view
guo@linux:~$ sudo ufw disable
防火墙在系统启动时自动禁用
guo@linux:~$ sudo ufw enable
在系统启动时启用和激活防火墙
ubuntu 14.04版本

1. guo@linux:~$ sudo apt-get install tftp-hpa tftpd-hpa
   guo@linux:~$ sudo apt-get install xinetd

2. /etc/xinetd.conf中内容如下(如不存在该文件,请新建。一般采用默认即可):
# Simple configuration file for xinetd
#
# Some defaults, and include /etc/xinetd.d/

defaults
{

# Please note that you need a log_type line to be able to use log_on_success
# and log_on_failure. The default is the following :
# log_type = SYSLOG daemon info

}

includedir /etc/xinetd.d

3. 配置tftp服务器
   sudo vim /etc/default/tftpd-hpa
原来内容:
# /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/var/lib/tftpboot"
TFTP_ADDRESS="[::]:69"
TFTP_OPTIONS="--secure"
修改后内容:
# /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/home/tftpboot"
TFTP_ADDRESS="0.0.0.0:69"
#TFTP_OPTIONS="--secure"
TFTP_OPTIONS="-s -l -c"

4. 建立/exc/xinetd.d/tftp文件,写入如下内容:
service tftp    
{
        socket_type = dgram
        wait = yes
        disable = no
        user = root
        protocol = udp
        server = /usr/sbin/in.tftpd
        server_args = -s /home/tftpboot
        #log_on_success += PID HOST DURATION
        #log_on_failure += HOST
        per_source = 11
        cps =100 2
        flags =IPv4
}
其中server_args设置的/home/tftpboot目录是tftp服务器的目录,设置其访问权限为777
guo@linux:~$ sudo mkdir /home/tftpboot/
guo@linux:~$ sudo chmod 777 /home/tftpboot/

5. 重启服务:
guo@linux:~$ sudo service tftpd-hpa restart
tftpd-hpa stop/waiting
tftpd-hpa start/running, process 15961
guo@linux:~$ sudo /etc/init.d/xinetd reload
 * Reloading internet superserver configuration xinetd                   [ OK ]
guo@linux:~$ sudo /etc/init.d/xinetd restart
 * Stopping internet superserver xinetd                                  [ OK ]
 * Starting internet superserver xinetd                                  [ OK ]

6. 测试:
在/home/tftpboot下新建一个文件1.txt,并随便写点内容
进入另外的文件夹下(怕混淆):
guo@linux:~$ cd Downloads/
guo@linux:~/Downloads$ sudo tftp 127.0.0.1
tftp> get 1.txt
tftp> q
guo@linux:~/Downloads$
在终端输入ls可以看到Downloads文件夹下多了一个1.txt文件。

7. 有人说要关闭防火墙,我试过,guo@linux:~$ sudo ufw enable后,也能传输成功。
如果不成功,就关闭防火墙试试。

05-11 20:13