201503201630IPv6 WebServer Permission denied - Apache - CentOS

聽了十幾年的 IPv6 八拉八拉,但一直都沒真的導入,印象跟應用也就停在那個 128bits 跟用不完的 IP Address,直到最近政府要求全面使用 IPv6 才開始使用他,但怎麼 apache 會出現 Permission denied 呢?

狀況:
> Server 端 IPv6 已啟動
> Client 可以用 ping6  Server's IPv6 地址,有回應
> Client 可以用 ssh  Server's IPv6 地址,可以登入
> Server Local 端可以瀏覽自己的 IPv6 下的網頁內容

懷疑:
> iptables 問題 (X)
> selinux 問題 (X)
> IPv6 Prefix 錯誤導致連不到 (X,SSH都可以連了)

-------------------------------------------------

問題所在:

在 CentOS 6 環境下,其 iptables 是還有另外一套 ipv6 版本的相關檔案,為
sudo vi /etc/sysconfig/ip6tables      // 設定檔
sudo /etc/init.d/ip6tables                // 啟動檔
sudo /sbin/ip6tables -L -n               // 執行檔,觀看目前 iptables for IPv6 rules

/etc/sysconfig/ip6tables 的內容預設為 

# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p ipv6-icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp6-adm-prohibited
-A FORWARD -j REJECT --reject-with icmp6-adm-prohibited
COMMIT

從預設設定檔來看,你會發現他預設是允許所有 IPv6 的IP以SSH方式連進來,並且接受 ICMP PING的測試

看到這我想大家都懂了,只要把你要允許的服務PORT跟IP限制加進去就對了
-A INPUT -m state --state NEW -p udp --dport 53 -j ACCEPT

然後再重新啟動「ip6tables」就可以了
sudo /etc/init.d/ip6tables restart

這樣 WEB 就能透過 IPv6 的方式連進來了

註:要以 IPv6 測試網址要用  http://[ ipv6 ]    加上中括弧的方式連結,例如:http://[2001:b000:180:3::8011]/      這是 Hinet 的網站
而大家喜歡用的 Hinet IPv6 DNS 為何呢?
2001:b000:168::1  跟 2001:b000:168::2

~End

 

 

回應
關鍵字
Google Search
Google
累積 | 今日
loading......
平均分數:0 顆星
投票人數:0
我要評分:
Google