2006年4月 3日

[linux-users:106423] iptable-web通信に関して

 お世話になっております。先に質問いたしましたiptableについて
pingに関します点はいまのところ問題ない状態になりまして、引き続き
各種の設定を行っているところです。この作業のためにもインターネット
上の情報を調べることができるようにと思い、webに関するiptable設定
に手をつけているところです。

 Macintosh G3/DTにNICを三枚増設し、各種サーバおよびルータの
機能をもたせようとしています。Gentoo PPC(2.6r15)をインストール

して用いております。ネットワークの構成は以下のとおりです。

|
(WAN:internet)
***.***.47.1
|
|
|
***.***.47.12
----------------------(eth1)--------------------
| |
| G3/DT |
| サーバ |
| (DHCP, NFS, iptable) |
| (etc. 導入予定) |
| |
-------(eth0)---------(eth2)--------(eth3)------
192.168.100.254 192.168.120.254 192.168.130.254
| | |
| | |
| | |
(LAN(0)) (LAN(2)) (LAN(3))
| | |
192.168.100.1-50 192.168.120.1-50 192.168.130.1-50

 まずはLANからインターネットへの出口に相当しますサーバ自身が
インターネット上のwebページを閲覧できるように設定することから
はじめようと思いました。この段階にはマスカレード機能も関係なく、
書籍およびネット上の情報を参照しまして大きく困難なところは
なさそうに思っていましたのに、なかなか成功しないままで苦戦して
おります。

 /usr/local/sbin/rc.ip-masq-testの末尾に
$IPTABLES -A INPUT -p tcp -m tcp --sport 80 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp -m tcp --dport 80 -j ACCEPT
$IPTABLES -A INPUT -p tcp -m tcp --sport 443 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp -m tcp --dport 443 -j ACCEPT
という四行を付加すればすむだろうと思うのですけれど、mozillaを
起動時にページが見つからない旨の英文アラートが表示されて失敗に
終わります。
 どこを勘違いしているのでしょうか。念のため
/usr/local/sbin/rc.ip-masq-test全体を本分の末尾に載せておきます。
不必要な箇所や重複があるところはわずらわしくて申し訳ありません。

# お気づきの点がありましたら、webに関する設定以外につきましても
アドバイスいただきますとありがたいです。

/usr/local/sbin/rc.ip-masq-test
------------------------------------
#!/bin/sh

IPTABLES="/sbin/iptables"

# (WAN:eth1, LAN:eth0,2,3)
WAN_IF="eth1"
LAN_IF1="eth3"
LAN_IF2="eth2"
LAN_IF3="eth0"
LIST="$LAN_IF1 $LAN_IF2 $LAN_IF3"

# IPフォワードの有効化
echo 1 > /proc/sys/net/ipv4/ip_forward

###################################################
#
# NATとフィルターの設定を初期化
#
###################################################

# すべてのルールを削除
$IPTABLES -F
$IPTABLES -t nat -F
$IPTABLES -X

# パケットカウンタをクリア
$IPTABLES -Z

###################################################
#
# 各チェインのデフォルトポリシーを設定
# 使用チェインの作成
#
##################################################

# 初期化/原則破棄
$IPTABLES -P INPUT DROP
$IPTABLES -P FORWARD DROP
$IPTABLES -P OUTPUT DROP

# 正しいTCPコネクションを許可するための基本チェイン(ACCEPT_CONN)を作成
$IPTABLES -N ACCEPT_CONN
$IPTABLES -A ACCEPT_CONN -p TCP --syn -j ACCEPT
$IPTABLES -A ACCEPT_CONN -p TCP --syn -m state --state ESTABLISHED,RELATED -j
ACCEPT
$IPTABLES -A ACCEPT_CONN -p TCP -j DROP

# 単純なpingを受け付けるチェイン(ICMP_PACKET)の作成
$IPTABLES -N ICMP_PACKET
# Destination Unreachable
$IPTABLES -A ICMP_PACKET -p icmp -s 0/0 --icmp-type 3 -j ACCEPT
# Echo Request
$IPTABLES -A ICMP_PACKET -p icmp -s 0/0 --icmp-type 8 -j ACCEPT
# Time Exceeded
$IPTABLES -A ICMP_PACKET -p icmp -s 0/0 --icmp-type 11 -j ACCEPT

