在Ubuntu上使用vsftpd(Very Secure FTP Daemon)时,可以通过配置文件来限制访问IP。以下是具体步骤:
vsftpd.conf
配置文件编辑vsftpd配置文件:
打开终端并编辑/etc/vsftpd.conf
文件。
sudo nano /etc/vsftpd.conf
启用IP访问控制: 找到并修改以下配置项:
# 允许本地用户登录
local_enable=YES
# 允许写操作
write_enable=YES
# 启用被动模式
pasv_enable=YES
# 设置被动模式的端口范围
pasv_min_port=50000
pasv_max_port=50100
# 启用IP访问控制
tcp_wrappers=YES
添加IP白名单: 在配置文件中添加以下行来指定允许访问的IP地址或IP范围。
# 允许特定IP访问
listen_address=192.168.1.100 # 替换为你的服务器IP
# 或者使用IP范围
listen_address=192.168.1.0/24 # 替换为你的IP范围
重启vsftpd服务: 保存并关闭文件后,重启vsftpd服务以应用更改。
sudo systemctl restart vsftpd
iptables
进行IP过滤如果你希望通过防火墙规则来限制访问IP,可以使用iptables
。
允许特定IP访问FTP端口: 假设你的FTP服务器运行在默认的21端口,可以使用以下命令允许特定IP访问:
sudo iptables -A INPUT -p tcp --dport 21 -s 192.168.1.100 -j ACCEPT # 替换为你的允许IP
拒绝所有其他IP访问FTP端口:
sudo iptables -A INPUT -p tcp --dport 21 -j DROP
保存iptables规则:
为了确保重启后规则仍然有效,可以使用iptables-persistent
工具保存规则。
sudo apt-get install iptables-persistent
sudo netfilter-persistent save
sudo netfilter-persistent reload
通过以上方法,你可以有效地限制vsftpd的访问IP,提高服务器的安全性。