溫馨提示×

如何配置linux iptables防火墻規(guī)則

小樊
82
2024-09-25 13:32:21

在Linux中,iptables是一個(gè)功能強(qiáng)大的防火墻工具,可以用來配置和管理內(nèi)核級(jí)的網(wǎng)絡(luò)防火墻規(guī)則。以下是一些基本的iptables防火墻規(guī)則配置步驟:

  1. 查看當(dāng)前iptables規(guī)則

使用命令 iptables -L 來查看當(dāng)前已經(jīng)存在的iptables規(guī)則。

  1. 清空所有iptables規(guī)則

如果你想要重新開始配置iptables規(guī)則,可以使用命令 iptables -F 來清空所有現(xiàn)有的規(guī)則。

  1. 允許所有傳入的SSH連接(通常用于遠(yuǎn)程管理)

通常,我們允許所有傳入的SSH連接(端口22),以便我們可以遠(yuǎn)程管理服務(wù)器。使用以下命令:

iptables -A INPUT -p tcp --dport 22 -j ACCEPT
  1. 允許特定IP地址的SSH連接

如果你只想允許特定IP地址的SSH連接,可以使用以下命令:

iptables -A INPUT -p tcp -s <IP地址> --dport 22 -j ACCEPT
  1. 阻止所有傳入的HTTP和HTTPS連接(通常用于Web服務(wù)器)

如果你想要阻止所有傳入的HTTP和HTTPS連接,可以使用以下命令:

iptables -A INPUT -p tcp --dport 80 -j DROP
iptables -A INPUT -p tcp --dport 443 -j DROP
  1. 允許特定IP地址的HTTP和HTTPS連接

如果你只想允許特定IP地址的HTTP和HTTPS連接,可以使用以下命令:

iptables -A INPUT -p tcp -s <IP地址> --dport 80 -j ACCEPT
iptables -A INPUT -p tcp -s <IP地址> --dport 443 -j ACCEPT
  1. 允許所有傳入的ICMP請求(如ping命令)

通常,我們允許所有傳入的ICMP請求,以便我們可以進(jìn)行網(wǎng)絡(luò)診斷。使用以下命令:

iptables -A INPUT -p icmp -j ACCEPT
  1. 記錄所有被拒絕的連接嘗試

如果你想要記錄所有被拒絕的連接嘗試,可以使用以下命令:

iptables -A INPUT -j LOG --log-prefix "REJECTED: " --log-level 4
  1. 保存iptables規(guī)則

在修改完iptables規(guī)則后,你需要保存這些規(guī)則,以便在服務(wù)器重啟后仍然生效。這取決于你的Linux發(fā)行版和iptables版本,可能需要使用特定的命令或工具來保存規(guī)則。例如,在某些發(fā)行版中,你可以使用以下命令:

service iptables save

或者

iptables-save > /etc/sysconfig/iptables
  1. 重啟iptables服務(wù)

最后,你可能需要重啟iptables服務(wù)以使新規(guī)則生效。這取決于你的Linux發(fā)行版和iptables版本,可能需要使用特定的命令或工具來重啟服務(wù)。例如,在某些發(fā)行版中,你可以使用以下命令:

service iptables restart

或者

systemctl restart iptables

請注意,以上命令和步驟可能需要根據(jù)你的具體Linux發(fā)行版和iptables版本進(jìn)行調(diào)整。在進(jìn)行任何更改之前,建議備份當(dāng)前的iptables規(guī)則,并在測試環(huán)境中驗(yàn)證新規(guī)則的正確性。

0