FC4 中的 Iptables 設定
○、1.什麼是防火牆?

防火牆就像是一道柵欄,它會檢查來自網際網路或網路的資訊 (通常稱為「流量」),然後根據防火牆的設定決定將其轉向、丟棄或允許它通過您的電腦。
一、關閉IPV6功能
FC4預設 IPv6 是打開的,關閉 IPv6 可能網路速度會更快點,主要是DNS查詢速度的提升。
(This may speed up your DNS lookup times when using the internet.)

要關閉 IPv6 可用以下方法如下:
1. 開啟 /etc/modprobe.conf
2. 加入這一行:
alias net-pf-10 off
更改以上檔案後重新啟動系統,這時 IPv6 便會關閉。
1./etc/sysconfig/network
NETWORKING_IPV6=no
2. /etc/modprobe.conf
alias net-pf-10 off
alias ipv6 off
3.Stop IPv6 Firewall
/etc/init.d/ip6tables stop
chkconfig –level 35 ip6tables off
4. /etc/hosts
127.0.0.1 localhost.localdomain localhost
5.Reboot
參考網址:http://www.mjmwired.net/resources/mjm-fedora-fc6.html#ipv6
二、關閉 SELinux
vi /etc/sysconfig/selinux
SELINUX=enforcing 改成--> SELINUX=disabled
參考網址:http://linux.vbird.org/somepaper/
三、使用SETUP設定防火牆
1.setup

2.啟用(自訂規則)

3.選擇需要的服務(也可自訂)

四、檢查防火牆規則
1.使用 iptables -L -n 命令檢查防火牆規則

2.由 setup 所設定的規則會存放在 /etc/sysconfig/iptables 中,我們可以再作進一步的調整。

五、防火牆規則說明
1.iptables firewall 封包比對判斷流程圖
來源:http://ebtables.sourceforge.net/br_fw_ia/bridge3b.png

2.參考網址:
http://phorum.study-area.org/viewtopic.php?t=41142
3.使用 setup 設定規則 filter table 中除了預設的 INPUT 、 OUTPUT 及 FORWARD 外再自行建立了 RH-Firewall-1-INPUT。
4.將 INPUT 及 FORWARD 導向 RH-Firewall-1-INPUT 中。
註:INPUT是指進入本機;FORWARD是指由一個介面流向另一個介面(例:eth0 <--> eth1)。
5.完全接受 loopback interface 的封包(主機可以存取本身的所有服務項目)
6.允許主機可以接受 ping 等 icmp 封包
7.下面這三行與ipv6 有關,(224.0.0.251 is a multicast address ... you can disable it if you don't want to use mdns ...)
註:可刪除規則下列規則
8.網際網路印表機服務
631/tcp # Internet Printing Protocol
631/udp # Internet Printing Protocol
註:可刪除規則下列規則
9.允許連線出去後對方主機回應進來的封包(包括主動式與被動式的ftp連線)。
當主機對外要建立連線時,遠端主機勢必也要回應封包到原主機,所以回應的封包是要被允許的。
-m state --state ESTABLISHED 扮演很重要角色,那就是允許連線出去後對方主機回應進來的封包。
RELATED 配合 ip_conntrack_ftp (ip_nat_ftp)模組 可以針對連入與連外目的 port 為 21 的 ftp 協定命令溝通進行攔截
在 /etc/sysconfig/iptables-config 中加入
IPTABLES_MODULES="ip_conntrack_ftp"
重新啟動 iptables 服務即可載入指定的模組!
10.允許連線服的項目(tcp/1000、tcp/873、tcp/22、tcp/80等)
11.除了允許的服務外其它回應 icmp封包 「icmp-host-prohibited」
每個type所對應的訊息如下:
icmp-net-unreachable => Destination Net Unreachable
icmp-host-unreachable => Destination Host Unreachable
icmp-port-unreachable => Destination Port Unreachable
icmp-proto-unreachable => Destination Protocol Unreachable
icmp-net-prohibited => Dest Unreachable, Bad Code: 9
icmp-host-prohibited => Dest Unreachable, Bad Code: 10
12.調整過後的規則:

附錄一:Net Ports List
附錄二:一般常用的 PORT