在 CentOS 系統中,使用 iptables
命令可以配置防火墻規則,以阻止特定 IP 地址的訪問。以下是一些基本的步驟和示例命令,幫助你實現這一目標。
首先,確保你有 root 權限或使用 sudo
命令來執行這些操作。
你可以使用以下命令查看當前的 iptables 規則:
sudo iptables -L -n -v
假設你想阻止 IP 地址 192.168.1.100
的訪問,可以使用以下命令:
sudo iptables -A INPUT -s 192.168.1.100 -j DROP
解釋:
-A INPUT
:將規則添加到 INPUT 鏈。-s 192.168.1.100
:指定源 IP 地址為 192.168.1.100
。-j DROP
:丟棄匹配的數據包。如果你想阻止特定 IP 地址訪問特定端口(例如,阻止 192.168.1.100
訪問端口 80),可以使用以下命令:
sudo iptables -A INPUT -p tcp -s 192.168.1.100 --dport 80 -j DROP
解釋:
-p tcp
:指定協議為 TCP。--dport 80
:指定目標端口為 80。CentOS 7 及以上版本使用 firewalld
作為默認防火墻管理工具,而 iptables
規則在重啟后不會自動保存。你可以使用以下命令保存 iptables
規則:
sudo service iptables save
或者使用 firewall-cmd
命令來管理 firewalld
:
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="80" reject'
sudo firewall-cmd --reload
你可以使用以下命令查看保存的 iptables
規則:
sudo iptables -L -n -v
如果你需要刪除之前添加的規則,可以使用以下命令:
sudo iptables -D INPUT -s 192.168.1.100 -j DROP
解釋:
-D INPUT
:從 INPUT 鏈中刪除規則。-s 192.168.1.100
:指定源 IP 地址為 192.168.1.100
。-j DROP
:指定要刪除的規則動作。通過以上步驟,你可以在 CentOS 系統中使用 iptables
命令來阻止特定 IP 地址的訪問。