配置TFTP服务程序

我们曾经在第11章中学习过vsftpd服务与TFTP服务。vsftpd是一款功能丰富的文件传输服务程序,允许用户以匿名开放模式、本地用户模式、虚拟用户模式来进行访问认证。但是,当前的客户端主机还没有安装操作系统,该如何进行登录认证呢?而TFTP作为一种基于UDP协议的简单文件传输协议,不需要进行用户认证即可获取到所需的文件资源。因此接下来配置TFTP服务程序,为客户端主机提供引导及驱动文件。当客户端主机有了基本的驱动程序之后,再通过vsftpd服务程序将完整的光盘镜像文件传输过去。

[root@linuxprobe ~]# yum install tftp-server Loaded plugins: langpacks, product-id, subscription-manager This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. Resolving Dependencies –> Running transaction check —> Package tftp-server.x86_64 0:5.2-11.el7 will be installed –> Processing Dependency: xinetd for package: tftp-server-5.2-11.el7.x86_64 –> Running transaction check —> Package xinetd.x86_64 2:2.3.15-12.el7 will be installed –> Finished Dependency Resolution Dependencies Resolved

 Package Arch Version Repository Size================================================================================Installing: tftp-server x86_64 5.2-11.el7 rhel 44 kInstalling for dependencies: xinetd x86_64 2:2.3.15-12.el7 rhel 128 kTransaction Summary================================================================================Install 1 Package (+1 Dependent package)Total download size: 172 kInstalled size: 325 kIs this ok [y/d/N]: yDownloading packages:--------------------------------------------------------------------------------Total 1.7 MB/s | 172 kB 00:00 Running transaction checkRunning transaction testTransaction test succeededRunning transaction Installing : 2:xinetd-2.3.15-12.el7.x86_64 1/2  Installing : tftp-server-5.2-11.el7.x86_64 2/2  Verifying : 2:xinetd-2.3.15-12.el7.x86_64 1/2  Verifying : tftp-server-5.2-11.el7.x86_64 2/2 Installed: tftp-server.x86_64 0:5.2-11.el7 Dependency Installed: xinetd.x86_64 2:2.3.15-12.el7 Complete!

TFTP是一种非常精简的文件传输服务程序,它的运行和关闭是由xinetd网络守护进程服务来管理的。xinetd服务程序会同时监听系统的多个端口,然后根据用户请求的端口号调取相应的服务程序来响应用户的请求。需要开启TFTP服务程序,只需在xinetd服务程序的配置文件中把disable参数改成no就可以了。保存配置文件并退出,然后重启xinetd服务程序,并将其加入到开机启动项中(在RHEL 7系统中,已经默认启用了xinetd服务程序,因此在将其添加到开机启动项中的时候没有输出信息属于正常情况)。

[root@linuxprobe ~.d]# vim /etc/xinetd.d/tftp service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s /var/lib/tftpboot disable = no per_source = 11 cps = 100 2 flags = IPv4 [root@linuxprobe xinetd.d]# systemctl restart xinetd [root@linuxprobe xinetd.d]# systemctl enable xinetd TFTP服务程序默认使用的是UDP协议,占用的端口号为69,所以在生产环境中还需要在firewalld防火墙管理工具中写入使其永久生效的允许策略,以便让客户端主机顺利获取到引导文件。

[root@linuxprobe ~]# firewall-cmd –permanent –add-port=69/udp success [root@linuxprobe ~]# firewall-cmd –reload success

原创文章,作者:Zhang Miao Miao,如若转载,请注明出处:https://www.yidc.net/archives/15934