很多网络设备厂商都允许利用Trivial File Transfer Protocol(TFTP)协议来进行配置的备份和更新。TFTP做为一个网络管理工具,除了可以用来保存文件之外还能有多种用途。TFTP Server可以在硬件严重失效的时候上传新的配置文件,同时也可以上传最新版本的软件(比如做设备IOS升级)。
TFTP可能对于家庭用户来说用的机会非常少,但是对于企业和拥有众多网络设备的公司来说,是必不可少的一个小工具。
在之前的文章,挨踢小茶曾经介绍过袖珍网络服务器Tftpd32 v4.00这个软件,是基于Windows平台的小巧TFTP服务端。在文本主要介绍在Linux平台下的TFTP服务端。
安装TFTP Server软件
在Fedora/Rehat环境下,TFTP服务端一般是以“tftp-server"开头的,截至笔者写这篇文章的时候,最新安装包是tftp-server-5.2-.fc17.i686.rpm。如果使用yum安装只需要输入“yum install tftp-server”即可。
在Debian/Ubuntu环境下,一般使用HPA TFTP服务端,文件命名为以“tftp-hpa”开头,文件名应如:tftpd-hpa_0.40-.1ubuntu1_i386.deb。
关闭防火墙
请确保防火墙已经关闭或者已经允许69端口的数据通过。
- 关闭SElinux: vi /etc/sysconfig/selinux,将SELINUX=enforcing改为SELINUX=disabled
- 关闭iptables防火墙(暂时性,马上生效):service iptables stop
- 关闭iptables防火墙(永久性,重启有效):chkconfig iptables off
配置TFTP服务端
Fedora/Rehat 用户看这里
- 编辑/etc/xinetd.d/tftp文件,vi /etc/xinetd.d/tftp
# default: off # description: The tftp server serves files using the trivial file transfer # protocol. The tftp protocol is often used to boot diskless # workstations, download configuration files to network-aware printers, # and to start the installation process for some operating systems. service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s /tftpboot disable = yes per_source = 11 cps = 100 2 flags = IPv4 }
- 将disable = yes 改为disable = no
- 将server_args = -s /tftpboot 改成server_args = -s /tftpboot -c
其中/tftpboot可以换成自己想要的tftp主目录 - service xinetd start 启动TFTP服务
- netstat -a | grep tftp 查看TFTP是否开始端口
也可以使用service xinetd status查看TFTP服务状态
Debian/Ubuntu 用户看这里
Debian/Ubuntu 发布的TFTP服务器版本的配置文件在/etc/default/tftpd-hpa而且默认是指引TFTP daemon使用/var/lib/tftpboot目录保存TFTP文件。而且默认daemon是禁用的。
- vi /etc/default/tftpd-hpa 编辑配置文件
- 文件相应内容更改成
RUN_DAEMON="yes"
OPTIONS="-l -s /var/lib/tftpboot" - /etc/init.d/tftpd-hpa start 启动服务
测试TFTP服务器连通性
可以使用Linux安装的TFTP客户端来测试TFTP服务端,也可以使用其他计算机,比如Windows平台的机器使用TFTP 客户端来访问测试。
文章评论
可以使用Linux安装的TFTP客户端来测试TFTP服务端 这是个很不错的方法 。。。
看不甚懂,太高深了,不是这一行的。
总得留点什么??想来想去,就留个脚印吧。。哈哈