云网牛站
所在位置:首页 > Linux云服务器 > 在Fedora系统上安装和设置TFTP服务器的方法

在Fedora系统上安装和设置TFTP服务器的方法

2019-09-14 09:21:40作者:牛福昕稿源:云网牛站

本文介绍在Fedora Linux操作系统上安装和设置TFTP服务器的方法:TFTP服务器安装、进行局部变更、启动TFTP服务器、客户端配置。

在Fedora系统上安装和设置TFTP服务器的方法

 

前言

TFTP或普通文件传输协议允许用户使用UDP协议在系统之间传输文件,默认情况下,它使用UDP69端口,TFTP协议广泛用于支持无盘设备的远程启动,因此,在你自己的本地网络上设置TFTP服务器很有必要。

TFTP只能从远程系统读取文件或从远程系统写入文件,它无法列出文件或在远程服务器上进行任何更改,用户身份验证也没有规定,由于安全隐患和缺乏高级功能,TFTP通常仅用于局域网(LAN)。

 

TFTP服务器安装

你需要做的第一件事是安装TFTP客户端和服务器包:

dnf install tftp-server tftp -y

这将为/usr/lib/systemd/system下的systemd创建一个tftp服务和套接字文件:

/usr/lib/systemd/system/tftp.service

/usr/lib/systemd/system/tftp.socket

接下来,将这些文件复制并重命名为/etc/systemd/system:

cp /usr/lib/systemd/system/tftp.service /etc/systemd/system/tftp-server.service

cp /usr/lib/systemd/system/tftp.socket /etc/systemd/system/tftp-server.socket

其它发行版请参考:在Ubuntu Server上安装和配置TFTP服务器的方法

 

进行局部变更

复制和重命名后,需要从新位置编辑这些文件,以添加一些其他参数,以下是tftp-server.service文件的初始状态:

[Unit]

Description=Tftp Server

Requires=tftp.socket

Documentation=man:in.tftpd

[Service]

ExecStart=/usr/sbin/in.tftpd -s /var/lib/tftpboot

StandardInput=socket

[Install]

Also=tftp.socket

对[Unit]部分进行以下更改:

Requires=tftp-server.socket

对ExecStart行进行以下更改:

ExecStart=/usr/sbin/in.tftpd -c -p -s /var/lib/tftpboot

以下是选项的含义:

1、-c选项允许创建新文件。

2、-p选项用于在正常系统提供的访问控制之上执行其他权限检查。

3、建议使用-s选项以确保安全性以及与某些引导ROM的兼容性,这些引导ROM无法轻易地在其请求中包含目录名称。

传输文件的默认上传/下载位置是/var/lib/tftpboot。

接下来,对[Install]部分进行以下更改:

[Install]

WantedBy=multi-user.target

Also=tftp-server.socket

别忘了保存更改。

这是完成的/etc/systemd/system/tftp-server.service文件:

[Unit]

Description=Tftp Server

Requires=tftp-server.socket

Documentation=man:in.tftpd

[Service]

ExecStart=/usr/sbin/in.tftpd -c -p -s /var/lib/tftpboot

StandardInput=socket

[Install]

WantedBy=multi-user.target

Also=tftp-server.socket

 

启动TFTP服务器

重新加载systemd守护程序:

systemctl daemon-reload

现在启动并启用服务器:

systemctl enable --now tftp-server

要更改TFTP服务器的权限以允许上载和下载功能,请使用此命令,注意TFTP是一种固有的不安全协议,因此不会在你与其他人共享的网络上建议这样做:

chmod 777 /var/lib/tftpboot

配置防火墙以允许TFTP流量:

firewall-cmd --add-service=tftp --perm

firewall-cmd --reload

 

客户端配置

安装TFTP客户端:

yum install tftp -y

执行tftp命令,连接TFTP服务器,以下是启用详细选项的示例:

[client@thinclient:~ ]$ tftp 192.168.1.164

tftp> verbose

Verbose mode on.

tftp> get server.logs

getting from 192.168.1.164:server.logs to server.logs [netascii]

Received 7 bytes in 0.0 seconds [inf bits/sec]

tftp> quit

[client@thinclient:~ ]$

请记住,TFTP无法列出文件名,因此,在运行get命令以下载任何文件之前,你需要知道文件名。

 

相关主题

在Linux命令行中安装及使用FTP客户端的方法

精选文章
热门文章