Linux中防火牆有關操作

從配置菜單關閉防火牆是不起作用的,索性在安裝的時候就不要裝防火牆

查看防火牆狀態:
/etc/init.d/iptables status
暫時關閉防火牆:
/etc/init.d/iptables stop
禁止防火牆在系統啓動時啓動
/sbin/chkconfig --level 2345 iptables off
重啓iptables:
/etc/init.d/iptables restart
題外話:
BT或者騾子速度慢用不着關防火牆,只要把相應端口開放就可以了
在文件
/etc/sysconfig/iptables
在系統原始配置的:RH-Firewall-1-INPUT規則鏈增加類似這樣的行:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 39764 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 39764 -j ACCEPT
如果發現原有-j REJECT一類的語句,上面兩句要放在它的前面

1)重啓後生效 
開啓: chkconfig iptables on 
關閉: chkconfig iptables off 或者 /sbin/chkconfig --level 2345 iptables off

2) 即時生效,重啓後失效
service 方式
開啓: service iptables start 
關閉: service iptables stop
iptables方式
查看防火牆狀態:
/etc/init.d/iptables status
暫時關閉防火牆:
/etc/init.d/iptables stop
重啓iptables:
/etc/init.d/iptables restart
(1) 重啓後永久性生效:
開啓:chkconfig iptables on
關閉:chkconfig iptables off

(2) 即時生效,重啓後失效:
開啓:service iptables start
關閉:service iptables stop

需要說明的是對於Linux下的其它服務都可以用以上命令執行開啓和關閉操作。

在開啓了防火牆時,做如下設置,開啓相關端口,

修改/etc/sysconfig/iptables 文件,添加以下內容:
-A RH-Firewall-1-INPUT -m state ——state NEW -m tcp -p tcp ——dport 80 -j ACCEPT

-A RH-Firewall-1-INPUT -m state ——state NEW -m tcp -p tcp ——dport 22 -j ACCEPT

或者:
/etc/init.d/iptables status 會得到一系列信息,說明防火牆開着。
/etc/rc.d/init.d/iptables stop 關閉防火牆

最後:
在根用戶下輸入setup,進入一個圖形界面,選擇Firewall configuration,進入下一界面,選擇Security Level爲Disabled,保存。重啓即可。
======================================================
fedora下
/etc/init.d/iptables stop
=======================================================
ubuntu下:
由於UBUNTU沒有相關的直接命令
請用如下命令
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
暫時開放所有端口

Ubuntu上沒有關閉iptables的命令
=======================================================

iptables 是linux下一款強大的防火牆,在不考慮效率的情況下,功能強大到足可以替代大多數硬件防火牆,但是強大的防火牆如果應用不當,可能擋住的可不光是那些潛在的攻擊,還有可能是你自己哦。這個帶來的危害對於普通的個人PC來說可能無關緊要,但是想象一下,如果這是一臺服務器,一旦發生這樣的情況,不光是影院正常的服務,還需要到現場去恢復,這會給你帶來多少損失呢?


所以我想說的是,當你敲入每一個iptables 相關命令的時候都要萬分小心。

1.應用每一個規則到DROP target時,都要仔細檢查規則,應用之前要考慮他給你帶來的影響。

2.在redhat中我們可以使用service iptables stop來關閉防火牆,但是在有些版本如ubuntu中這個命令卻不起作用,大家可能在網上搜索到不少文章告訴你用iptables -F這個命令來關閉防火牆,但是使用這個命令前,千萬記得用iptables -L查看一下你的系統中所有鏈的默認target,iptables -F這個命令只是清除所有規則,只不會真正關閉iptables.想象一下,如果你的鏈默認target是DROP,本來你有規則來允許一些特定的端口,但一旦應用iptables -L ,清除了所有規則以後,默認的target就會阻止任何訪問,當然包括遠程ssh管理服務器的你。


所以我建議的關閉防火牆命令是


iptables -P INPUT ACCEPT

iptables -P FORWARD ACCEPT

iptables -P OUTPUT ACCEPT

iptables -F

總之,當你要在你的服務器上做任何變更時,最好有一個測試環境做過充分的測試再應用到你的服務器。除此之外,要用好iptables,那就要理解iptables的運行原理,知道對於每一個數據包iptables是怎麼樣來處理的。這樣才能準確地書寫規則,避免帶來不必要的麻煩。

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