系統升級到CentOS 7後總感受iptables怪怪的,好比無論怎麼保存重啓後都被初始化一下,即使我最後發大絕招啓動時候加命令:
首先iptables-save > /etc/iptables.rules保存當前狀態。
而後再在/etc/rc.local中強制加上linux
|
iptables-restore
/etc/iptables
.rules
|
重啓後雖然規則生效但仔細看規則仍是一些被莫名添加的額外的內容,讓人非常不爽。
web
仔細一google,發現問題之所在了。RedHat在7中更改了系統軟件,再也不使用iptables做爲系統的防火牆,而是使用了FirewallD,可是爲了兼容過去的命令也可使用iptables來設置防禦規則,但啓動的時候自搞了一套。c#
解決方法也很簡單。google
首先,能夠考慮follow官方的想法轉用FirewallD。其實查看一些官方文檔也能用。
可是,我的以爲若沒有顯著的提高也能夠繼續使用原來的iptables。若打算繼續使用iptables, 能夠繼續作以下:spa
備份當前規則rest
1
|
iptables-save > iptables.rules
|
|
|
這時候檢查iptables發現規則被清空了code
1
|
iptables -L -x -n
|
將備份的規則還原orm
1
|
iptables-restore iptables.rules
|
保存當前規則ip
1
|
/usr/libexec/iptables/iptables
.init save
|
若使用minimize版本的安裝,可能會出現提示ci
iptables: Saving firewall rules to /etc/sysconfig/iptables: /etc/init.d/iptables: line 274: restorecon: command not found
這是由於selinux沒有安裝的緣故,缺乏一個組件。安裝policycoreutils便可。
1
|
yum
install
policycoreutils -y
|