使用 xinetd 规则启动时,TFTP 未侦听定义的端口

Rav*_*rma 3 xinetd tftp

我正在按照教程使用 tftp:

首先,我安装所有必需的软件包:

sudo apt-get install xinetd tftpd tftp -y
Run Code Online (Sandbox Code Playgroud)

接下来,创建一个配置文件:

sudo nano /etc/xinetd.d/tftp
Run Code Online (Sandbox Code Playgroud)

将以下内容放入文件中。

service tftp
{
   protocol = udp
   port = 69
   socket_type = dgram
   wait = yes
   user = nobody
   server = /usr/sbin/in.tftpd
   server_args = var/lib/tftpboot -s
   disable = no
}
Run Code Online (Sandbox Code Playgroud)

现在我更改目录的所有权:

sudo mkdir /var/lib/tftpboot
sudo chown -R nobody:nobody /var/lib/tftpboot
sudo chmod -R 777 /var/lib/tftpboot
Run Code Online (Sandbox Code Playgroud)

并启动 TFTP 服务:

sudo service xinetd stop
sudo service xinetd start
Run Code Online (Sandbox Code Playgroud)

然后验证 TFTP 是否正常运行:

    root@ravi-Inspiron-N5010:/home/ravi# netstat -na | grep LIST | grep 69
unix  2      [ ACC ]     STREAM     LISTENING     16171    @/com/ubuntu/upstart-session/1000/1692
root@ravi-Inspiron-N5010:/home/ravi# 
Run Code Online (Sandbox Code Playgroud)

netstat 的输出与教程中提到的不同:

tcp        0      0 0.0.0.0:69              0.0.0.0:*     LISTEN
Run Code Online (Sandbox Code Playgroud)

小智 5

TFTP 是一种基于 UDP 的协议,因此,您不会找到显示 LISTEN 或 LISTENING 的行。

netstat -na | grep udp

看看你得到了什么。