本文介紹幾種在linux系統上限制FTP服務器IP訪問的方法,助您增強服務器安全性。
方法一:利用iptables防火墻
iptables是Linux系統強大的防火墻工具,可精確控制網絡流量。
-
授權特定IP訪問FTP:
sudo iptables -A INPUT -p tcp --dport 21 -s <允許的IP地址> -j ACCEPT
將替換為允許訪問的IP地址。
-
阻止其他IP訪問FTP:
sudo iptables -A INPUT -p tcp --dport 21 -j DROP
-
保存iptables規則:
sudo iptables-save > /etc/iptables/rules.v4
方法二:配置vsftpd服務器
如果您使用vsftpd作為FTP服務器,可通過修改其配置文件實現IP訪問控制。
-
編輯vsftpd配置文件:
sudo nano /etc/vsftpd/vsftpd.conf
-
啟用tcp_wrappers:
tcp_wrappers=YES
-
編輯hosts.deny和hosts.allow:
sudo nano /etc/hosts.deny
添加以下內容拒絕所有IP:
vsftpd: ALL
sudo nano /etc/hosts.allow
添加以下內容允許特定IP:
vsftpd: <允許的IP地址>
-
重啟vsftpd服務:
sudo systemctl restart vsftpd
方法三:使用ufw防火墻(ubuntu等)
ufw (Uncomplicated Firewall) 是Ubuntu等發行版易于使用的防火墻工具。
-
啟用ufw:
sudo ufw enable
-
允許特定IP訪問FTP:
sudo ufw allow from <允許的IP地址> to any port 21
-
阻止其他IP訪問FTP:
sudo ufw deny 21/tcp
-
重新加載ufw規則:
sudo ufw reload
方法四:借助fail2ban入侵防御
fail2ban可有效阻止惡意IP的FTP訪問嘗試。
-
安裝fail2ban:
sudo apt-get install fail2ban
-
配置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
-
重啟fail2ban服務:
sudo systemctl restart fail2ban
選擇以上方法中的任意一種,并根據您的實際環境配置,即可有效限制Linux FTP服務器的IP訪問。 請記住將替換為您的實際IP地址。
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END