在Debian上设置FTP服务器并限制访问,可以通过多种方法实现。以下是一些常见的方法:
安装vsftpd
sudo apt update sudo apt install vsftpd 配置vsftpd 编辑/etc/vsftpd.conf文件:
sudo nano /etc/vsftpd.conf 进行以下配置:
listen=YES anonymous_enable=NO local_enable=YES write_enable=YES chroot_local_user=YES allow_writeable_chroot=YES userlist_enable=YES userlist_file=/etc/vsftpd.userlist userlist_deny=NO 创建用户列表文件 创建并编辑/etc/vsftpd.userlist文件,添加允许访问的用户:
sudo nano /etc/vsftpd.userlist 添加用户名,每行一个。
重启vsftpd服务
sudo systemctl restart vsftpd 配置防火墙 使用ufw(Uncomplicated Firewall)限制FTP端口(默认21)的访问:
sudo ufw allow 21/tcp sudo ufw enable 安装Pure-FTPd
sudo apt update sudo apt install pure-ftpd-common pure-ftpd 配置Pure-FTPd 编辑/etc/pure-ftpd/auth/openldap.conf文件(如果你使用LDAP认证)或/etc/pure-ftpd/pure-ftpd.conf文件:
sudo nano /etc/pure-ftpd/pure-ftpd.conf 进行以下配置:
ListenPort 21 ChrootEveryone yes NoAnonymous yes 重启Pure-FTPd服务
sudo systemctl restart pure-ftpd 配置防火墙 使用ufw限制FTP端口(默认21)的访问:
sudo ufw allow 21/tcp sudo ufw enable 如果你只想允许特定IP地址访问FTP服务器,可以在vsftpd.conf或pure-ftpd.conf中添加IP限制。
编辑/etc/vsftpd.conf文件:
sudo nano /etc/vsftpd.conf 添加以下行:
tcp_wrappers=YES 然后编辑/etc/hosts.allow和/etc/hosts.deny文件:
sudo nano /etc/hosts.allow 添加允许的IP地址:
vsftpd: 192.168.1.1 vsftpd: 192.168.1.2 sudo nano /etc/hosts.deny 添加拒绝所有其他IP地址:
vsftpd: ALL 编辑/etc/pure-ftpd/pure-ftpd.conf文件:
sudo nano /etc/pure-ftpd/pure-ftpd.conf 添加以下行:
RequireValidShell off 然后编辑/etc/pure-ftpd/auth/openldap.conf文件(如果你使用LDAP认证)或/etc/pure-ftpd/pure-ftpd.conf文件:
sudo nano /etc/pure-ftpd/pure-ftpd.conf 添加IP限制:
<Limit LOGIN> Order deny,allow Deny from all Allow from 192.168.1.1 Allow from 192.168.1.2 </Limit> 重启服务:
sudo systemctl restart pure-ftpd 通过以上方法,你可以有效地限制Debian FTP服务器的访问。选择适合你需求的方法进行配置即可。