Linux防火牆iptables設置

防火牆是保護服務器的重要措施。它可以對訪問權限等做出細粒度的約束。廢話少說,下面我們就來看看如何對防火牆進行設置。

Linux防火牆iptables設置

  相關命令

只允許特定ip訪問80端口:

iptables -I INPUT -p TCP –dport 80 -j DROP

注意dport前面是兩個-

iptables -I INPUT -s specificIp -p TCP –dport 80 -j ACCEPT

第一條命令是禁止所有訪問80端口的請求。第二條就是對特定IP開放80端口。

這個是很有用的。比如,我們可以只讓負載均衡服務器來訪問應用服務器的80端口。

查看設置是否生效:

iptables -L

只允許特定ip訪問多ip服務器上的80端口:

我們可以給一個服務器配置多個ip地址。在第一個命令中,我們是禁止了此臺服務器上的全部ip的.80端口。那麼我們如何只禁止服務器上的一個ip的80端口呢?

下面這條命令只允許來自的ip訪問服務器上的80端口:

iptables -A FORWARD -s -d -p tcp -m tcp –dport 80 -j ACCEPT

iptables -A FORWARD -d -p tcp -m tcp –dport 80 -j DROP

允許指定IP段來訪問80端口:

iptables -I INPUT -p tcp –dport 80 -j DROP

iptables -I INPUT -s -p tcp –dport 80 -j ACCEPT

上面的例子中,就是隻允許這個ip段的ip訪問80端口。

只允許訪問特定網址:

iptables -A Filter -d -j ACCEPT

iptables -A Filter -j DROP

多個端口:

iptables -A Filter -p tcp -m multiport –destination-port 22,53,80,110 -s -j REJECT

指定時間上網:

iptables -A Filter -m time –timestart 17:30 –timestop 8:30 –days Mon,Tue,Wed,Thu,Fri,Sat,Sun -j ACCEPT

禁止某個MAC地址訪問internet:

iptables -I Filter -m mac –mac-source 00:11:22:33:44:55 -j DROP

禁止某個MAC地址的某個端口服務

iptables -I Filter -p tcp -m mac –mac-source 00:20:18:8F:72:F8 –dport 80 -j DROP

禁止某個ip地址的Ping:

iptables –A Filter –p icmp –s –j DROP