温馨提示×

如何限制Linux FTP访问IP

小樊
49
2025-08-18 05:12:16
栏目: 智能运维

要限制Linux FTP服务器的访问IP,您可以使用以下方法之一:

方法1:使用iptables限制IP访问

  1. 首先,确保您的系统已安装了iptables。在大多数Linux发行版中,iptables是预装的。如果没有,请使用以下命令安装:

    对于基于Debian的系统(如Ubuntu):

    sudo apt-get update sudo apt-get install iptables 

    对于基于RPM的系统(如CentOS、Fedora):

    sudo yum update sudo yum install iptables 
  2. 使用以下命令允许特定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 
  3. 保存iptables规则。这将确保在系统重启后规则仍然有效。

    对于基于Debian的系统:

    sudo iptables-save > /etc/iptables/rules.v4 

    对于基于RPM的系统:

    sudo service iptables save 

方法2:使用vsftpd配置文件限制IP访问

  1. 打开vsftpd配置文件。通常,该文件位于/etc/vsftpd/vsftpd.conf。使用文本编辑器打开它,例如:

    sudo nano /etc/vsftpd/vsftpd.conf 
  2. 在配置文件中,找到或添加以下行:

    tcp_wrappers=YES 

    如果您使用的是旧版本的vsftpd,可能需要添加以下行:

    listen=YES 
  3. 保存并关闭配置文件。

  4. 编辑/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地址。

  5. 重启vsftpd服务以应用更改:

    对于基于Debian的系统:

    sudo systemctl restart vsftpd 

    对于基于RPM的系统:

    sudo systemctl restart vsftpd.service 

现在,您的Linux FTP服务器已限制为仅允许特定IP地址访问。

0