在Ubuntu FTP服务器上实现IP黑名单,可以通过配置vsftpd(Very Secure FTP Daemon)来实现。以下是详细步骤:
如果你还没有安装vsftpd,可以使用以下命令进行安装:
sudo apt update
sudo apt install vsftpd
编辑vsftpd的配置文件 /etc/vsftpd.conf:
sudo nano /etc/vsftpd.conf
在配置文件中添加或修改以下内容:
# 启用IP黑名单
deny_email_enable=YES
banned_email_file=/etc/vsftpd/banned_emails.txt
# 允许本地用户登录
local_enable=YES
# 允许写操作
write_enable=YES
# 允许匿名用户登录(如果需要)
anonymous_enable=YES
# 其他配置项...
创建一个黑名单文件 /etc/vsftpd/banned_emails.txt,并在其中添加你想要屏蔽的IP地址或电子邮件地址:
sudo nano /etc/vsftpd/banned_emails.txt
在文件中添加以下内容(每行一个IP地址或电子邮件地址):
192.168.1.100
user@example.com
保存并关闭配置文件后,重启vsftpd服务以使更改生效:
sudo systemctl restart vsftpd
尝试从被列入黑名单的IP地址或使用被列入黑名单的电子邮件地址登录FTP服务器,确认是否被拒绝访问。
ufw 或 iptables 来配置防火墙规则。例如,使用 ufw 配置防火墙规则:
sudo ufw allow 21/tcp
sudo ufw allow 20/tcp
sudo ufw allow 990/tcp # FTPS控制连接
sudo ufw allow 40000:50000/tcp # 被动模式端口范围
通过以上步骤,你就可以在Ubuntu FTP服务器上实现IP黑名单功能了。