1. 程式人生 > >Linux redhat6.6 iptables 配置

Linux redhat6.6 iptables 配置

1.防火牆啟動:

service iptables start

檢視防火牆rules:(能夠看到埠處資訊)

iptables -L -n

想設定新的規則先清除原有的防火牆規則:

iptables -F        清除預設表filter中的所有規則鏈的規則

iptables -X        清除預設表filter中使用者自定鏈中的規則

這些配置就像用命令配置IP一樣,重起就會失去作用),永久儲存.

/etc/rc.d/init.d/iptables save   (寫入配置檔案中)或者用以下命令:

service iptables save

重啟iptables服務:

service iptables restart

2.設定預設規則::

當超出了IPTABLES裡filter表裡的兩個鏈規則(INPUT,FORWARD)時, DROP(放棄).,控制流入資料包.

iptables -P INPUT DROP          

iptables -P OUTPUT ACCEPT

iptables -P FORWARD DROP

對於OUTPUT鏈,也就是流出的包不用做太多限制,而是採取ACCEPT,也就是說,不在規則裡的包通過。

INPUT,FORWARD兩個鏈採用的是允許什麼包通過,而OUTPUT鏈採用的是不允許什麼包通過(流出)。

2.1新增埠級的規則(來限制服務):

個人理解:要使用什麼服務,則設定相關服務埠的規則。例:

要使用ssh服務,ssh預設port為22,則設定:

iptables -A INPUT -p tcp --dport 22 -j ACCEPT

iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT

2.2新增IP級的規則(來限制某個IP可以做什麼,或者某個IP不能做什麼,根據具體需求設定):

例:只允許192.168.0.3的機器進行SSH連線:

iptables -A INPUT -s 192.168.0.3 -p tcp --dport 22 -j ACCEPT

若允許同一網段如同一區域網的使用者可以進行連線則可以:

用 192.168.0.0/24 表示192.168.0.1-255端的所有IP.

24表示子網掩碼數.要記得刪掉 /etc/sysconfig/iptables 裡的這一行:

-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT 因為它表示所有地址都可以登陸.

或採用命令方式:

iptables -D INPUT -p tcp --dport 22 -j ACCEPT

然後儲存,再次強調,凡是採用命令的方式,只在當時生效,如果想要重啟系統或者重啟服務後也起作用,那就要儲存.寫入到/etc/sysconfig/iptables檔案裡。

/etc/rc.d/init.d/iptables save

 

       以上是我學習並驗證了部落格園一個博主寫的文章後整理的,都是我實際嘗試完成的操作,博主寫的文章中還有一部分我沒有嘗試,大家感興趣的話可以嘗試下。慶幸沒有生在一個對知識敝帚自珍的年代,感謝這個知識可以分享的時代。

連結如下:https://www.cnblogs.com/alimac/p/5848372.html#commentform