如何安装和配置 vsftpd Fedora 23

FTP(文件传输协议)是将文件上传到服务器的最常用方法。 每个平台都有大量的 FTP 服务器,例如 vsftpd 和客户端。

飞行前检查

  • 这些说明专门用于在 Fedora 23. 如果您使用的是不同的操作系统,请查看我们的安装 vsftpd 的指南 Fedora 22、CentOS 7 和 Ubuntu 15.04。
  • 我们将登录 Liquid Web Self Managed Fedora 23 服务器作为根。

第 1 步:安装 vsftpd

警告:FTP 是一种不安全的协议。 数据未加密,所有传输(包括用户名、密码、命令和数据本身)都是明文形式。 考虑使用 SSL/TLS 保护您的 FTP 连接。

作为最佳实践,我们将首先更新我们的包:

dnf -y update

现在我们将安装 vsftpd 和任何必需的软件包:

dnf -y install vsftpd

步骤 #2:配置 vsftpd

首先,我们将编辑 vsftpd 的配置文件:

vim /etc/vsftpd/vsftpd.conf

在 vim 中,您可以按“a”进入文本插入模式,然后按键盘上的转义键 (Esc) 返回命令模式。 有关使用 vim 编辑文件的复习,请参阅新用户教程:Vim 文本编辑器概述。 如果您的操作系统上没有安装 vim,您可以按照我们的安装 vim 教程在如何安装 VIM(可视化编辑器 IMproved) Fedora 23.

现在,为了防止匿名 FTP 访问,我们将更改 匿名启用 设置为“否”:

anonymous_enable=NO

我们确实希望允许本地用户登录,所以我们将更改 本地启用 设置为“是”:

local_enable=YES

如果您希望本地用户能够写入目录,您还需要更改 写启用 设置为“是”:

write_enable=YES

出于我们的目的,我们希望本地用户被“监禁”而无法访问服务器的任何其他部分。 为此,我们只需取消注释 chroot_local_user 通过删除前面的“#”来设置,这样:

#chroot_local_user=YES

变成

chroot_local_user=YES

现在使用以下命令保存并退出文件:

:wq

此时,我们将使用新配置重新启动 vsftpd 服务:

systemctl restart vsftpd

最后,我们将 vsftpd 服务设置为在启动时启动:

systemctl enable vsftpd

这应该会产生类似于以下内容的输出:

[root@host ~]# systemctl enable vsftpd
Created symlink from /etc/systemd/system/multi-user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service

第 3 步:允许 vsftpd 通过防火墙

允许默认的 FTP 端口,端口 21,通过 firewalld:

firewall-cmd --permanent --add-port=21/tcp

并重新加载防火墙:

firewall-cmd --reload

可能的错误

我们已经为您解决了一些常见的 vsftpd 错误! 如果遇到问题,请查看以下内容:
错误:500 OOPS:vsftpd:拒绝使用 chroot() 内的可写根运行 [SOLVED]

错误:500 OOPS:priv_sock_get_cmd [SOLVED]

错误:500 OOPS:priv_sock_get_int [SOLVED]