2019年11月27日 星期三

[Centos 5.8] Samba 防火牆設定

在一開始安裝完Centos 5的時候,系統重開機會跑出防火牆設定設定的畫面,這時候是第一次可以設定firewall防火牆,一般是把需要的通訊port打開。

例如:FTP,Telnet,SSH,以及WWW等等 。如果在第一次設定時沒有把這些port打開,之後想要再開啟防火牆時,可以依照下面的方法來做。

1.用root登入主機,以便修改設定後存檔
2.vi /etc/sysconfig/iptables
3.選擇你要開啟的port,然後新增到iptables裡

[root@localhost src]# cat /etc/sysconfig/iptables
# Firewall configuration written by system-config-securitylevel
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Firewall-1-INPUT - [0:0]
-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -p 50 -j ACCEPT
-A RH-Firewall-1-INPUT -p 51 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 445 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 137 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 138 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited

COMMIT


請留意大小寫,並分辨 tcp 和 udp,否則 samba 便會無法正常運作。這些都必須是正確的 —— 我便是從錯字裡學回來!
現在重新開啟防火牆。你可遁兩個途徑在 CentOS 下重新啟動服務
  1. service iptables restart
  2. /etc/init.d/iptables restart
任何一個方法都可行。你喜歡的話,亦可以重新啟動該台伺服器。
註:你可以利用 Redhat 的系統工具來編輯防火牆,但我們不建議如此做。它不會加入 -s 這個參數,並會打開所有 samba 連接埠 137 — 139 和 445,是我們不提倡的局面。
 補充資料
1) 重啟後生效
開啟: chkconfig iptables on
關閉: chkconfig iptables off
2) 即時生效,重啟後失效
開啟: service iptables start
關閉: service iptables stop

沒有留言:

張貼留言