ubuntu中防火牆iptables配置

ubuntu中防火牆iptables配置

特別說明:此文章轉載於(Ubuntu配置iptables防火牆)

搭建web服務器希望通過默認http的默認端口80去訪問,由於雲服務器的80端口是默認不開啓的,所以需要重新配置iptables,使瀏覽器能夠直接訪問。

特別注意一定要使用超管權限,不然部分語句會報錯

1.查看系統是否安裝防火牆

root@localhost:/usr# which iptables
/sbin/iptables
root@localhost:/usr# whereis iptables
iptables: /sbin/iptables /usr/share/iptables /usr/share/man/man8/iptables.8.gz

如果是這樣的信息,那麼表明iptables就是安裝了的。
如果沒有安裝,那麼使用sudo apt-get install iptables安裝。

2.查看防火牆的配置信息

運行命令iptables -L
如果成功配置應該是下面這幅圖展現的內容,如果沒有配置,則顯示的是紅框的內容。
在這裏插入圖片描述

3.新建規則文件

mkdir /etc/iptables #先新建目錄,本身無此目錄
vim /etc/iptables/rules.v4

文件rules.v4的內容編輯如下

*filter
:INPUT DROP [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:syn-flood - [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
-A INPUT -p icmp -m limit --limit 100/sec --limit-burst 100 -j ACCEPT
-A INPUT -p icmp -m limit --limit 1/s --limit-burst 10 -j ACCEPT
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j syn-flood
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A syn-flood -p tcp -m limit --limit 3/sec --limit-burst 6 -j RETURN
-A syn-flood -j REJECT --reject-with icmp-port-unreachable
COMMIT

4.使防火牆生效

iptables-restore < /etc/iptables/rules.v4

5.創建文件,添加以下內容,使防火牆開機啓動

vim /etc/network/if-pre-up.d/iptables

文件iptables的內容編輯如下

#!/bin/bash
iptables-restore < /etc/iptables/rules.v4

當然針對雲服務器,沒有必要,一直都處於開機狀態

6.添加文件的執行權限

chmod +x /etc/network/if-pre-up.d/iptables

7.查看規則是否生效

iptables -L -n

Ubuntu中沒有直接停止關閉iptables的命令,像service iptables stop這類命令,是centos纔有的。關閉的話,可以暫時開放所有端口作爲替代方案

iptables -P INPUT ACCEPT  
iptables -P OUTPUT ACCEPT  
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章