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