# ファイアウォール内の各NICがpingに反応するための設定
## ICMPの出力に対して
### Echo Reply
$IPTABLES -A OUTPUT -p icmp --icmp-type 0 -j ACCEPT
### Host Unreachable
$IPTABLES -A OUTPUT -p icmp --icmp-type 3 -j ACCEPT
### Source Quench
$IPTABLES -A OUTPUT -p icmp --icmp-type 4 -j ACCEPT
### Redirect
$IPTABLES -A OUTPUT -p icmp --icmp-type 5 -j ACCEPT
### Echo Request
$IPTABLES -A OUTPUT -p icmp --icmp-type 8 -j ACCEPT
### TTL Exceeded
$IPTABLES -A OUTPUT -p icmp --icmp-type 11 -j ACCEPT
### Parameter Problem
$IPTABLES -A OUTPUT -p icmp --icmp-type 12 -j ACCEPT
## ICMPの入力に対して
### Echo Reply
$IPTABLES -A INPUT -p icmp --icmp-type 0 -j ACCEPT
### Host Unreachable
$IPTABLES -A INPUT -p icmp --icmp-type 3 -j ACCEPT
### Source Quench
$IPTABLES -A INPUT -p icmp --icmp-type 4 -j ACCEPT
### Redirect
$IPTABLES -A INPUT -p icmp --icmp-type 5 -j ACCEPT
### Echo Request
$IPTABLES -A INPUT -p icmp --icmp-type 8 -j ACCEPT
### TTL Exceeded
$IPTABLES -A INPUT -p icmp --icmp-type 11 -j ACCEPT
### Parameter Problem
$IPTABLES -A INPUT -p icmp --icmp-type 12 -j ACCEPT

# このサーバへのNFSマウントを受け付けるチェイン(ACCEPT_NFS)の作成
$IPTABLES -N ACCEPT_NFS
## いったんフラグメントをすべて通さないと、NFSが正しく動作しない
$IPTABLES -A ACCEPT_NFS -f -j ACCEPT
## statd....ポート32765,32766にバインド
## mountd....ポート32767にバインド
## lockd....ポート32768にバインド
## nfs...ポート2049, portmapper...ポート111 はそれぞれ固定
$IPTABLES -A ACCEPT_NFS -p udp -m multiport --dport 32765:32768,2049,111 -j AC
CEPT
$IPTABLES -A ACCEPT_NFS -p tcp --dport 111 -j ACCEPT
$IPTABLES -A ACCEPT_NFS -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT

###################################################
#
# インターフェースごとにアクセス許可の設定
#
##################################################

# LANからのパケットをWAN側インターフェースでアドレス変換
$IPTABLES -t nat -A POSTROUTING -t nat -o $WAN_IF -j MASQUERADE

# LANへの転送を許可する
$IPTABLES -A FORWARD -i $LAN_IF1 -j ACCEPT
$IPTABLES -A FORWARD -i $LAN_IF2 -j ACCEPT
$IPTABLES -A FORWARD -i $LAN_IF3 -j ACCEPT
$IPTABLES -A FORWARD -m state --state ESTABLISHED -j ACCEPT

# LAN側から入ってきたプロトコルアクセスを許可
$IPTABLES -A INPUT -p ALL -i $LAN_IF1 -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LAN_IF2 -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LAN_IF3 -j ACCEPT

# ループバックを許可する
$IPTABLES -A INPUT -p ALL -i lo -j ACCEPT
$IPTABLES -A OUTPUT -p ALL -o lo -j ACCEPT

# 作成済みのICMP_PACKETチェインをWAN側に適用する
#$IPTABLES -A INPUT -p icmp -i $WAN_IF -j ICMP_PACKET
$IPTABLES -A INPUT -i $WAN_IF -j ICMP_PACKET

# このサーバへのNFSマウントを許可する
for INTERFACE in $LIST ; do
#echo $INTERFACE
## いったんフラグメントをすべて通さないと、NFSが正しく動作しない
$IPTABLES -A INPUT -f -i $INTERFACE -j ACCEPT
## statd....ポート32765,32766にバインド
## mountd....ポート32767にバインド
## lockd....ポート32768にバインド
## nfs...ポート2049, portmapper...ポート111は固定
$IPTABLES -A INPUT -i $INTERFACE -p tcp -m multiport --dport 32765:32768,204
9,111 -j ACCEPT
$IPTABLES -A INPUT -i $INTERFACE -p tcp --dport 111 -j ACCEPT
$IPTABLES -A OUTPUT -o $INTERFACE -m state --state ESTABLISHED -j ACCEPT
done

# web接続
## このサーバからのWAN側へのweb接続を許可
#$IPTABLES -A INPUT -i $WAN_IF -p tcp --dport 80 -j ACCEPT
#$IPTABLES -A OUTPUT -o $WAN_IF -p tcp --dport 80 -j ACCEPT
#$IPTABLES -A INPUT -i $WAN_IF -p tcp --dport 443 -j ACCEPT
#$IPTABLES -A OUTPUT -o $WAN_IF -p tcp --dport 443 -j ACCEPT
#$IPTABLES -A INPUT -i $WAN_IF -m state --state ESTABLISHED -j ACCEPT
$IPTABLES -A INPUT -p tcp -m tcp --sport 80 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp -m tcp --dport 80 -j ACCEPT
$IPTABLES -A INPUT -p tcp -m tcp --sport 443 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp -m tcp --dport 443 -j ACCEPT

## LAN内のマシンからインターネットへの接続を許可
#for INTERFACE in $LIST ; do
#
#done
------------------------------------

--
田中 元 byh01337@xxxxx

投稿者 xml-rpc : 2006年4月 3日 00:38
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/34338
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。