- ベストアンサー
Redhat7.3でDMZ構築
Redhat7.3を使用して、以下のようにNIC3枚でDMZを構築しようとしています。 WAN | Linux -WWW(DMZ) | LAN 仮に以下のようにIPを設定します。 ・WAN側ネットワーク 172.31.0.0/24 ・eth0(LAN) 192.168.1.1 ・eth1(WAN) 172.31.1.10 ・eth2(DMZ) 172.31.1.11 ・WWW(DMZ内に設置) 172.31.1.12 このとき、以下のような状態になってしまいます。 ・WAN側からWWWにアクセスできない。(pingが通らない) ・WAN側からeth1,eth2へはpingが通る。 ・LinuxからWWWへはpingが通る。 WAN側からWWWにアクセスできるようにするには、どのような設定をすべきでしょうか? 上記の構成以外にも、DMZ側とWAN側が同一セグメントになるような設定があれば、そちらも検討したいので、ご教授願います。
- みんなの回答 (10)
- 専門家の回答
質問者が選んだベストアンサー
> 上記のページのような方法がどのように実現されている > のか気になっているのです。 ( ̄□ ̄;)!!本当だ… でもどう考えても、IPアドレスの無駄遣いとしか思えないのですが…(笑) なんで、こんな設定にしているのか私も理解に苦しみます。 ただ、やり方としてはプライベートアドレスの時と同じような気がします。 1. DNSのwww.hogehoge.comはeth2を指定してやる。 www.hogehoge.com. IN A 172.31.1.11 2. Linuxは、自アドレスへhttpでのアクセスあったとき、WWWサーバーのグローバルIPアドレスへフォーワードする。 Linux→DMZ: outputのtcp,udp,icmpを172.31.1.11から172.31.1.12へaccept DMZ→Linux 同上で流れが逆 3. WWWは全てのポートへのアクセスを禁じ、httpだけを開く。 と言うような【気がします】(^^; でもこれにどんな意味があるのかと言うことは、他の方の回答を期待して下さい(笑)
その他の回答 (9)
- rx-78gp03
- ベストアンサー率43% (138/314)
ちょっと気になったものでTurboLinux5.0でテストして見ました。 DefaultRouteをeth1 192.168.0.0/24をeth0 172.31.1.12/32をeth2をルーティングを設定したところご質問の内容を実現できましたがRedhatでは不可能なんですかね?基本的な部分は一緒はずなんで出来ると思うんですが・・・ 後ブリッジに対するDHCP割り当ては普通?に設定したところうまくいきませんでした(アドレスを取得してくれません)。設定ミスかも知れないんではっきりとは言えませんが・・・
すみません、回答ではないです。 とりあえず「DigitalGate」に関して言えば、 以下ページの「ネットワーク構成」では別セグメントになってますね、 http://www.bit-drive.ne.jp/digitalgate/sales/index.html #1補足にかかれているページは記述誤りではないでしょうか? 「設定画面デモ」で設定を見てみましたが、こちらも別のセグメントに設定されてましたし、 それらしい設定項目もありませんでしたし...。
補足
う~ん、確かに、別セグメントではない設定が、#1の補足で示したページの例だけなんですよね・・・ 記述ミスでしょうか・・・ 話はそれますが、"Sonicwall Plus DMZ"というのが会社にあり、それはWAN側とDMZ側が同じセグメントでした。digitalgateと違うのは、DMZ側にはIPが必要ない点です。 これはブリッジをしているのではないかと思います。 どちらかというと、Sonicwallのような設定ができた方がよさそうな・・・
#7のものです。 すみません、#1補足URLの絵よくみたら別のIPがふられてましたね...。 ブリッジじゃないのか...
補足
回答ありがとうございます。 私としては、ブリッジの方が、IPが1つ少なくてよいので、ブリッジの方がいいと思っています。 そこで、ちょっと思ったのですが、ブリッジにIPを設定する場合、DHCPなどで動的に割り当てることはできるのでしょうか? また、Linuxでのブリッジ設定ツールには、bridge-utilsというものがあります。Redhat7.3からはインストールCDに含まれていると思います。
eth1とeth2をブリッジとして動作させているのでは? #1補足にあるdigitalgateがどうかはわかりませんが、 LinuxやFreeBSDを基として作られているアプライアンス側のファイアウォールも よくブリッジモードとかで動作しますね(普通は3ポート全てかな) 調べてませんが、Linux用ブリッジツールとかもどこかに公開されているのではないでしょうか?
- rx-78gp03
- ベストアンサー率43% (138/314)
>Linuxで、WWW宛をeth2に固定しているのですが、ダメでした。 ダメでしたか・・・・ 直接の回答ではなく恐縮ですが、今の状況は多分次の通りのはずです。ご存知かもしれませんが・・・ eth1とeth2は同一のセグメントの為、相互のルーティングは出来ません。 この為eth1で受け取ったeth2の先にあるipアドレス向けのパケットは認識できないのでこのパケットをeth1では受け取りません。(ちなみにeth2の口にipは自分で持っているため応答します。) これを回避するためにroute addを定義すれば行けるかと思ったんですが。。。 後はもし出来るので在れば、全ての経路情報を静的に定義するぐらいでしょうか?(NATやIPマスカレードを使っていると厄介ですが・・・) これでダメだとLinux単体では無理そうな気がします。後は別途そう言うソフトウェアがあるかどうかですが、私は残念ながら知りません。。。
- Marionette
- ベストアンサー率56% (42/74)
何か勘違いしておられるようですが、172.16.0.0~172.31.255.255はプライベートアドレスですよ! 電気的には切り離されているので(厳密ない意味ではない、ネットワーク的と言った方がいいかも)、フォワードしたのではダメですかね? 自信はありませんが。 取り敢えず、疑似環境で試した結果を報告していただければ、助かります。 >>ポート転送やDNATを使って、それほど難しくなく設定できると思いますが? >これをしてしまうとLANとWANの通信の時に問題になりませんか?私の勘違いかな? おそらく、勘違いです。難しくないかどうかはともかく(わりと面倒)WAN-DMZ, WAN-LAN, LAN-DMZそれぞれ適切な設定さえすれば問題ありません。
補足
> 何か勘違いしておられるようですが、172.16.0.0~172.31.255.255はプライベートアドレスですよ! 勘違いはしていませんよ。"仮に"と書いてます。 > フォワードしたのではダメですかね? 自信はありませんが。 iptablesのPREROUTINGでDNATさせるというのがいいのかもしれませんが、うまく設定できません。そもそも、自身宛でないパケットに対して、PREROUTINGでルール設定できないような気がします・・・
- rx-78gp03
- ベストアンサー率43% (138/314)
補足読みました。 eth1とeth2は同一セグメントと言う事ですね。 DMZにroute addでWWWサーバーをeth2に固定してもダメでしょうか? WIN2000だとこの方法で有効だったと思うんですが、Linuxではこう言った経験が無いのでかなり自信は無いんです。スミマセン 蛇足ですが、先の補足にある >ポート転送やDNATを使って、それほど難しくなく設定できると思いますが? これをしてしまうとLANとWANの通信の時に問題になりませんか?私の勘違いかな?
補足
>DMZにroute addでWWWサーバーをeth2に固定してもダメでしょうか? Linuxで、WWW宛をeth2に固定しているのですが、ダメでした。LinuxがWWW宛のパケットを受け取ってくれません。 ipエイリアスを設定して転送させた方がいいのでしょうか? しかし、これだとまたさらにIPを使ってしまいますよね・・・
- rx-78gp03
- ベストアンサー率43% (138/314)
いくつか分からない事があるので。。。 WAN側ネットワークとWAN向けのeth2のセグメントが違うのはなぜでしょう? WANの先にあるのは172.31.0.0/24で良いんですか? > 上記の構成以外にも、DMZ側とWAN側が同一セグメントになるような設定があれば、 > そちらも検討したいので、ご教授願います。 逆にセグメントを別にしてる理由は何故でしょう?セグメントが別だとWAN側の先でルーティングが必要になるんで大変だと思うのですが? No.1の方の補足にあるURLはプロバイダ接続でサーバーを立てる例だと思うのですが同様ですか?(企業内のWAN等では無いのでしょうか?)
補足
回答ありがとうございます。 > WAN側ネットワークとWAN向けのeth2のセグメントが違うのはなぜでしょう? すみません!間違えました!以下のように修正させていただきます。 ・WAN側ネットワーク 172.31.1.0/24 ・eth0(LAN) 192.168.1.1 ・eth1(WAN) 172.31.1.10 ・eth2(DMZ) 172.31.1.11 ・WWW(DMZ内に設置) 172.31.1.12 > 逆にセグメントを別にしてる理由は何故でしょう?セグメントが別だとWAN側の先でルーティングが必要になるんで大変だと思うのですが? ポート転送やDNATを使って、それほど難しくなく設定できると思いますが? DMZ内のサーバにWAN側と同じネットワークのアドレスを設定できる設定を知りたいのです。 >No.1の方の補足にあるURLはプロバイダ接続でサーバーを立てる例だと思うのですが同様ですか?(企業内のWAN等では無いのでしょうか?) Linuxの設定として、No.1の補足にあるページのようなことをやるにはどうしたらいいのかが知りたいのです。
- kusukusu
- ベストアンサー率38% (141/363)
> ・WWW(DMZ内に設置) 172.31.1.12 なぜ、DMZ内のWebサーバーにグローバルIPアドレスを振っているのですか? 私はこういう設定はしたこと内ので良く理解できません(^^; > WAN側からWWWにアクセスできるようにするには、どのような設定をすべきでしょうか? Linuxではどういうパケットフィルタリングをしているのでしょうか? ちゃんと、eth1へのポート80や443(デフォルトのhttp,httpsのポート)へのアクセスを、WWWにフォーワードしていますか? tcp,udpの設定はどうなっていますか? > 上記の構成以外にも、DMZ側とWAN側が同一セグメントになるような設定があれば、 > そちらも検討したいので、ご教授願います。 ???WAN側と、DMZ側が同一セグメントであれば、そもそもDMZとは言わないのでは? うん?。。。私も頭が混乱してきました(^^;
補足
回答ありがとうございます。 以下のページにあるような設定をしたかったのです。 http://www.bit-drive.ne.jp/digitalgate/sales/network/flets-sdsl-2.html DMZ内サーバにローカルIPを割り当てて、ポート転送や、IPエイリアス+NATといった設定はわかるのですが、上記のページのような方法がどのように実現されているのか気になっているのです。
補足
説明が不足していたようで、申し訳ありません。 ・WAN側からWWWにアクセスできない。(pingが通らない) というのは、WAN側の別のマシンからという意味です。 もっと細かく環境を書くと、以下のようになります。 LinuxA | router | |(WAN側) | Linux-WWW(DMZ) | LAN この状態で、LinuxAからWWWへpingが通りませんでした。 いろいろと試したところ、routerに対して、WWW宛のパケットはLinuxのeth1宛に送るという静的経路を追加したところ、pingが通るようになりました。 また、情報をお寄せいただいたとおり、172.31.1.12/32をeth2をルーティングという設定もLinuxに行ないました。 このとき、WWWからLinuxAにpingが通らず、悩んでいたのですが、"ping -n"でやったところ、うまくいきました。DNSサービスが起動していたので、停止したところ、"-n"なしでも通るようになりました。 報告が遅れましたことをお詫びします。 ブリッジのDHCP設定についてはまだ試していません。