准备工作
新建一个777权限的tftpdir服务文件夹
例如/home/sjj/work/tftpdir
放一个有内容的1.txt文本用来测试
安装tftp的增强版本
服务端tftpd-hpa
客户端tftp-hpa
sudo apt-get install tftp-hpa tftpd-hpa
修改配置文件
sudo vim /etc/default/tftpd-hpa
内容如下
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/home/sjj/work/tftpdir"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="-l -c -s"
TFTP_USERNAME:必须改为当前的用户名,或者root; (这个需要确认)
TFTP_DIRECTORY:我们设定的TFTP根目录;
TFTP_OPTIONS:TFTP启动参数。意义如下:
-l:以standalone/listen模式启动TFTP服务,而不是从inetd启动。
(这里也表明,再像前面一样装xinetd,其实是多此一举)
-c:可创建新文件。默认情况下,TFTP只允许覆盖原有文件,不能创建新文件。
-s:改变TFTP启动的根目录。加了-s后,客户端使用TFTP时,不再需要输入指定目录,填写文件的完整路径,而是使用配置文件中写好的目录。这样也可以增加安全性。
然后重启tftpd-hpa服务
sudo service tftpd-hpa restart
ps -ef |grep tftp 能看到tftpd-hpa进程以及服务的目录tftpdir
netstat -a | grep tftp 成功显示正在运行
netstat -tlnup | grep :69 能显示我们指定的端口69
测试一下
先回到其他目录比如/home/sjj/work,只要不是tftpdir目录就行
tftp 127.0.0.1 或 tftp localhost
tftp> get 1.txt 获取tftpdir目录里的1.txt到work目录
tftp> put 2.txt 发送当前目录的2.txt到tftpdir服务端目录
tftp> q 退出
ok