Linux FTP服務器如何限制訪問IP

Linux FTP服務器如何限制訪問IP

本文介紹幾種在linux系統上限制FTP服務器IP訪問的方法,助您增強服務器安全性。

方法一:利用iptables防火墻

iptables是Linux系統強大的防火墻工具,可精確控制網絡流量。

  1. 授權特定IP訪問FTP:

    sudo iptables -A INPUT -p tcp --dport 21 -s <允許的IP地址> -j ACCEPT

    將替換為允許訪問的IP地址。

  2. 阻止其他IP訪問FTP:

    sudo iptables -A INPUT -p tcp --dport 21 -j DROP
  3. 保存iptables規則:

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

方法二:配置vsftpd服務器

如果您使用vsftpd作為FTP服務器,可通過修改其配置文件實現IP訪問控制。

  1. 編輯vsftpd配置文件:

    sudo nano /etc/vsftpd/vsftpd.conf
  2. 啟用tcp_wrappers:

    tcp_wrappers=YES
  3. 編輯hosts.deny和hosts.allow:

    sudo nano /etc/hosts.deny

    添加以下內容拒絕所有IP:

    vsftpd: ALL
    sudo nano /etc/hosts.allow

    添加以下內容允許特定IP:

    vsftpd: <允許的IP地址>
  4. 重啟vsftpd服務:

    sudo systemctl restart vsftpd

方法三:使用ufw防火墻(ubuntu等)

ufw (Uncomplicated Firewall) 是Ubuntu等發行版易于使用的防火墻工具

  1. 啟用ufw:

    sudo ufw enable
  2. 允許特定IP訪問FTP:

    sudo ufw allow from <允許的IP地址> to any port 21
  3. 阻止其他IP訪問FTP:

    sudo ufw deny 21/tcp
  4. 重新加載ufw規則:

    sudo ufw reload

方法四:借助fail2ban入侵防御

fail2ban可有效阻止惡意IP的FTP訪問嘗試。

  1. 安裝fail2ban:

    sudo apt-get install fail2ban
  2. 配置fail2ban: 編輯/etc/fail2ban/jail.local文件,添加或修改如下配置(根據您的實際情況調整參數):

    [DEFAULT] bantime = 600  # 禁用時間 (秒) findtime = 600 # 檢測時間 (秒) maxretry = 3   # 最大嘗試次數  [vsftpd] enabled = true port = ftp filter = vsftpd logpath = /var/log/vsftpd.log banaction = iptables-multiport
  3. 重啟fail2ban服務:

    sudo systemctl restart fail2ban

選擇以上方法中的任意一種,并根據您的實際環境配置,即可有效限制Linux FTP服務器的IP訪問。 請記住將替換為您的實際IP地址。

? 版權聲明
THE END
喜歡就支持一下吧
點贊10 分享