网站搜索

如何在 Fedora 中设置匿名 FTP 下载服务器


FTP文件传输协议的缩写,是一种标准网络协议,通常用于在客户端和服务器之间传输文件,现在它已被更安全和更安全的协议所取代。通过网络传送文件的更快方式。

当今大多数临时互联网用户使用网络浏览器通过 https 直接下载文件,而命令行用户更有可能使用安全网络协议,例如 SCP 或 sFTP。

在本文中,我们将解释如何在 Fedora Linux 中使用安全的 vsftpd 设置匿名 FTP 下载服务器,以广泛分发公共文件。

第1步:在Fedora中安装vsftpd

首先,我们将从更新软件包开始,然后使用以下 dnf 命令安装 vsftp 服务器。

sudo dnf update
sudo dnf install vsftpd

接下来,启动、启用并验证 vsftp 服务器。

sudo systemctl start vsftpd
sudo systemctl enable vsftpd
sudo systemctl status vsftpd

第2步:在Fedora中配置匿名FTP

接下来,打开并编辑 /etc/vsftpd/vsftpd.conf 文件,以允许使用以下条目进行匿名下载。

sudo vi /etc/vsftpd/vsftpd.conf

以下选项控制是否允许匿名登录。如果启用,用户名和匿名都会被确认为匿名登录。

anonymous_enable=YES

以下选项控制是否允许本地登录。我们会将此选项设置为“NO”,因为我们不允许本地帐户通过 FTP 上传文件。

local_enable=NO

以下设置控制是否允许对文件系统进行任何更改。

write_enable=NO

以下设置将阻止 vsftpd 询问匿名密码。我们将此选项设置为“YES”,因为我们允许匿名用户无需询问密码即可登录。

no_anon_password=YES

现在启用以下设置以将目录列表中的所有用户和组信息打印为 FTP。

hide_ids=YES

最后,添加以下选项,这将限制可用于被动式数据连接的端口范围。

pasv_min_port=40000
pasv_max_port=40001

现在您已经配置了 vsftpd,现在打开防火墙中的端口以允许 vsftp 连接以及您在配置中定义的被动端口范围。

sudo firewall-cmd --add-service=ftp --perm
sudo firewall-cmd --add-port=40000-40001/tcp --perm
sudo firewall-cmd --reload

接下来,配置 SELinux 以允许被动 FTP。

sudo setsebool -P ftpd_use_passive_mode on

最后,重新启动 vsftp 服务器。

sudo systemctl start vsftpd

至此,您的匿名 FTP 服务器已准备就绪,现在您可以将文件添加到 /var/ftp 目录中(通常,系统管理员将可公开下载的文件放在 /var/ftp/pub)。

步骤 3:测试匿名 FTP 访问

现在,您可以使用 Web 浏览器或另一个系统上的 FTP 客户端连接到匿名 FTP 服务器。要从 Web 浏览器连接,请输入服务器的 IP 地址。

ftp://192.168.0.106

如果一切正常,您应该会看到 pub 目录。

您还可以使用 -p 选项使用被动模式的 Ftp 客户端从命令行测试 FTP 服务器,如图所示。当要求输入用户名时,您可以输入“ftp”或“anonymous”。

ftp -p 192.168.0.106

结论

在本文中,我们解释了如何仅在 Fedora Linux 中安装和配置 vsftpd 服务器以进行匿名下载。如果您在设置过程中遇到任何问题,请随时在下面的评论部分提出问题。