在Linux系统上安装和配置VSFTP(Very Secure FTP Daemon)是一个相对简单的过程,以下是详细的步骤:
更新系统包
sudo apt update
sudo apt upgrade -y
sudo yum update -y
安装VSFTP
sudo apt install vsftpd -y
sudo yum install vsftpd -y
编辑主要配置文件
配置文件通常位于 /etc/vsftpd.conf
。使用文本编辑器(如 nano
或 vim
)打开并编辑该文件:
sudo nano /etc/vsftpd.conf
常见配置项
anonymous_enable=YES
或 anonymous_enable=NO
:允许或禁止匿名访问。local_enable=YES
:允许本地用户登录。write_enable=YES
:允许本地用户上传文件。chroot_local_user=YES
:将用户限制在其主目录中。ssl_enable=YES
:启用SSL/TLS加密。配置虚拟用户(可选)
sudo touch /etc/vsftpd/virtual_users
echo "user1\npassword1" | sudo tee -a /etc/vsftpd/virtual_users
sudo db_load -T -t hash -f /etc/vsftpd/virtual_users /etc/vsftpd/virtual_users.db
sudo nano /etc/pam.d/vsftpd.virtual
添加以下内容:auth required pam_userdb.so db=/etc/vsftpd/virtual_users
account required pam_userdb.so db=/etc/vsftpd/virtual_users
重启VSFTP服务 使配置生效,重启VSFTP服务:
sudo systemctl restart vsftpd
测试FTP连接 使用FTP客户端连接服务器,验证配置是否生效。例如,使用FileZilla:
无法登录
/etc/vsftpd.conf
中的 local_enable
和 write_enable
配置项是否正确。/var/log/vsftpd.log
),查找错误信息。文件传输失败
sudo ufw allow 20/tcp
sudo ufw allow 21/tcp
sudo ufw reload
sudo setsebool -P allow_ftpd_full_access on
sudo setsebool -P ftp_home_dir on