在CentOS系统下配置VSFTP(Very Secure FTP Daemon)服务器的步骤如下:
首先,确保你的CentOS系统已经安装了VSFTP。如果没有安装,可以使用以下命令进行安装:
sudo yum install vsftpd
安装完成后,启动VSFTP服务并设置为开机自启:
sudo systemctl start vsftpd
sudo systemctl enable vsftpd
VSFTP的配置文件位于 /etc/vsftpd/vsftpd.conf
。你可以使用文本编辑器(如 vi
或 nano
)来编辑这个文件:
sudo vi /etc/vsftpd/vsftpd.conf
以下是一些常用的配置选项:
anonymous_enable=NO
:禁止匿名用户登录。local_enable=YES
:允许本地用户登录。chroot_local_user=YES
:将用户限制在其主目录中(提高安全性)。write_enable=YES
:允许FTP用户上传和下载文件。chroot_list_enable=YES
:如果需要,可以创建一个文件(如 /etc/vsftpd/chroot_list
)来限制用户访问的目录。PAM_service_name=vsftpd
:指定PAM认证文件名。guest_enable=YES
:启用虚拟用户功能,guest_username
指定虚拟用户的宿主用户名。确保防火墙允许FTP流量。你可以使用 firewall-cmd
命令来配置防火墙:
sudo firewall-cmd --permanent --add-service=ftp
sudo firewall-cmd --permanent --add-port=21/tcp
sudo firewall-cmd --reload
如果你的系统启用了SELinux,可能需要调整一些策略以允许VSFTP正常工作。你可以临时禁用SELinux进行测试:
sudo setenforce 0
或者,你可以配置SELinux策略以允许VSFTP:
sudo setsebool -P ftp_home_dir on
sudo setsebool -P allow_ftpd_full_access on
创建一个新的FTP用户,并为其设置主目录:
sudo useradd -d /var/ftp/myuser -s /sbin/nologin myuser
sudo passwd myuser
然后,编辑 /etc/vsftpd/chroot_list
文件,将用户添加到列表中:
echo "myuser" | sudo tee -a /etc/vsftpd/chroot_list
应用配置更改后,重启VSFTP服务以应用更改:
sudo systemctl restart vsftpd
最后,启用VSFTP服务在系统启动时自动启动:
sudo chkconfig vsftpd on
你可以使用FTP客户端(如 ftp
命令行工具或FileZilla)来测试VSFTP服务器是否正常工作。例如:
ftp localhost
输入用户名和密码进行登录,然后尝试上传和下载文件以验证配置是否正确。