21-5. 続インタ−ネット接続周りの事 (1) プロキシサ−バとしての IWSS * インタ−ネット周りの構成図 ( この章のための ) □Router □ 仮想IP | |.3 バリアセグメント -------------*------------------- 202.241.128.0 | △PC2 .2| Mail-Relay, DNS1次 |.2 ( Vlan20 ) ------- □hostA ------------------- 192.168.3.0 FireWall-1|hostG|.2 |.1 DMZ |.9 から | |---------------- 192.168.2.0 -------.9 ( Vlan30 ) UTMへ ------- Mail-Store | L3 |------- 192.168.4.0 .2| □hostB ◇Proxy ◆ ◆ ------- △PC1 | |.1 |.5 | | |.9 |.7 ( Vlan10 ) -------------*---------------------------------------------------- 192.168.1.0 10年来稼働させてきたプロキシサ−バをHP仮想サ−バによる IWSS の仮想マシンに置 き換えること。万が一、社内のパソコンからブラウジングが遅くなってしまったら。そう いう想定もしておかなければならない。IWSS は内部では Squid を使ってはいるが、IWSS としてはキャッシュはしていない。しかし今どきのホ−ムペ−ジのコンテンツは動的に生 成されるのが多いのでないか、だからこれまで使ってきたプロキシサ−バ(NetCache)でも、 キャッシュはもうほとんど有効には機能してないように思う。遅くなった場合、その時は フリ−ソフトの Squidを設置してみるか。OpenBlockS には Squid を設定する画面が用意 されている、これをやってみて制御ファイルの設定を参考にしてみるか。IWSSはWebレ ピュテ−ションとして使い、コンテンツキャッシュは Squidに担当させるのである。いわ ゆる多段構成のプロキシサ−バの形態にするかである。 * 改めてプロキシサ−バの働き `2b/10 プロキシサ−バを介せば、外へのWWWアクセスは、内部ネットワ−クのパソコンはファ イアウォ−ルにオブジェクトを登録しなくてもいいし、ル−ルも書かなくてもいい。この ことの確認のため、パソコンのDNSの指定するところを、何も書かなくてアクセスでき るか試してみる、できました。ブラウザで http://www.asahi.com/とかドメイン名を書い て、IPアドレスをちゃんとDNSで引いてくる。このDNSはプロキシサ−バのマシン の例えば Red HatなどUNIX系なら /etc/resolv.conf に記述してあるDNSサ−バの IPアドレスである。/etc/resolv.conf には、ここでは 202.241.128.3 を書いているこ とになっている。ファイアウォ−ルではプロキシサ−バのマシンからDNSサ−バのマシ ンへ 53/UDP パケットを通すこと。上の図でいえば 192.168.1.5 -> 202.241.128.3 への パケット。/etc/resolv.conf には仮想IPがいい、実IPアドレスは指定すべきでない。 * ProxySVR(NetCache) の注意点 プロキシサ−バの挙動についても確認すること。確か ProxySVR でURL変換させる設定 も記述した覚えがある。こんなんがあると厄介だよな。パソコンでプロキシなし、DNS 指定 202.241.128.3 で、http://www.nix.co.jj にアクセスできるので問題はないだろう。 config.http.rewrite_uri.prefix の設定は、 かつて FireWall-1 で社内から自社ホ−ム ペ−ジが http://www.nix.co.jj でアクセスできなかったことがあった。それを回避する ために、プロキシサ−バで逃げた設定の名残である。 ProxySVR のIPアドレスをパソコ ンでDNS指定ができる、Windows パソコンのロ−カルエリア接続で設定するDNSサ− バである。これは ProxySVR の中でDNSサ−バが稼働しているとみなしていい。もしパ ソコンでこのDNSを指定していたら、プロキシサ−バを置き換えると困る。 IWSS では DNSうんぬんの設定がないので、パソコンで利用するDNSサ−バにはならない。 $ telnet 192.168.1.5 cache> show config.* config.http.rewrite_uri.prefix = \\ http://www.nix.co.jj http://202.241.128.4 << 自社のWWWサ−バに。 \\ config.system.gateways.ip = 192.168.1.9 << 主ネットワ−ク装置に。 config.system.dns.search = on config.system.dns.nameservers = \\ 202.241.128.3 << 自社の1次であるDNSサ−バ。 10.10.10.1 << プロバイダの2次DNSサ−バ。 * IWSS をしばらくランニングテスト YouTube を観ようとしたら、画面にこんなんがでた。YouTube は Flashを利用していると SI業者の人と話していてそう聞いた。IWSS はデフォルトで Flash のストリ−ムを止め るようにしているのかも知れない。それで動画を表示しないのかも。しかし IWSS の画面 を隅から隅までみても、Flash うんぬんらしきメニュ−が見当たらない。 ------------------------------------------------------ | | エラ−が発生しました。しばらくしてからもう一度 | お試しください。 | PC から http://192.168.1.10:1812 へアクセスして IWSS の設定画面で、 関係しそうな メニュ−がないか探したがない。Googleでちょっと検索したら、すぐに解答が見つかった。 TREND MICRO の http://esupport.trendmicro.com/solution/en-us/1053973.aspx という Knowledge Base に。英文だがすぐに処置のやり方は分かるので、各自やってみて下さい。 # cd /var/iwss/;ls int* intscan.ini intscan.ini.lock intscan.ini.tmp # cp intscan.ini instscan.ini.org /var/iwss/instscan.ini 途中略 ---------------------------------------------- |#server_skip_content= << 元々は何も設定されてなかった。コメントにはなって |#server_skip_content_sp= << 無かった。最初はこうだったよと、ここに書いただけ。 | | |server_skip_content=Content-Type: video/x-flv; << こう |server_skip_content_sp=; << する。 # cd /etc/rc2.d Web画面でサ−バの停止とか起動とかの指定す # ./S99IWSS restart るメニュ−がない。修正したらコマンドで再起動 Stopping SVCMonitor daemon ... させる。いろいろやって2分ぐらいかかったか。 | The InterScan Web Security Suite 3.1 MCP Agent is running now. * IWSS のプロキシサ−バとしての注意 `2b/12 取引先のEDIを利用するに当り、おかしなポ−ト番号を使うケ−スがままみられる。だ いぶ前からそういう傾向はあった。HTTP で 80番や 8080番の他に、 適当なポ−ト番号を 使うケ−スはこれまでも5〜6社あった。HTTP でなく HTTPS でもそういうのがでてきた。 先日も https://www.xxx.co.jp:8056 とか。そんなの有りかなと思うのだが、大手企業さ んでやってくれていることなので、対応するしかない。ファイアウォ−ルでもそのパケッ トを通すようにして、プロキシサ−バでも扱えるようにしなければならない。ProxySVRで は別にどんなポ−ト番号のでもプロキシとして働く。 IWSS でも漠然とそうだろうと思っ ていたら違った。ちゃんと IWSS の中で登録しなければならない。 [HTTP]->[設定]->[アクセス管理] _______________ _________ ___________ ____________ |クライアントIP\|サ−バIP\|宛先ポ−ト\|HTTPSポ−ト\ |---------------------------- ------------------ |---------------------------------------------------------| 許可にして番号を書 | 処理: [許可 ▽] | いて[追加]。ただの | ○すべて | HTTPは{宛先ポ−ト} | ◎ポ−ト番号 | の方でやる。 | ○ポ−ト範囲 | | ポ−ト番号: [8056 ][追加] | ファイアウォ−ルに |---------------------------------------------------------| はいろんなポ−ト番 | ポ−ト番号 評価順(降順) 削除 | 号を通すよう追加し |---------------------------------------------------------| ていったが、こちら | (拒否)すべて 1 ▽ § | は5つぐらい追加し | (許可)443 2 △▽ § | て後は範囲指定した。 | (許可)563 3 △ § | "(許可)1025~65535"。 ----------------------------------------------------------- * IWSS を本稼働させるための調整をする `2c/02 最初はできるだけ IWSS でやらせることを身軽にして、様子を見ることにする。負荷がか かってプロキシサ−バとしての働きが能力不足になるかも知れない。社内のパソコンでブ ラウジングが遅くなって、使い物にならないという事態はできるだけ避けたい。 HTTPトラフィックのみを監視する。{□アプレット/ActiveX対策を有効にする}、デフォル トは〆。{□URLフィルタを有効にする}はそのまま、そもそもライセンスを買ってない。 {□IntelliTunnel を有効にする}。HTTP検索ポリシ−は、{□ウィルス検索を有効にする}、 {〆Webレピュテ−ションを有効にする} は一番肝心な設定でそのまま。{□URLの信頼を有 効にする}、これは〆入れた方がいいかも。{□URLブロックを有効にする}、デフォルト〆。 メニュ−[HTTP]->[HTTP検索]->[ポリシ−]の[Webレピュテ−ションル−ル] は感度レベル は◎中、その他の機能は〆ファ−ミング検索を含める、〆フィッシング検索含める、ウィ ルス検索を有効にする場合は、ここのメニュ−の [ウィルス検索ル−ル] で {サイズの大 きいファイルの処理} で {◎配信前に検索} になっているのを {遅延検索} を◎にした方 がいいかも。本書では、とりあえずウィルスの検索はしないことにする。 その他、メニュ−[通知]の[通知先の設定] でメ−ルキュ−を確認する間隔は初期 [1] を [10] に、EHLO(Extended Hello) コマンドを使用するには〆なし。ログを見るのをテスト 期間にやっておけばよかったが、YouTube の動画が出てこない時のログの様子とか。いか ん IWSS のログについては全然気に留めてなかった、NetCache の時は結構見たけど。 * 実際にプロキシサ−バを IWSS に換えて `2c/02 適当なIPアドレスで仮想マシンを動かしていたのを、本番稼働のIPアドレスに付け替 える。192.168.1.5 にする。仮想マシンでコンソ−ルを出して # system-config-network 画面をだしておく。これまでのプロキシサ−バのネットワ−ク・ケ−ブルをハブから抜く。 # system-config-network でIPアドレスを 192.168.1.5 にして、[停止] そして[起動] をクリック。実際やってものの数秒でどちらも終わった。MACアドレスを覚えていると かなどまるでなく、すんなり変わった。こんなことならもっと早く替えればよかった。 昼休み頃に混んでいるサイト、空いているサイトというのがあるはず。例えばIIJのサ イト www.iij-tech.co.jp なんかは空いているのでないか、サ−バの性能もそれなりので 安定した応答をするのでないか。新聞社は中間ぐらいか、ほどほどに昼でもアクセスがあ るような気がする。個人が見るようなサイトは昼休みは混んでいるのでないか。mixiなん かはまるで出てこんぞ。自社ネットワ−クからどこのサイトを見たら指針となるか。とも かく目ぼしいサイトをピックアップして、定期的に観測するほかないか。 IWSS のパフォ−マンスについては、 実はトレンドマイクロのエンジニアに接触して感触 を聞き出していた。数ヶ月に一度ぐらい、何がしかトレンドマイクロセミナ−が開催され る。その時エンジニアもだいたい居る。セミナ−終わったら皆すぐに帰ってしまうのだが、 いろいろ教えてもらえるチャンスだ。パソコン500台ぐらいで、去年買ったHPの2U のサ−バでメモリたんまり載せた仮想マシンで IWSS を動かすのだけど、持ちますかねと。 ん−、大丈夫ですよと。これで大船に乗った気持ちで作業することができた訳なんです。 * プロキシサ−バ IWSS の操作 `2c/04 IWSS のメニュ−で [HTTP]->[HTTP検索]->[ポリシ−]の[Webレピュテ−ションル−ル] で、 {その他の機能} の〆{ファ−ミング検索を含める}、〆{フィッシング検索含める} だった のを〆を外し、[保存] をクリックすると出てくるのが次の画面。[ポリシ−の配信] をク リックしなければ30分ほかっておくと反映するらしい。しかしもっと大きな変更と思わ れる {ウィルス検索を有効にする} を〆して [保存] クリックしても、配信うんたらとは 出てこない。30分というのは [管理]->[IWSS設定]->[デ−タベ−ス] に設定がある。 -------------------------------------------------------------------------------- | 検索ポリシ− □ウィルス検索を有効にする 〆Webレピュテ−ションを有効にする | | | |----------------------------------------------------------------------------- | || (〆) 変更は保存されましたが配信されていません。初期設定では、指定された | | || 時間に配信が実行されます ([管理]->[IWSS設定]->[デ−タベ−ス])。 | | || 配信する前に、ポリシ−に変更を追加できます。 | | |----------------------------------------------------------------------------- | | 追加 削除 グロ−バルポリシ− | |------------------------------------------------------------------ | ||□ アカウント ポリシ−名 優先度 | | ||----------------------------------------------------------------| | || すべてのアカウント ウィルス検索のグロ−バルポリシ− 1 | | |------------------------------------------------------------------ | |[保存] [キャンセル] [ポリシ−の配信] グロ−バルポリシ− | | | -------------------------------------------------------------------------------- (2) セキュリティ装置の稼働と調整 `2c/01 * FortiGate-310B への置き換え すぐに本番稼働させるのではなく手元においてテストしよう。LANからWAN、LAN からDMZなど、ちゃんと ping など通信ができるかどうか。基本的なことを確認しよう。 FireWall-1 からの置き換え作業は休みの日に出てきて余裕をもってやる。 十分に準備し ておいて10分で切り替え作業を終えるようにしよう。置き換えしてみて、おかしかった らすぐに元に戻せるようにしておく。これまでのファイアウォ−ルは稼働させたままネッ トワ−クケ−ブルを抜くだけにしておく。問題が起きた場合に解決を複雑化させないよう ファイアウォ−ル以外は触らないこととする。例えば、ついでにもろもろのハブをギガビ ット対応に入れ替えるとか、ネットワ−クケ−ブルをカテゴリ5のを5eに交換するとか。 ProxySVR を仮想マシンの IWSS にするとか。そういうことはやらない。 手元に FortiGate-310B を置いて2重化のテストをやってみた。SI業者の設定したのを 見ても2重化の設定自体、分かりやすく簡単そうだった。こんなに簡単に冗長構成がとれ るのなら、他のたとえばWANやインタ−ネット回線の冗長化でも、昨今なら簡単にでき るのでないかと感じた。Aが主で稼働、Bは待機として。Aをシャットダウンした。すぐ にBが主になった。3秒ぐらいで切り替わった。Aを起動してきても主はBのままである。 2台の内どちらがメインでサブになるか、幾つかのル−ルで決められるようだが、それは あまり気にしなくてもいいみたいである。2台ラックにはめて、どちらがどっちだったか 分かるようシ−ルでも貼っておくこと。とりあえず内では上の装置を forti-1で、下のを forti-2 とかしてみる。最初は forti-1 をメインに稼働とする。 * FortiGate-310B のメモなど HA構成の場合、FortiAnalyzer はどこにネットワ−クケ−ブルをつなぐのか。1台なら FortiGate のポ−トに直につなげばいい。他のハブなんかは通らない、通さずにいけるの でログのパケットで少しでもネットワ−クを使わずに済む。それがHAだとどうか?。 FireWall-1 では Sun のマシンのLANのインタ−フェ−スを SNMP のエ−ジェントとし て指定すれば、WANとDMZのインタ−フェ−スも SNMP エ−ジェントとなる?。MRTG のトラフィックが3つ分でてきている、それが FortiGate ではどうなるのか。 灰色の CAT.5e 2メ−トル15センチ、爪の所にカバ−つき。FortiAnalyzer にも同じケ −ブルが1本。結構音はする、オフィスの中に置いておける程ではない。しかし電源入れ た数十秒ブワ−となるだけで、その後はそこそこのファンの音になるにはなるが。 拒否したパケットのログのみ取ることにするか。通過したパケットのログは取らない、取 ってもどんどん押し流されて消えて行くだけである。今回ライセンスは余分なのは買わな かった。ファイアウォ−ルだけを使う。IPSやウィルスチェックなどはやらない。 https://xxx:8056、http://xxx:8056 とかでポ−ト番号を許可する場合。HTTP,HTTPSパケ ットということを認識しているのか。FortiGate はただのパケットフィルタリングでしか ないような気がする。IPSではポ−ト番号は関係なく、パケットその物を見ているはず。 * FortiGate のHA構成について HAはオ−バライド無効が推奨でデフォルトになっている。2台は Active-Standby 構成。 LAN側からのアクセスは https://192.168.1.2/ である、メインもサブの装置うんぬん は関係ない。仮想IPアドレスと仮想MACアドレスが両者の装置に付いている。 --------- WAN ------------------------- Cisco のハブ、 | L2 |----- | WAN | DMZ | LAN | VLANにて。 --------- ------------------------- __| |__ | ____|_________ WAN LAN DMZへ WAN LAN DMZへ ケ−ブルを | | | | | | | | | | 描くのを略、 ---------__| --------- | ---------- ---------- 上のハブヘ。 |Active | |Standby| ------ DMZ | |-----| | |Forti |=====|Forti |―| L2 |----- | |-----| | --------- --------- ------ ---------- ---------- |__ __| | | === はイ−サネットのクロスケ−ブル2本で FortiGateを --------- LAN 接続する。FortiGate 同士でハ−トビ−トしてお互い稼働 | L2 |----- を確認する。冗長化のため図のように3台のL2のスイッ --------- チングハブを使う。VLANで1台にまとめてもみる。 L2スイッチングハブを1個のハブでVLANを切って、論理的に3個として使うという ことで対応してみる。ハブの候補は Catalyst 2960-S LAN Lite、10/100/1000 Mbps 対応 で約27万円。2960 は 10/100 で約20万円。2960G は 10/100/1000、 スタックができ るなどの機能があって約50万円。スイッチングハブも冗長化させるなら、スタックがで きるのがいいらしい?。単独で設置するのなら 2960-S で構わない。LANとDMZのセ グメントにはできれば 1000 Mbps あった方がいい。 WAN側は 100 Mbps で十分だけど。 最近はアライドテレシスのハブでも、こうした高信頼性が求められる場所にでも使うこと が多くなっているらしい。 しかし FortiGate を扱うこのSI業者さんではアライド製品 は保守契約の扱いはしてない。それではいかんがや。冗長構成をとるということは構成要 素のハブなども含めて全体機器を面倒みてもらわないことには。`2b/10 Cisco 2960-S ------------------------------------- | □ □ ...... □ □ ‖ ■ □ | ‖USB、■RS-232C、□管理用 | □ □ ...... □ □ □ □ | 右端の□□はアップリンク用 ------------------------------------- * ファイアウォ−ル移行時の注意または問題 VLANが悪さしないか。Cisco のL3とL2スイッチで何かおかしいことが起きないか。 メ−ルサ−バの Sun のマシンがMACアドレスを放さないか。 何かサ−バでも装置でも 置き換える際に、これまでのIPアドレスとMACアドレスを放さずに、スム−ズに移行 できないことがまま起きる。そうしたことが起こったら冷静に、1つずつMACアドレス をコマンドで装置から消すか、装置を起動し直して新しくMACアドレスを学習させるか。 ここでの話は `2c/01 末頃、FireWall-1 を FortiGate-310Bに置き換える作業で、うまく 行かなかったため、手元に環境を作り検証したことである。UTMを設置して ping が飛 ばないところが出て、それでもう右往左往になった。多分問題は2つあった。ネットワ− ク装置のVLAN辺りがおかしいこと、それにUTMのファイアウォ−ルのポリシ−のル −ルがおかしいこと。手元でのテストでDNSパケットのル−ルが足らなかったことを見 つけた。それらを見直し再度、およそ1ヶ月後、置き換えにチャレンジしたのであった。 ■SSL-VPN ■Mail-Relay,DNS Cisco 2950と2960-S をWAN,DMZ,LAN ----|----------|--- でVLAN切った。2950は手元でテ | □ □ □ | Allied のただのハブ スト環境で使ったり。Vlanの番号を -----------|-------- 3750と2950で合わせるのは同じにし WAN-Router| た方がいいらしい。192.168.1.0 の ■ | 3750 でのVlan番号は10、2950 も10 -----|----|-------- 装置A FireWall-1から にする。2950 のWAN,DMZのVlan番号 | WAN□ DMZ□ LAN□ | 装置B FortiGate-310Bへ は 3750 のと違えること。同じにし -----------------|-- てテストしたが一応問題はなかった。 Mail-Store |192.168.1.2 △PC ■ | Mail-Relay と Mail-Store がSunの --|-------|----|-- マシンだと、装置Aの WAN,DMZ,LAN | □ □ □ | L2 Cisco 2950 のインタ−フェ−スのIPアドレス -----------------|-- のMACアドレスを黙っていては放 | さない。Sun のマシンにログインし Vlan20 Vlan10|192.168.1.9 て # arp -d 192.168.1.2 とかやっ -----------------|-- て消すこと。他のネットワ−ク装置 | □ □ □ □ □ | L3 Cisco 3750 は特にそんなことはやらなくてもい -----|-------------- いはずだが。これで正常に通信でき |192.168.3.9 なければ、装置A、Bに関係する機 ----------- 器類を再起動した方がいいだろう。 [ L3での様子 ] # show arp Protocol Address Age (min) Hardware Addr Type Interface Internet 192.168.2.10 - 3333.3333.3333 ARPA Vlan20 Internet 192.168.1.10 - 1111.1111.1111 ARPA Vlan10 Internet 192.168.1.2 0 2222.2222.2222 ARPA Vlan10 << 装置A。 装置Aのケ−ブルを抜いて登録されたMACアドレスを消す。 # clear arp << 装置Aの他もろもろも消える。1つだけ消すというのはできない。 # show arp << 直ぐに装置Aの登録が消えた。ここでは装置Aのだけが消える。 Protocol Address Age (min) Hardware Addr Type Interface Internet 192.168.2.10 - 3333.3333.3333 ARPA Vlan20 Internet 192.168.1.10 - 1111.1111.1111 ARPA Vlan10 << メモ >> Cisco のスイッチの ARP テ−ブルのタイムアウトはデフォルトで4時間(240分,14400秒)、 と調べたら出ていた。装置Aのネットワ−クケ−ブルを抜いて放置してみた。Age(min)の 値がどれだけ時間が経過したかである。128分経っても残っていた。翌日には無かった。 # show arp Protocol Address Age (min) Hardware Addr Type Interface Internet 192.168.1.2 128 2222.2222.2222 ARPA Vlan10 << これだけ表示。 装置AをBに置き換える際、これまで装置Aのネットワ−クケ−ブルを抜き忘れることは ままあることである。このようにIPアドレスがかちあってしまった場合、気付いてAの ネットワ−クケ−ブルを抜けば、5分から8分ぐらいで正常になった。つまりちゃんと新 しい装置Bを認識する。Cisco 製品はケ−ブルを差して認識するまで1分位はかかる。 L3の Cisco 3750 に直接つながっているL2のCisco 2950、L2の電源入れ直した際の 様子。L3に RS-232Cで接続して見ていると、L2のダウンした、アップしたログがでて くる。L3まで電源が釣られて切れたのかと思ったが違った。L2にもIPアドレスを付 けていれば、# clear arp で消せばいいのだが、L2にはIPアドレスは付けてない。 パソコンから装置BのLANインタ−フェ−スに ping が行かないとか。パソコンに前の 装置Aのアドレスを記憶してしまっているとだめ。パソコンのDOSに入り>arp -a で前 のアドレスを確認する。Interface Address 192.168.1.2, Physical Address 前のMAC アドレス, Type dynamic とか出る。あれば >arp -d 192.168.1.2 とかやって消すこと。 * Cisco のスイッチにIPアドレスは不要 5年位前に買った Cisco 2950 が手元にある。FortiGate 用のハブとしては新たにギガビ ット対応の Cisco 2960-S を今回、1台購入した。2950 は24ポ−ト10/100 Mbps、2ポ −トが 1000 Mbps である。2960-S を本番稼働用として 2950 はその予備として、設定し て置いておくことにした。SI業者さんいわく、2960-SをVLAN切るには、IPアドレ スが1ついるという。本当かやと自分で 2950 で確認してみることにした。パソコン何か で RS-232C で Cisco 2950 に入り、 以前やった設定を消してリブ−トする。それで WAN, DMZ, LAN の3つのVLANを設定する。 ただのスイッチングハブとして使うだけなので、 特に装置にIPアドレスを付けることはない。パスワ−ドも必要ない。ただのVLANの 利用では 2950 でIPアドレスは不要と分かった。Cisco 2960-S でも同じことである。 (3) やっぱり最後はDNSをいじる `2c/01 * DNSが引けずにアクセスできない所があった 2011年の6月頃から8月ぐらいの間、インタ−ネットのサイトにアクセスできないと ころが幾つかあったこと。原因が分からず打つ手がなかった。右往左往していて、何時間 か経つと何事も無かったかのようにアクセスできるようになっていた。それからしばらく は問題なかったのだが、10月ぐらいに VMware のサイトにアクセスできなかった。3日 ほどしたらアクセスできるようになっていた。なんちゅうこった!。 http://update.microsoft.com/micro... ゲットしたIPアドレスがおかしい。 http://www.ups.com ゲットしたIPアドレスがおかしい、サイト反応なし。 http://www.vmware.com 表示はしたが、ダウンロ−ドのところでおかしかった。 http://www.asahi.com の名前解決ができなかった。まるで表示されなかった。 http://www.ana.co.jp に 2011/10/13 アクセスできず。http://www.asahi.com もできん。 パソコン再起動を何回かやったらアクセスできた。それにしてもおかしい。プロキシサ− バ ProxySVR のDNSサ−バのIPアドレスを調整してみた、設定を見たらプロバイダと 自社DNSのIPアドレスが記載されていたので、自社のは消した。そしたらスカスカ通 るようになった。できるようになったので、しばらくこれで様子見ということで。 あれ、ひょっとしてDNSの動作、正常に戻ったかな。2011年12月末頃から手元の パソコンで、IEでプロキシ利用せず、自社DNS指定にした。歳が開けて1月なかば特 にアクセスできないところはなかった。ん?、DNSサ−バは正常に戻ったのか。そもそ も特に内のDNSサ−バがおかしかったということではなさそうである。CDP サイトであ る akamai がどうやらおかしいらしい。ping 打つと akamai 何たらと返ってきていた。 話しをする機会のあったSI屋さんも akamai がおかしいことがあったと言っていた。お 客さんところで、やはりアクセスできないサイトがあって、DNS指定を変えて凌いだと。 内と同じである。akamai のことは "21-6.インタ−ネット接続周りの刷新,(4)メ−ルリレ −用サ−バの刷新,今のDNSがおかしいかも" に前に書いた。それで回避策として IWSS 仮想マシンを ProxySVR と置き換えるのではなく、DNSの指定を変えて併用するかだ。 * Mail-Relay でDNSのログがずっと出ている # cd /var/adm; ls -l -rw-r--r-- 1 root root 119280 Nov 22 10:18 messages -rw-r--r-- 1 root root 2874257 Nov 22 03:07 messages.0 -rw-r--r-- 1 root root 2927792 Nov 15 03:07 messages.1 -rw-r--r-- 1 root root 2487301 Nov 8 03:08 messages.2 -rw-r--r-- 1 root root 3005456 Nov 1 03:06 messages.3 # more messages.0 Nov 15 03:10:09 hostA named[148]: [ID 8359 daemon.warning] 続く client 202.241.128.2#13210: view NAKA: 続く RFC 1918 response from Internet for 52.1.168.192.in-addr.arpa Nov 15 03:13:44 hostA named[148]: [ID 8359 daemon.warning] 続く client 202.241.128.2#13378: view NAKA: 続く RFC 1918 response from Internet for 31.1.168.192.in-addr.arpa こんなんがずっとでている。1秒間に5回ぐらいログがでている時もある。特にそれで問 題が生じている訳でないのだが、あまりよろしくない。52.1.168.192.in-addr.arpa とい うのは 192.168.1.52 と言うことで社内のパソコンである。逆引きをやろうとしてワ−ニ ングが出ているとSI業者のエンジニアに指摘して頂いた。192.168.1.* の空のゾ−ンフ ァイルを作成すれば解決できると。しかしそれをやろうとすると社内のセグメントのネッ トワ−クIPアドレスを全部、載せないといけないのでないか。 202.241.128.2 はファイアウォ−ルのマシンのバリアセグメント(WAN側)のIPアドレ スである。これは FireWall-1 でNATされているためと考えていい。何で社内のIPア ドレスがワ−ニングとしてログが出て来るのか。ひょっとして FireWall-1 が関係してい るのでないか、かつて FireWall-1 はライセンス違反を検知するため内部のホストの数を カウントしていたらしい。パケットの内部にひょっとしてどこかに、社内のIPアドレス が出ていて、それを検知しているとか。 社内のIPアドレスのどれからのか今一度調べること。全部のパソコンのIPアドレスが 出ているとパット見て思ったが違っているようだ。1つはプロキシサ−バの 192.168.1.5、 他はいろいろ。DNSの制御ファイルの設定で、 ひょっとして match-clients はIPア ドレスからドメイン名を逆引きしようとしているのでないのか。いや、そういうことはな い。SI屋さんと議論した結果、パソコンのメ−ルソフトから Mail-Store へメ−ルが行 く際、Mail-Store のメ−ルサ−バがIPアドレスの逆引きをしているからと分かった。 * DNSの制御ファイルの記述 そろそろDNSのバ−ジョアップをやらないけないのでないか。ここ何年かのDNSの世 間での設定の様相を調べてみないと。プロバイダのDNSサ−バと関係する、深く関係す る訳でプロバイダに問い合わせてもいい話だ。むしろプロバイダからアドバイスなり、こ うしてくれという話があってもいいかと思うが。制御ファイルの設定自体は、だいたい以 下のようなままで問題なさそうだ。 実は view "NAKA" と "SOTO" で allow-transfer の 記述が反対だったのだが、シリアル番号を上げてなかったので2次ネ−ムサ−バに反映さ れた訳ではない。やれやれ。ファイアウォ−ルの置き換え作業で Mail-Relay マシンもリ ブ−トした、DNSサ−バも再起動になったのだが動作は特に問題は起きていない。 view の設定は微妙である。これら内部の情報は外に出す必要はないし、 出してはいけな い。view の設定を十分理解してよかろうと思うまで、 ゾ−ンファイルのシリアル番号は 上げない方が無難である。match-clients は view を記述したら付き物と思うこと。ここ に記述したホストまたはネットワ−クのIPアドレスからの検索要求に応えるということ。 Mail-Relay ホストでDNSのパケットをみた。# snoop -r src udp 202.241.128.2 とか # snoop -r src 192.168.2.2 とか。FireWall-1では 202.241.128.2 からのみ基本、出て いた。match-clients { 127.0.0.1; 192.168.1.0/24; 192.168.2.2; 202.241.128.2;};な どは match-clients { 202.241.128.2;}; だけでもいいかも知れない。 # snoop -r -d bge0 src 202.241.128.2 ブラウザで Yahooをクリックした Using device /dev/bge0 (promiscuos mode) ら直ぐに、こんなようにでてきた。 | 202.241.128.2 -> 192.168.2.1 DNS C yahoo.co.jp. Internet Addr ? /etc/named.conf << BIND 9 の named はデフォルトで /etc/named.conf を読む。 --------------------------------------------------------------------------------- |options { | directory "/usr/local/bind/etc"; | listen-on-v6 { none; }; << IPv6 は見に行かない。 | version "1.1.1.1"; << バ−ジョンを隠す意味で適当なのを書いた。 | empty-zones-enable no; |}; allow-query、allow-recursion の記述。 何か設定が | 冗長な気がする、どれか1つでできないのかと思うが。 |view "NAKA" { | match-clients { 127.0.0.1; 192.168.1.0/24; 192.168.2.2; 202.241.128.2; }; | allow-query { 127.0.0.1; 192.168.1.0/24; 192.168.2.2; 202.241.128.2; }; | recursion yes; << 他のDNSサ−バの情報も検索しにいく。 | allow-recursion {127.0.0.1; 192.168.1.0/24; 192.168.2.2; 202.241.128.2; }; |# allow-transfer { none; }; << コメントにした。コメントでなくてもいいかも。 | | zone "nix.co.jj" { | type master; | file "/usr/local/bind/etc/nix.co.jj.zone"; | }; | zone "128.241.202.in-addr.arpa" { | type master; | file "/usr/local/bind/etc/128.241.202.in-addr.arpa.zone"; | }; | zone "0.0.127.in-addr.arpa" { | type master; | file "/usr/local/bind/etc/0.0.127.in-addr.arpa.zone"; | }; | zone "localhost" { | type master; | file "/usr/local/bind/etc/localhost.zone"; | }; | zone "." { | type hint; | file "/usr/local/bind/etc/named.cache"; | }; |}; | |view "SOTO" { << 社内セグメントの例えば192.168.3.x のパソコン | match-clients { any; }; も、ここにマッチすることになる。 | allow-query { any; }; | recursion no; << このDNSサ−バがもっているゾ−ン情報しか返 | allow-recursion { none; }; さない。ただし、既にキャッシュした情報は返す。 | allow-transfer { プロバイダのDNSのIPアドレスを2つ }; | | | この間 "NAKA" と同じ。 | }; | zone "." { << このファイルは view "NAKA" にだけあればいいよ | type hint; うに思うのだが。入れておいた方がいいとの話だ。 | file "/usr/local/bind/etc/named.cache"; | }; |}; 内部セグメントの 192.168.3.5 のパソコンは view "NAKA" にはマッチしないので、降り てきて view "SOTO" にマッチすることになる。"SOTO" は社外のDNSクライアントが見 る情報で再帰検索はしないと自分で説明を以前に書いた。しかし内部セグメントもマッチ するという認識はその時なかった。192.168.3.5 のパソコンでDNS指定 202.241.128.3 しても外のサイトの名前解決はしてくれないことになる。しかしこのDNS指定が生きる のはパソコンから外のドメイン名に telnet や FFFTP をやる場合である。 ブラウザでの 外へのホ−ムペ−ジのアクセスは基本的にプロキシサ−バ経由である。この時、パソコン 指定のDNSは見ることなく、プロキシサ−バに設定したDNS指定IPアドレスを見る ことになる。内部に潜伏したボットが外と通信することを想像したら、パソコンのDNS 指定は使えないようになっていた方がいいかも知れない。 * 192.168.1.x の逆引きの記述の検討 内部ネットワ−クのセグメントのネットワ−クアドレス全部について、以下のように記述 すること。パソコンなどでメ−ルを送るIPアドレスで、Mail-Store の sendmailデ−モ ンがDNSサ−バに逆引きの問い合わせを送る。 あるいは Mail-Store のsendmail で逆 引きする必要はそもそもない。この sendmail を逆引きしない設定にすれば済む話である。 /etc/named.conf --------------------------------------------------------------- | | |view "NAKA" { | zone "1.168.192.in-addr.arpa" { 追加して記述。 | type master; | file "/usr/local/bind/etc/1.168.192.in-addr.arpa.zone"; | }; ↑ | | 別にファイル名は何でもいい。 /usr/local/bind/etc/1.168.192.in-addr.arpa.zone -------------------------------------------------------------------- |;name ttl class type record specific information |$TTL 3600 |@ IN SOA ns.nix.co.jj. netmaster.nix.co.jj. ( | 1 600 300 3600 1200 ) | IN NS ns.nix.co.jj. |* IN PTR nanasi.nix.co.jj. 注. 上の '*' は該当するIPアドレスを全部、内部で展開するということらしい。 * DNSサ−バの制御ファイルを実際に調整したこと `2c/02 named.cache ファイルはこれまでのをそのまま使用。ル−トのIPアドレスが変わってい るのはないし IPv6 は使わないので。# kill named_pid、# /usr/local/bind/sbin/named。 named.run にはログは出て来なかった。 オプションを指定して named を起動しないと出 ないみたい。できれば named.run のログを出して、ちゃんと named デ−モンが起動した か確認しておきたい。メ−ルの送信元パソコンのIPアドレスの逆引きのワ−ニングがで なくなったか、/var/adm/messages を見て確認すること。きっぱりと出なくなりました。 /etc/rc2.d/S72inetsvc これはこれまでのまま。確認しただけ。 --------------------------------------------------------------------- | | |/usr/sbin/ifconfig -auD4 netmask + broadcast + | | |if [ -f /etc/named.conf ] && [ -f /usr/local/bind/sbin/named ]; then | echo 'starting internet domain name server.' | /usr/local/bind/sbin/named & |fi /etc/named.conf ----------------------------------------------- | | |view "NAKA" { | directory "/usr/local/bind/etc"; | | | zone "." { | type hint; | file "/usr/local/bind/etc/named.cache"; | }; | | zone "3.168.192.in-addr.arpa" { | type master; | file "nix.ip.rev"; << ディレクトリは /usr/local/bind/etc になる。 | }; | zone "4.168.192.in-addr.arpa" { | type master; | file "nix.ip.rev"; << 内容は同じなので同じファイルを使えばいい。 | }; |}; | | << 以下は view "SOTO" の記述。 /usr/local/bind/etc/nix.ip.rev 空の内容のにした。何でも応答するよりもいい。 -------------------------------------------------------------------- |$TTL 86400 |@ IN SOA ns.nix.co.jj. netmaster.nix.co.jj. ( | 1 3600 900 604800 86400 ) | IN NS ns.nix.co.jj. * 参考 前回DNSサ−バを見直した際には「NETWORK magazine」の2008年9月、10月号は まだ出てなかった。仕方ない、一番新しいDNSの本を自腹で買うとするか。2011年 末頃、本屋を覗いたらJPRSがだしていたぞ。先ずはこれをざくっと目を通してみるか。 コマ−シャルの言葉、あなたのタメだから。会社帰りの本屋に寄ったけどなかった。その 後、名古屋駅の本屋で入手、view の説明はあまりないな−。 「@IT atmarkit」の "連載:実用BIND 9 で作るDNSサ−バ、 > 第13回:次世代のセキュリティ拡張DNSSECをBIND 9で実現、2004/2/24" に詳しい。 「NETWORK magazine」 2008/09,P.82〜91, "日本一やさしいLinux入門 第7回:BINDで学ぶ > DNSの基本"。 「NETWORK magazine」 2008/10,P.82〜91, "日本一やさしいLinux入門 第8回:DNS の追加 > 設定とDHCPとの連携"。DNSの設定の view について83ペ−ジに少し説明あり。 (4) Cisco のスイッチングハブに注意 * Cisco 2960-S の設定にはまる `2c/01〜02 Cisco のスイッチのVLAN設定は専門のエンジニアが来ると言うので、お任せでいいだ ろうと自分はみてなかった。やはり他人任せにした自分がいけない。ちゃんと全部に目配 りしておくべきだった。UTMを設置して最初に確認することは、UTMのLAN側イン タ−フェ−スに ping を打つこと。それが通らないのだ # ping 192.168.1.2 へ通信でき ず。何かして通っておお−、ちゃんと他の通信もできるぞと安堵していると、数分したと ころでぱったり何も通らなくなった。そんなことを何度か繰り返し、LAN側はVLAN を設定した Ciscoのスイッチを通さずに、アライドのスイッチに変えてみようと提案した。 そしたらスカッと行くではないか。 何かしら Cisco のネットワ−ク装置で起きているの でないか。レイヤ3スイッチのVLANのIDとレイヤ2スイッチのVLANのIDが同 じネットワ−クIPアドレスで異なっているとまずいかもと、エンジニアさん合わせたり。 しかし事前に自身で VLAN ID は関係ないとテストして確認しました。結果関係なし。 業者さん、いろいろ問い合わせていました。結局 Cisco の 2960-S も 3750にも全ポ−ト に "switchport mode access" を設定しました。この設定は前に聞いたところでは trunk ポ−トを使う場合に "switchport mode access" と指定して明示的にアクセスポ−トであ ると指示する。そんな説明でした。答えは自分自身が以前、書いていました。別な章に書 いていたのを下記に引っ張ってきました。そこには "Port 2 は switchport mode access であること" とずばり書いてありました。どうしてそうするか理由までは書いてなかった。 当時、自身が理由まで把握していたのかは分からないのですが、そう重要な話ではないな と捕えたのでないか。ネットワ−ク系のエンジニアで Cisco を設定する人なら、 よく知 った話だろうと。下の絵では 3750 のすぐ下に 2950 があること。それが今回起こった状 態ではこの間にアライドのスイッチが入っている。直近でなくこのように離れた場合でも Cisco 製品同士は何がしかやろうとする。そりゃそうかも。分かりにくいトラブルだ。 * switchport のモ−ドを再び確認 だいぶ前 "16-6. Cisco Catalyst 3750 詳細、[付録]" に記載していたのをここに移した。 □Apollo Apollo から RS-232C で 3750 に入って、PC1 と PC2 :RS-232C に ping を打つ。 -------------3 | 3750 |----□PC1 3750 の Port 2,3 は VLAN 10で 192.168.1.1 とする。 ------------- 192.168.1.2 2950 は出荷状態のままで VLANなど何も設定してない。 2| Gateway 1.1 |出荷状態 Port 2 は switchport mode access であること。 ------------- Port 3 は no switchport mode access でもいい。 | 2950 |----□PC2 ------------- 192.168.1.3 Switch(config)#int gi 1/0/3 Gateway 1.1 Switch(config-if)#no switchport mode access Switch(config-if)#end $ tctl -line 1 -default -speed 9600 -bpc 8 -stop 1 -parity none -insync -sync $ /com/emt emt> line 3 << Apollo の3番目の RS-232C ポ−トにつないでいる。 emt> raw -noecho << これもやっておくこと。Apollo のF1キ−を押す。 C2950 Boot Loader (C2950-HBOOT-M) Version 12.1(11r)EA1, RELEASE SOFTWARE (fc1) | Model number: WS-C2950T-24 System serial number: AOC304@#9YZ 2950 の出荷状態のままの様子。 次は初期設定せずにおくで no。 --- System Configuration Dialog --- Would you like to enter the initial configuration dialog? [yes/no]: no * 単純にVLANを3つ Cisco 2950 で切る `2c/01 Switch>enable Switch#conf t << これからいろいろ設定しますよ。 Switch(config)#vlan 10 Switch(config-vlan)#name WAN << 名前を付けた。必須でない、分かり易くするため。 Switch(config-vlan)#interface range fa 0/1 - 7 << show vlan で8番ポ−トがない。 Switch(config-if-range)#switchport access vlan 10 参考にそうしただけ意味はない。 Switch(config-if-range)#exit Switch(config)#vlan 20 << 続いて DMZ を 9〜16、LAN を 17〜24 で設定した。 | Switch#show vlan brief << VLAN 1 がデフォルトで全部のポ−トが入っている。 VLAN Name Status Ports ---- --------------- --------- ------------------------------------------- 1 default active Fa0/8, Gi0/1, Gi0/2 << 定義しなかったのが出てる。 10 WAN active Fa0/1, Fa0/2, Fa0/3, Fa0/4, ... Fa0/7 20 DMZ active Fa0/9, Fa0/10, Fa0/11, Fa0/12 ... Fa0/16 30 LAN active Fa0/17, Fa0/18, Fa0/19, Fa0/20 ... Fa0/24 Switch#show run | << この間の表示は省略した。 interface FastEthernet0/1 switchport access vlan 10 ! interface FastEthernet0/2 switchport access vlan 10 | << この間VLANの定義されたのが出てくる。 interface Vlan1 no ip address no ip route-cache [ VLANの WAN にポ−ト8も追加する ] shutdown ip http server Switch#conf t line con 0 Switch(config)#vlan 10 line vty 5 15 Switch(config-vlan)#int fa 0/8 end Switch(config-if)#switchport access vlan 10 Switch(config)#no cdp run << CDP を無効にしておこう。 Switch(config)#no ip domain-lookup << これもとりあえずやろう。 Switch#copy running-config startup-config << これで設定をセ−ブする。 [ VLANのポ−トを変更するには ] Switch(config)#vlan 10 Switch(config-vlan)#int range fa 0/1 - 3 これでは変わらない。上書きはされない。 Switch(config)#no vlan 10 これでいったんVLANの定義を消して再度定義した方が Switch(config)#no vlan 20 早い。VLANの定義の確認は Switch#show vlan brief。 * 参考 2012年1月のこと、Cisco 2950 を WAN, DMZ, LAN の3つのVLANを切る要件がで てきた。それで以前に参考にメモしていた雑誌を引っぱり出してみたということ。2950は #no cdp run コマンドも叩いておくこと。これをやっておかないと装置が勝手に他に自分 の仲間、Cisco 製品がいないか探すパケットを送り続けてしまう。 「NETWORK magazine」2008/09,P.92〜96, "これなら手が届く ROADS TO CCNET、7th STAGE > LANスイッチの設定"。VLAN(Virtual LAN) の設定。ポ−トセキュリティの設定。 それにシスコ独自の CDP( Cisco Discovery Protocol )。 「NETWORK magazine」2008/08,P.92〜96, "これなら手が届く ROADS TO CCNET、6th STAGE > LANスイッチの操作"。アクセスとパスワ−ドなど基本のこと。 シスコのエントリ− 向けの新資格うんたら。こっちの号は見てないがメモしていたのでついでに書いた。 (5) UTMのファイアウォ−ルも注意 `2c/02 * FortiGate のファイアウォ−ルのポリシ− SI業者のエンジニア?の説明は納得がいかない。論理的にファイアウォ−ルのポリシ− 設定の説明がおかしい。根本的に大きな勘違いをしているのでないの?と、小生は問うた。 手元の FortiGate-80Cで動作を検証してみることにします。とても肝心なことです。業者 さんがやたら設定に手間取っているので、余程難しいのかと小生も思い込み、なかなか手 が付けられないでいた。意を決して `2c/04/m のことやってみた。先ずは社内ネットワ− クをインタ−ネットと見立て、その下にLANがあるとしてNATを効かして FortiGate を設置した。そのLANに手元のパソコンを置いてWAN側である社内ネットにあるサ− バ、テスト用で設置した Cobalt Qube3 にアクセスしてみた。すんなりでき、次に Qube3 をDZM上においてみた。これにはオ−ム社の本「FortiGate 導入ガイド」198と199ペ− ジの "Webサ−バの設定" を参考にした。1つ問題があったとすれば、199 ペ−ジの図 で [ 10.10.10.2/255.255.255.0 ] は、255.255.255.255 でないと 10.10.10.0 になって しまうということである。それ以外はまるですんなりできた。 それで一体何が問題なんだ、何が難しいんだ。FireWall-1 のポリシ−で Any 指定が、内 外DMZどこからでもというのが肝か。 この Any はそんな風に意識したことがなかった。 外つまりインタ−ネット側に対して任意のマシン、IPアドレスからと、申し分けないが 漠然とそう思っていた。社内側からはファイアウォ−ルを通過させるオブジェクトという のは意識していた。しかし社内の特定のマシンのみあるパケットを許可したつもりが、結 果的には任意のマシンからも通過できたりしていたポリシ−もあった。このように Anyの 解釈が問題になる場合があるのでないか、幾つかパタ−ンがあるのでないか。中にはそも そも解釈がおかしく、UTMに置き換える際には、UTMのポリシ−に合わせないとかつ じつまが合わないとかあるのでないか。それを無理にやろうとすると、ル−ルがおかしく なってしまうということがあるのでないか。ともかく自分でテスト環境を作って動きを確 認してみるしかない。`2c/04/e 頃、やる気になって1日で確認してみた。 それを下の方 で "UTM の設定ル−ルの基本" としてまとめてみた。 * UTM の設定の基本的なこと [ UTM の設定に関する定義と基本 ] [ファイアウォ−ル]->[ポリシ−]->[ポリシ−] -------------------------------------------------------------------------------- | □ ID 送信元 宛先 スケジュ−ル サ−ビス アクション ステ−タス アプリ | |------------------------------------------------------------------------------| |internal -> wan1 (1) | |------------------------------------------------------------------------------| a| □ 1 P1 S2 all always HTTP ACCEPT 〆 | |------------------------------------------------------------------------------| |wan1 -> dmz (1) | |------------------------------------------------------------------------------| b| □ 2 all VIP_S1 always HTTP ACCEPT □ | -------------------------------------------------------------------------------- 個々の記述、上の図で a,b などを "ル−ル" と呼ぶことにする。"ル−ル" の集まりで1 つになったのを例えば LANからWANへの "ポリシ−" と呼ぶことにする。NATが有効か無効 かは "ル−ル" の画面で選択する。"ル−ル" 画面には表示はされない。上記の P1 と S2 はパソコンなど個々のコンピュ−タで FireWall-1 にならって "オブジェクト" と呼ぶこ とにする。"オブジェクト" は UTM の画面の中では "アドレス" と書かれている。NAT 変換の注意、この UTM ではNAT変換は "ル−ル" 単位にかけられる。FireWall-1 では "オブジェクト" 単位にかけられていた。つまり FireWall-1 では上記で P1 はNAT有効で S1 はNAT無効ということができたということ。ステ−タスのところの〆は直ちに有効にな る。〆チェックをすると簡単にル−ルが有効になってしまうので、マウスの扱いに注意。 FireWall-1 でのル−ル UTM でのル−ル ------------------------ Mapping ------------------------------------ P1 P2 S2 all HTTP ----> P1 P2 all HTTP NATあり ------------------------ ------------------------------------ S2 all HTTP NATなし P1,P2:NATあり、S2:NATなし ------------------------------------ [ UTM の設定ポリシ−のパタ−ン ] 1) int -> dmz 2) int -> wan 3) wan -> dmz 4) dmz -> int 1)の逆 Mail-Relay から Mail-Store へのメ−ルの中継とか。 5) wan -> int 2)の逆 ほぼ禁止でよし。 6) dmz -> wan 3)の逆 普通は無しで。 7) dmz 内の通信 * UTM の設定ル−ルのパタ−ン P2△ ■S1' 仮想IP S1,S2 は Cobalt Qube3 で中の tcpdump .4| |.3 コマンドを使うには。パソコンのP1から ---------*---------------- 192.168.3.0 telnetで admin で入り、$su - でadmin |.2 □S1 になるとできた。# tcpdump -n で。 NAT-----.2 |.1 |UTM|-------------- 192.168.2.0 P1の Windows 2000 でパケットを見るに S2□ ----- △P1 は C:\Program Files\windump> windump。 .6| |.2 |.4 このパソコンではインスト−ルしたらこ ---------*---------------- 192.168.1.0 こに windump ソフトが入っていた。 [ファイアウォ−ル]->[バ−チャルIP]->[バ−チャルIP] -------------------------------------------------- |バ−チャルIPアドレス [ VIP_S1 ] | |Externalインタ−フェ−ス [ port1(WAN) ▽] | |タイプ スタティックNAT | |外部IPアドレス/レンジ [ 192.168.3.3 ] [ ] | |マップ先IPアドレス/レンジ [ 192.168.2.1 ] [ ] | |□ポ−トフォワ−ディング | -------------------------------------------------- [ファイアウォ−ル]->[アドレス]->[アドレス] ここで S1_TMP と -------------------------------------------------------- いうオブジェクト |アドレス名 [ S1 ] | を 192.168.3.3で |タイプ [ サブネット/IP範囲指定 ▽] | 作る。下記[A] で |サブネット/IP範囲指定 [ 192.168.2.1/255.255.255.255 ] | int->wanで、内部 |インタ−フェ−ス [ Any ▽ ] | から S1 だけ限定 -------------------------------------------------------- する場合に用いる。 [A] ------------------------------------------------ ※P1からS1'に HTTPとは。P1で |int -> wan | S1 の仮想IPアドレスへ HTTP。 |1 all all HTTP ACCEPT 〆 NAT有効| http://192.168.3.3とアクセス。 |wan -> dmz | |2 all VIP_S1 HTTP ACCEPT 〆 NAT無効| ※int->wan で "1 all all" を ------------------------------------------------ "1 all S1_TMP"にして限定する。 P1 から S1' に HTTP OK。P1 から S1 は HTTP NG。 S1_TMP のところ、VIP_S1 は選 P1 から S1,S1' に ping NG。 択肢には表示されなかった。 [B] ※wan->dmz で "2 all VIP_S1" ------------------------------------------------ の VIP_S1 のところ、S1_TMPは |int -> wan | 選択肢の表示の中にあった。 a|1 all all ANY ACCEPT 〆 NAT有効| |wan -> dmz | b|2 all VIP_S1 ANY ACCEPT 〆 NAT | ------------------------------------------------ b でNAT無効、P1 から S1' に telnet して tcpdump、192.168.1.4 <-> 192.168.2.1。 b でNAT有効、P1 から S1' に telnet して tcpdump、192.168.2.2 <-> 192.168.2.1。 [C] ------------------------------------------------ |int -> dmz | a|3 all all PING ACCEPT 〆 NAT無効| << [A]に追加。 |int -> wan | c|1 all all HTTP ACCEPT 〆 NAT有効| |wan -> dmz | b|2 all VIP_S1 HTTP ACCEPT 〆 NAT有効| | PING | << PINGを追加。 ------------------------------------------------ a のル−ルだけで P1 から S1 に ping OK。 b のル−ルで P1 から S1' に ping OK。c に PING 追加してもダメ。 [D] ------------------------------------------------ P2 から S1' に HTTP OK。P2か |wan -> dmz | ら S1 に HTTP NG。 |2 all VIP_S1 HTTP ACCEPT 〆 NAT無効| ------------------------------------------------ [E] P1からS1 にtelnetしてtcpdump。 ------------------------------------------------ |int -> dmz | ※P1からS1に telnet かけた状 |3 all all TELNET ACCEPT 〆 NAT | 態で NATを無効、有効にしても ------------------------------------------------ セッションはそのままだった。 NAT有効 だと 192.168.2.2 からパケットが来ている。 ※内部からDMZの S1 にアク NAT無効 だと 192.168.1.4、つまりP1から直接来てる。 セスを限定するのは"3 all S1"。 [F] ------------------------------------------------ P2 から S1' に telnet して入 |wan -> dmz | って tcpdumpコマンドを叩いた。 |2 all VIP_S1 TELNET ACCEPT 〆 NAT | ------------------------------------------------ NAT有効 だと 192.168.2.2 <-> 192.168.2.1 のパケット。 NAT無効 だと 192.168.3.4 <-> 192.168.2.1 のパケット。 [G] DMZ->LANの検討 ------------------------------------------------ P1 から S1 に telentして、S2 |dmz -> int | に更にtelnet して tcpdump で。 |4 all all ANY ACCEPT 〆 NAT | |int -> dmz | UTM は何も経路設定はしてない。 |3 all all TELNET ACCEPT 〆 NAT有効| ------------------------------------------------ NAT有効 だと 192.168.1.2 <-> 192.168.1.6 のパケット。 NAT無効 だと 192.168.2.1 <-> 192.168.1.6 のパケット。 [H] DMZ 内での通信 ------------------------------------------------ c|dmz -> wan | |5 all all TELNET ACCEPT 〆 NAT | a,b のル−ルだけでは S3 から a|int -> dmz | S1' に telnet できず。 |3 all all TELNET ACCEPT 〆 NAT有効| b|wan -> dmz | c のル−ルを追加したら S3 か |2 all VIP_S1 TELNET ACCEPT 〆 NAT有効| ら S1' に telnet できた。 ------------------------------------------------ ■S1' P1 から S3 に telnet、S3 から S1' に |.3 telnet して #tcpdump -n で流れを見た。 ------*---------------- 192.168.3.0 |.2 □S1 □S3 192.168.2.2 <->192.168.2.1だった。ル NAT-----.2 |.1 |.5 −ルcでNAT有効でも無効でも同じだった。 |UTM|-------------- 192.168.2.0 S3 から S1' に telnet で login: が出 ----- △P1 て来るのに時間がかかった、数十秒。ル |.2 |.4 −ルc で TELNETを ANY にしたら直ぐに ------*---------------- 192.168.1.0 login: が出て来た。どういうこと?。 [I] WAN->S1'へのアクセス インタ−ネット側から仮想IPのマシンにアクセスしてみるのは。テストするにはバリア セグメントである 192.168.3.0 にパソコンをおく。そこから S1' にアクセスする。S1に てパケットがどこから来ているか見ればいい。192.168.2.2 からなのか、192.168.3.2 か らなのか。それとも直接なのか。UTM ではNAT変換されるのだから、直接ということは ないだろう。各自テストをやって確認してみること。 ※久しぶりにDMZにサ−バを置くことになって、どうル−ルを作るか自身の書いたのを 改めて見てみた。いかん、上の記事はさっぱりというか理解するのに骨が折れる。模式化 し過ぎて頭の中で構成を組み立てなければならない。こっちの記述の方がまだ分かり易い。 "22-3.FortiGateのSSL-VPN機能, (3)UTMをDMZに設置してのテスト,*サ−バをDMZに 置く場合"。これに DMZ->WAN のル−ルの記載がなかったので書き足した。`2f/04/E * FortiGate のファイアウォ−ルのル−ル適用の順番を改めて確認してみた (A){ LAN->DMZ } (B){ LAN->DMZ } 10 all X,Y HTTPS 10 all X,Y,Z HTTPS 11 PC1 Z HTTPS IPS設定 11 PC1 Z HTTPS IPS設定 "IPS設定" というのは FortiGate のIPS機能で SSL 3.0 の脆弱性問題に対処するため に、 SSL 3.0 パケットを止めるようにしたという話である。 社内のパソコンのIEブラ ウザからDMZにある SSL-VPN 装置などにアクセスして、 設定したIPSのカスタムシ グネチャが働いているか確認しようとした。ル−ル(A)で PC1 から SSL-VPN 装置の Z に アクセスして、SSL 3.0 パケットは止められた。 ル−ル(B) では SSL 3.0 パケットは止 められなかった。10 のル−ルが先に効いているということ。`2e/11/E ------------------------------------------------------------------------------------ [ 付録 ] RTMP の挙動について `2f/01/s * 動画のプロトコルは何か変 ストリ−ミングの動画を出しているサイトがある。何やら企業のための教育ビデオという ところだ。そのプロトコルは RTMP( Real Time Messaging Protocol ) という。これまで そんなアクセスは社内からは無かった、と思う。 RTMP のパケットは Flash Player で表 示するようだ。そうなると、また YouTube の時に起きた Flash の問題かもと思った。 そのサイトへのアクセスは http://douga.jp/ という感じである。動画を表示する枠の中 ではストリ−ミングの動画デ−タを表示する。再生プロトコルは RMTP で、ポ−ト番号は 1935(TCP/UDP) である。RTMP はファイアウォ−ルとして設置の FortiGate には初期設定 には入ってなかった。カスタムで RTMP-desu と定義し作成した。 いつも使っているデスクトップの Windows 7 で先ずやっていた。ノ−トPCのWindows 7 で見たら、そのサイトの画面がちゃんと表示されなかった。四角の枠だけが仮に表示され るような感じになった。IEの詳細設定で SSL 3.0 だけに〆が入っていた。 TLS 1.0 を 使用するに〆を入れたら、ちゃんと表示した。ん?、HTTPS も関係しているのか。 http://douga.jp/ へのアクセスを見ていると、 Twitter とか他の動画サイトへもアクセ スしていた。 RTMP だけファイアウォ−ルに追加許可の設定をすればいいという訳ではな いみたいである。ファイアウォ−ルのル−ルをいろいろ変えてやってみた。どうも挙動が おかしい。IEはプロキシの設定を無視しているみたい、論理的でないぞ。 RTMP のクライアントソフトは Adobe Flash Player。RTMPE は RTMP を暗号化したプロト コル。HTTP で RTMP をカプセル化したプロトコルもある。 ファイアウォ−ルやIPSで 動画を制御するのは普通は難しい。RTMP は 1935(TCP/UDP) をファイアウォ−ルで通して 下さいだけではできそうにない。RTMP は何らか特別な性質をもっているのでないのか。 LAN->WAN FortiGate でいろいろル−ルを変えて動作確認してみた -------------------------------------------------------------------------- | ID 送信元 宛先 サ−ビス アクション ステ−タス |------------------------------------------------------------------------- | 11 all all ICMP_ANY ACCEPT 〆 | 13 all ProxySVR DNS,HTTP,HTTPS など ACCEPT 〆 | 14 mypc all TELNET,SSH とか ACCEPT 〆 13番のル−ルでプロキシサ−バを利用するようにしてある。 ここに RTMP-desu を追加 すれば、それでいけるはずである。しかし何故かこれではダメだった。 -------------------------------------------------------------------------- | ID 送信元 宛先 サ−ビス アクション ステ−タス |------------------------------------------------------------------------- | 11 all all ICMP_ANY ACCEPT 〆 | 13 all ProxySVR DNS,HTTP,HTTPS,RTMP-desu ACCEPT 〆 | 14 mypc all TELNET,SSH ACCEPT 〆 このようにしたらできた。ブラウザのプロキシ設定あり、なしでもできた。どうもプロキ シのことは見てないようである。mypc が RTMP-desu も許可されていることが効いている。 -------------------------------------------------------------------------- | 11 all all ICMP_ANY ACCEPT 〆 | 12 all all RTMP-desu ACCEPT 〆 | 13 all ProxySVR DNS,HTTP,HTTPS ACCEPT 〆 | 14 mypc all TELNET,SSH ACCEPT 〆 ではということで mypc に RTMP-desu を許可してみた。これでもできた。 12番ル−ル は無効にして。ブラウザは Microsoft IE9 と Mozilla Firefox でやってみた。 -------------------------------------------------------------------------- | 11 all all ICMP_ANY ACCEPT 〆 | 12 all all RTMP-desu ACCEPT □ | 13 all ProxySVR DNS,HTTP,HTTPS ACCEPT 〆 | 14 mypc all TELNET,SSH,RTMP-desu ACCEPT 〆 * プロキシサ−バの問題かな 最初はプロキシサ−バの IWSS が問題ではないかと調べていた。だいぶ前にも動画を通す ことですったもんだやったことがある。ネットで改めて調べたら、トレンドマイクロのサ イトの中にらしい記事が2つあった。1つは以前に調べた記事、もう1つは今回あった記 事で以下のところの client_skip_content、server_skip_content に追加して IWSS を起 動し直すとある。# cd /etc/rc2.d; # ./S99IWSS restart とやる。 2分ぐらいで終わる けど。このプロキシサ−バはHP仮想サ−バの仮想マシンで稼働させている。久しくHP 仮想サ−バは触ってないし、本番機の仮想マシンの IWSS をいきなり触るのはいかがなも のか。予備のプロキシサ−バの仮想マシンの IWSS で先ずはテストしてみたい。結局この 設定はいじらなかった。対策というか設定はファイアウォ−ルでやれたのである。 # cat /etc/iscan/intscan.ini | # Use these settings to skip content downloaded by NetShow player, Windows Media # player, Real Media player, and Apple QuickTime player client_skip_content=User-Agent: NSPlayer; User-Agent: Windows-Media-Player; 続く User-Agent: RMA; User-Agent: QuickTime; User-Agent: video.msn.com client_skip_content_sp=; server_skip_content=Content-Type: video/x-flv; server_skip_content_sp=; | * おかしいと思い翌日に調査 ひょっとして RTMP のパケットは、ブラウザでプロキシの利用指定していても、プロキシ サ−バを通らないのでないか。そう思いネットでそれらしい話が出てないか調べてみたら、 あった。アメ−バビグにログインしようとすると通信エラ−になるという。アメ−バビグ のサ−バには TCP:843 と TCP:1935 のパケットで通信している。 アメ−バビグは Flash で作成されている。クライアントからはプロキシサ−バ経由ではなく、直接この2つのポ −トにアクセスする。TCP:843 は直接通信しようとする際に使用。というようなことが書 かれてあった。この人は顧客から問い合わせでパケットをキャプチャして調べたとのこと だった。自分もパソコンからプロキシサ−バにパケットが行っているのか、調べてみない といけないと思ったのだ。ネットの検索で、まさにドンピシャの記事だった。