在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服务器的访问。选择适合你需求的方法进行配置即可。
辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读: Debian Java环境如何配置