我正在运行 Ubuntu 20.04.2 LTS,并且按照以下步骤安装了 tftpd-hpa 指导。
配置文件:
# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/tftp"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="--secure --create"
tftp 服务器也正在运行:
/usr/sbin/in.tftpd --listen --user tftp --address 0.0.0.0:69 --secure --create /tftp
ngadre@in01-7h4wrf3:/srv$ netstat -plnu
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
udp 0 0 127.0.0.53:53 0.0.0.0:* -
udp 0 0 0.0.0.0:67 0.0.0.0:* -
udp 0 0 0.0.0.0:69 0.0.0.0:* -
由于 iptables -vnL 为空,因此没有 iptable 规则。
当我尝试测试它时:
ksa200@ksa200:/tmp$ tftp 10.110.234.6
tftp> verbose
Verbose mode on.
tftp> get xv38_xe58-6.6.0.1-a0.cimg
getting from 10.110.234.6:xv38_xe58-6.6.0.1-a0.cimg to xv38_xe58-6.6.0.1-a0.cimg [netascii]
tftp> quit
文件大小为 0 字节。不确定我的配置有什么问题。请帮忙。
答案1
问题出在文件和目录的权限上。我用 和 运行了 tftp 服务器TFTP_USERNAME="root"
,TFTP_DIRECTORY="/home/ngadre/tftp"
然后重新启动了守护进程。之后文件传输按预期进行。