要限制Linux FTP服务器的访问IP,您可以使用以下方法之一:
方法1:使用iptables限制IP访问
首先,确保您的系统已安装了iptables。在大多数Linux发行版中,iptables是预装的。如果没有,请使用以下命令安装:
对于基于Debian的系统(如Ubuntu):
sudo apt-get update
sudo apt-get install iptables
对于基于RPM的系统(如CentOS、Fedora):
sudo yum update
sudo yum install iptables
使用以下命令允许特定IP访问FTP服务器:
sudo iptables -A INPUT -p tcp --dport 21 -s 允许的IP地址 -j ACCEPT
将“允许的IP地址”替换为您要允许访问FTP服务器的实际IP地址。例如,如果您要允许IP地址为192.168.1.100的用户访问FTP服务器,请执行以下命令:
sudo iptables -A INPUT -p tcp --dport 21 -s 192.168.1.100 -j ACCEPT
保存iptables规则。这将确保在系统重启后规则仍然有效。
对于基于Debian的系统:
sudo iptables-save > /etc/iptables/rules.v4
对于基于RPM的系统:
sudo service iptables save
方法2:使用vsftpd配置文件限制IP访问
打开vsftpd配置文件。通常,该文件位于/etc/vsftpd/vsftpd.conf。使用文本编辑器打开它,例如:
sudo nano /etc/vsftpd/vsftpd.conf
在配置文件中,找到或添加以下行:
tcp_wrappers=YES
如果您使用的是旧版本的vsftpd,可能需要添加以下行:
listen=YES
保存并关闭配置文件。
编辑/etc/hosts.deny和/etc/hosts.allow文件,以限制或允许特定IP访问FTP服务器。
打开/etc/hosts.deny文件:
sudo nano /etc/hosts.deny
添加以下行以拒绝所有IP访问FTP服务器:
vsftpd: ALL
打开/etc/hosts.allow文件:
sudo nano /etc/hosts.allow
添加以下行以允许特定IP访问FTP服务器:
vsftpd: 允许的IP地址
将“允许的IP地址”替换为您要允许访问FTP服务器的实际IP地址。
重启vsftpd服务以应用更改:
对于基于Debian的系统:
sudo systemctl restart vsftpd
对于基于RPM的系统:
sudo systemctl restart vsftpd.service
现在,您的Linux FTP服务器已限制为仅允许特定IP地址访问。