配置tftp server
本文主要是记录在CnetOS 7.0下配置tftp server需要注意的一些细节。注意:几乎所有操作都需要在root权限下完成。
1. 安装
首先要保证yum的源已经配置好。然后通过下面的方式安装:
$ yum install tftp tftp-server
另外,在CentOS下,tftp server 依赖于 xinetd,所以,xinted service 也必须安装好。
2. 配置
tftp sever默认是不会工作的,需要enable;当然,xinetd也必须enable:
$ chkconfig xinetd on
$ chkconfig tftp on
然后,重启xinetd service:
$ service xinetd restart
如果tftp service成功启动,可以通过netstat看到69端口被xinetd占用:
$ netstat -antpu | grep ":69"
udp 0 0 0.0.0.0:69 0.0.0.0:* 19292/xinetd
3. 其他设置
3.1 允许上传文件
tftp server默认设置,不允许上传文件(不允许新建)。有一个参数来控制,这个参数记录在配置文件 /etc/xinetd.d/tftp 配置文件中;找到其中的 server_args 一行,增加一个“-c” 参数即可。
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -c -s /var/lib/tftpboot
disable = yes
per_source = 11
cps = 100 2
flags = IPv4
}
另外,默认的tftp根目录是 /var/lib/tftpboot/,如果有必要,也可以在这里修改。为了保证在上传文件的时候有写权限,建议修改目录的权限:
$ chmod 777 /var/lib/tftpboot
3.2 防火墙
为了让tftp server能被访问,必须要配置防火墙。最简单的方式是禁用防火墙。
$ systemctl stop iptables.service
$ systemctl stop firewalld.service
注意,在CentOS7.0下,除了 iptables 还有一个 firewalld 的service,都需要disable。
3.3 SELinux
还有一个重要的问题就是SELinux,如果你发现无法下载部分文件,很可能就是它捣鬼,建议直接将它disable!
修改 /etc/selinux/config 文件,将 SELINUX=Enforcing 改为 SELINUX=disabled即可禁用SELinux (需要重启Linux)。