2004年度 情報システム構成論 第12回 Case Study: 西尾研究室ネットワーク構築 西尾 信彦 nishio@cs.ritsumei.ac.jp 立命館大学 情報理工学部 情報システム学科 ユビキタス環境研究室
要求定義/解決法決定(1) Webページは独自に提供したい メールサーバも独自に提供したい メールサーバは重要なので出来る限り止めたくない WWWサーバ構築決定 メールサーバも独自に提供したい メールサーバ構築決定 メールサーバは重要なので出来る限り止めたくない メールサーバの多重化決定 各自のHome(ファイル置き場)はどのホストからでも利用できるようにしたい NFSの利用決定
要求定義/解決法決定(2) メールの本体(メールボックス)はどのホストからでも利用可能にしたい 各自のHomeにメール本体を格納したい Maildir形式メールボックスの利用決定 どのホストでも同じアカウント情報(ユーザ管理)を利用したい ディレクトリサービスの利用 Unix系端末が大多数であるため、Active Directoryは却下 NIS、もしくはLDAPの利用決定
要求定義/解決法決定(3) 今後作成するアプリケーション(ユビキタス系の)でも同じアカウント情報を利用したい NISはUNIX系のログイン情報以外では利用しにくい アプリケーションで利用する場合、ログイン情報以外のものもディレクトリサービスに格納したい NISが却下され、ディレクトリサービスには柔軟性のあるLDAPを利用することに決定
要求定義/解決法決定(4) データ(Homeの)は非常に重要であるため、物理的障害対策も入れたい NASはNFS以外のアクセスを許したくない NFS用ホストにRAIDを導入することに決定 信頼性向上用ではないRAID0は却下 RAID1はディスク利用効率から棄却 RAID0+1かRAID5の二択となるが、RAID5搭載NASが存在したため、RAID5の導入を決定 NASはNFS以外のアクセスを許したくない NAS自体にファイアウォールがない NAS用にファイアウォールのホストの設置決定
要求定義/解決法決定(5) 今後多くのマシンが導入され、アドレスが足りなくなる(RAINBOWグローバルなIPアドレスは8つ)ことは目に見えているので、始めから対策を立てておきたい とりあえずは、NAPTとプライベートネットワーク(192.168.0.0/16)を利用することに決定 将来的に順次IPv6に移行予定(予定は未定) 内部ネットワーク(プライベートネットワーク)ではIPアドレスではなくホスト名を使いたい DNSサーバ構築が決定
要求定義/解決法決定(6) 内部ネットワークにはノートPCなど、動的に追加されるホストが多いため、動的IPアドレス割り振りを利用したい DHCPサーバ導入決定 内部ネットワークは外部から守りたい ファイアウォールの導入 ノートPCはもちろんWireless Wireless Access Pointの導入(802.11gで統一) もちろんWirelessは暗号化 WEPの導入
構築決定サーバ一覧(1) 外部向けサーバ(いわゆるDMZに設置) WWWサーバ メールサーバ 緊急時用メールサーバ LDAPサーバ 外部にアプリケーションを設置する可能性があるため(普通は内部ネットワークのためのサーバとなる) NFSサーバ WWW,メールなど(外部サーバ)でも利用するため アクセス制御用ファイアウォール設置(NAS自身にないため) ルータ(NAPT)用ホスト 内部ネットワークと外部ネットワークを結ぶ
構築決定サーバ一覧(2) 内部向けサーバ DHCPサーバ 内部用DNSサーバ ルータ(NAPT)用ホスト ファイアウォール付き Wireless Access Point WEP付き
要求定義から作ったネットワーク図 ルータ-FW WWW mail 緊急用 mail LDAP NFS-FW NAS DHCP DNS WAP 各学生ホスト
本ネットワークの高負荷ポイント Performance Bottleneck 全員(全ホスト)がアクセスしファイル転送することになるNAS NASを保護しているファイアウォール NASを使うホストは内部ネットワークにも外部ネットワークにも,さらにRits外部にも多数存在 内部ネットワークと外部ネットワークへの接続を全て引き受けるルータ兼NAPTホスト
高負荷ポイント ルータ-FW WWW mail 緊急用 mail LDAP NFS-FW NAS DHCP DNS WAP 各学生ホスト
負荷の分散 NASが外部ネットワークに所属しているため、ファイル転送トラフィックがルータとNFS-FWにかかってくる NASに二つEthernet Cardを持たせる たまたま2つGbEのNICをもっているNAS(RAID5)であった 応用問題:もし2つNICがついてなかったらどうしますか?
改善後ネットワーク図 ルータ-FW WWW mail 緊急用 mail LDAP NFS-FW NAS DHCP DNS WAP 各学生ホスト
高負荷が解消された ルータ-FW WWW mail 緊急用 mail LDAP NFS-FW NAS DHCP DNS WAP 各学生ホスト
その他の改良点 緊急時用Mailサーバが常時遊んでいるのはもったいないため、他サーバと共有 WWWが緊急用メールサーバを兼任するように設定 NASのデータは物理的障害にも耐えうるが、壊れている状態から復旧するまでは利用できなくなる 別にもう一つバックアップ用NASを用意する
最終的なネットワーク図 ルータ-FW WWW 緊急用mail mail LDAP NFS-FW Backup用NAS NAS DHCP DNS WAP 各学生ホスト
実際には... DMZ(外部ネットワーク)に, 内部ネットワークに, 有線ネットワークは可能な限りGbE接続 TV会議用ホストを設置 内部ネットワークに, Linuxクラスタ (IBM BladeCenter) ソフトウェア開発用CVSサーバ アドホックモード用無線基地局を設置 10.0.0.0/8のプライベートネットワーク WAPとDHCPは同一ホスト 有線ネットワークは可能な限りGbE接続 無線ネットワークは802.11gと11bを分割
メールサービスの要求定義 複数のホストから同時に自分のメールを利用する必要がある (ノートPCと据え置きホスト,etc) IMAP4rev1を採用 メールサーバを多重化する メールボックスはNFS上に置く NFSを利用するため、メールボックスはMaildir形式 セキュリティは出来る限り確保する IMAP over SSL, SMTP over SSL, SMPT Authの利用決定
ファイアウォール設定一覧(1) ファイアウォールが必要なホストは5つ ルータ兼NAPT WWW/緊急用Mail ルータ,WWW/緊急用Mail,Mail,LDAP,NFS-FW ルータ兼NAPT 内部から外部へのIPマスカレード(POSTROUTINGでフック) 外部から内部への接続は、TCP接続確立済みのものは通す、それ以外は拒否(SYN:× ACK: ○) ルータへのアクセスは内部からのSSH(22)のみ許可 WWW/緊急用Mail HTTP:80, HTTPS:443, SSH:22, IMAP:143, IMAPS:993, SMTP:25, SMTPS:465
ファイアウォール設定一覧(2) Mail LDAP NFS-FW IMAP:143, IMAPS:993, SMTP:25, SMTPS:465, SSH:22 LDAP LDAP:389, LDAPS:636, SSH:22 NFS-FW 外部ネットワークからNASネットワークへの接続:TCP接続確立済みのものは通す 外部ネットワークからNASネットワークへの接続:NFS(2049)をメインNASへ転送(バックアップへは送らない)
構成手順 該当ネットワークで出ている要求をまとめる 各要求について、実現法を決定する ネットワーク上のボトルネックを検出し、対策を立てる 機材や資金などと相談して、マシン構成を考える 各種ソフトの設定を行う
さて... 現状の西尾研究室ネットワークで足りないものは何でしょう?
練習問題 (#1~#3) Switching Hubを利用したネットワークは単なるHubを利用する場合と比べてセキュリティ上どのような利点がありますか? IP層ではパケットは何まで届けるのが使命ですか? IP層でパケットが途中でロストした場合、IP層は何をしますか? MACアドレスとIPアドレスとの対応をとるプロトコルは何ですか?
上記のプロトコルではまず何キャストをしてその応答を何キャストで受けとるでしょう? 立命がJPNICからもらっているIPアドレスのクラスは何ですか? ホストアドレスがNビットあったときいくつのホストにアドレスを配れますか? サブネットマスクがMビットのときホストはそのサブネットにいくつですか?
ルータが自分の経路表にないアドレス宛てのパケットを配送するアドレスを何といいますか? AS内のルーティングプロトコルを一ついいなさい。 IPv4のIPアドレスは約いくつありますか? IPアドレスの枯渇問題への解決策を2つあげてください。 プライベートIPアドレスには3つのネットワークアドレスごとに用意されていますが、それぞれ何によって使い分けるでしょう?
プライベートIPアドレスを振られたホストのインタネットアクセスは何によって実現されるでしょう? 14の技術はどのような制約があるでしょうか? それを改良した技術を何といいますか? IPヘッダとTCPヘッダ,パケットのより内側に位置するのはどちら? TCPやUDPではパケットは何まで届けるのが使命ですか? Well-Knownポートの例を一ついいなさい. UDPでパケットが途中でロストした場合、UDPは何をしますか?
練習問題 (#4~#6) DHCPで配布されるものは何ですか,4つ答えなさい? 無線LANでの通信路暗号化の手法? Switching Hubのセキュリティ以外の利点は何ですか? Switching Hubを通したPacket Sniffingは可能か? IPsecの提供するような暗号化通信路生成方式を何といいますか?
IPsecは不特定の通信相手とでも必ず暗号化通信路を確立できますか? バッファオーバーフロー攻撃はTCP/IPを利用しなれば防げますか? プロトコル仕様に脆弱性が発見されたとき,そのプロトコルは使用禁止になりますか? POPやIMAPは暗号化通信路を提供しますか?
APOPを利用すればメイルの内容は盗聴できないでしょうか? ファイアウォールはウィルスを通さない機構である? 近年の分散DoS攻撃の代表例を一ついいなさい. ファイアウォールの内側のホストはインタネットにアクセスできますか? 安価に構築できるファイアウォールは何型で,何層で実装されるでしょう.
RAINBOW内のWebサーバへは何型のファイアウォールが適用されていますか? ファイアウォール内ホストの外へのアクセスを制限する例をあげなさい. Linuxのnetfilterでのin-comingパケット防御はどのhookポイントですか? LinuxでのNAPTは何といわれていますか? DMZにはどのようなホストを置きますか?
Unixでの代表的なリモートアクセスサーバの暗号化通信路生成プロトコルは? 上記プロトコルで他のサービスを支援する機能は何? 一般にVPNで利用される通信路暗号化方式は? VPNでNAT越えをする方法はない? SoftEtherは何層のVPNか?
練習問題 (#7~#11) 従来のUnixでのユーザ情報管理ファイルは何? Rootでのログインは推奨されない.代りにどのコマンドを利用するか? NISのドメインとサイトのドメイン名は一致するか? NISの通信路は暗号化されているか? NFSで各ホストから同じユーザ名でアクセスするには何を共通化しなければならないか? NFSのセキュリティ機能を強化した分散ファイルシステムの例をあげよ. Webアクセスを拡張した分散ファイルシステムの例をあげよ.
インターネット上にP2Pが作るネットワークは何? DNSの日本の大本はどこ? DNSレコードでメイルの配送先を書くのは? 家庭からのインターネット接続のようにIPアドレスが毎回変わる場合に対応できるDNSは何? Sendmail, postfix, qmailなどは何とよばれるか? メイルボックスが一つのファイルになっている例をあげよ.
ユーザが多い場合にはどのメイル受信プロトコルを用いるのがよいか? 最近のユーザ認証するメイル送信のプロトコルは何か? チャレンジ-レスポンス認証で乱数を発生するのはどちらか? Webの通信路暗号化手法でよく用いられるものは何か? 忙しいときほどシステムに不具合が生じる確率が上がるというのは迷信か? Unixでのバックアップは理想的には何モードを利用すべきか?
近年大容量化したファイルシステムのテープによるバックアップが流行らない理由は? メイルサーバが停止していたときに到着したメイルはどうなるか? ハードウェアでファイルシステムを多重化する技術を何というか? 上記で性能も向上する技術を何というか? 上記の技術のみ適用した場合,性能向上と信頼性との関係はどうなるか? Webの動的コンテンツをクライアントサイドで支援する技術の例をあげよ.
Servletはどちらの動的コンテンツ支援技術か? CGIで最もよく利用されたプログラミング言語は? 上記のペアに近年おきかわってきた技術は何か? この変化の原因をあげよ. デファクトになりつつあるWebサービスの記述言語をあげよ. オブジェクト指向のRPCを何というか? SOAPのスタブ生成に利用される技術は何か? SOAPの通信ポートは何と何が利用されるか? Webサービスの隆盛はインターネット上の何に左右されないことが原因だといえるか?