在Debian系统中,使用vsftpd作为FTP服务器时,可以通过配置文件来限制用户的访问权限。以下是一些常见的方法:
首先,确保你已经安装了vsftpd:
sudo apt-get update
sudo apt-get install vsftpd
编辑vsftpd的配置文件 /etc/vsftpd.conf
:
sudo nano /etc/vsftpd.conf
确保以下配置项存在并设置为NO
:
anonymous_enable=NO
如果你只想允许特定的本地用户登录,可以使用userlist_enable
和userlist_file
配置项:
userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NO
然后在 /etc/vsftpd.userlist
文件中添加允许登录的用户列表:
sudo nano /etc/vsftpd.userlist
文件内容示例:
user1
user2
使用chroot_local_user
配置项可以将用户限制在其主目录中:
chroot_local_user=YES
allow_writeable_chroot=YES
你可以选择使用主动模式或被动模式:
ftp_data_port=20
pasv_enable=YES
pasv_min_port=1024
pasv_max_port=1048
保存配置文件后,重启vsftpd服务以应用更改:
sudo systemctl restart vsftpd
确保防火墙允许FTP流量:
sudo ufw allow 20/tcp
sudo ufw allow 21/tcp
sudo ufw allow 1024:1048/tcp
如果你使用的是SELinux,可能需要调整相关策略:
sudo setsebool -P ftp_home_dir on
sudo chcon -Rt svirt_sandbox_file_t /home/*
通过以上步骤,你可以有效地限制vsftpd用户的访问权限,确保系统的安全性和稳定性。