tftp服务器配置及说明

文章目录

  • 1、tftp含义
  • 2、ubuntu虚拟机上配置tftp
  • 3、win平台上配置tftp
  • 4、需要注意的一些小问题

1、tftp含义

百度百科的解释为:TFTP(Trivial File Transfer Protocol,简单文件传输协议)是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。端口号为69。

因此可以知道tftp就是用来进行文件传输的一种协议,一般也不能传输特别大的文件,常用来传输一些小文件,例如编译好的固件之类的。

2、ubuntu虚拟机上配置tftp

下面来配置一下虚拟机上的tftp,首先需要准备一个文件夹用来存放需要传输的文件,并设置一下这个文件夹是可以被其他程序可读可写的,这样不会在后面因为权限问题导致传输失败。

tftp服务器配置及说明_第1张图片
创建好的文件夹的位置如下所示:
tftp服务器配置及说明_第2张图片
下面安装一些tftp,直接使用apt安装即可:

sudo apt-get install tftp-hpa tftpd-hpa
sudo apt-get install xinetd

安装好的效果如下所示:
tftp服务器配置及说明_第3张图片
之后检查一下相关文件是否存在,使用命令为:(如果和下图一样就没啥问题了)
tftp服务器配置及说明_第4张图片
下面修改tftp的配置,使用的命令如下所示:

sudo vim /etc/default/tftpd-hpa

将原来的内容替换为:

# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/tftpboot"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="-l -c -s"

效果如下
tftp服务器配置及说明_第5张图片
之后新建一个文件,将下面的内容复制进去

sudo vi /etc/xinetd.d/tftp

需要复制的内容为:

service tftp
{
socket_type = dgram
wait = yes
disable = no
user = root
protocol = udp
server = /usr/sbin/in.tftpd
server_args = -s /tftpboot
#log_on_success += PID HOST DURATION
#log_on_failure += HOST
per_source = 11
cps =100 2
flags =IPv4
}

复制后的效果如下所示:
tftp服务器配置及说明_第6张图片
下面需要重启一下服务

sudo service tftpd-hpa restart
sudo /etc/init.d/xinetd reload
sudo /etc/init.d/xinetd restart

看到OK说明重启已经完成了
tftp服务器配置及说明_第7张图片
下面可以进行一个简单的测试,在原有的tftp的文件夹下新建一个文件,之后在另一个路径下使用tftp进行获取到,传输指定的文件,可以看到文件传输成功!
tftp服务器配置及说明_第8张图片

3、win平台上配置tftp

win平台需要我们提前准备一个工具,用这个工具来实现tftp的传输,工具为tftpd64,直接百度搜索就可以找到,应该是比较经典所以也很好找到,页面如下所示:
tftp服务器配置及说明_第9张图片
选择客户端页面,试试把刚才的那个文件传过来
tftp服务器配置及说明_第10张图片
点击get可以看到存在这个文件,点击OK就可以开始进行文件的传输了
tftp服务器配置及说明_第11张图片
传输来的文件放在开头的文件夹下,如下所示
tftp服务器配置及说明_第12张图片
下面在来测试下pc端作为客户端的使用,如下所示:
tftp服务器配置及说明_第13张图片
这里还是线选好路径,可以查看路径下的文件,如下所示:
tftp服务器配置及说明_第14张图片
因此这里还是用原来的办法进行传输,如下所示:(这里记得要以管理员身份运行,不然权限又不行)
tftp服务器配置及说明_第15张图片
传输成功,如下所示
tftp服务器配置及说明_第16张图片

4、需要注意的一些小问题

这里需要注意的是在虚拟机和外部设备进行连接的时候需要的注意的:
tftp服务器配置及说明_第17张图片
这里是使用NAT模式来实现的,因此外部设备是怎么也找不到这个设备的,所以如果需要外部设备和虚拟机之间进行tftp连接就无法实现,还是需要通过windows来实现,因此这个工具就能派上用处了。

你可能感兴趣的:(linux设备使用记录,服务器,网络,linux)