ドットコムマスター★★ Chapter4



公式テキストの内容をまとめています!!

4.1.1 ネットワーク監視の必要性

ネットワークを構築して、きちんと動作するようになりました。これで「めでたし、めでたし」と思ってほったらかしにしていいのか・・・そんなことはありません。

ネットワークを運用していると、いろんなトラブルが発生する可能性があります。また、最初は十分な帯域幅があって快適にネットワークを利用することができていたとしても、どんどんクライアントPCが増えてきたり、アプリケーションがたくさん帯域幅を必要とするものに変更になったりすると、ネットワークの帯域幅を圧迫して、ネットワークが遅くなってしまうかもしれません。そして、最近ではネットワークに対する脅威として不正アクセスなども考えられます。

ネットワークを構築したら、「はい、それで終わり」じゃなくてその後も継続的にネットワークの状況を監視しておかないと、上記のようなトラブルや問題が発生したときに適切に対応することができなくなってしまいます。

トラブルを未然に防ぐため、トラブルが発生したときに素早く切り分けを行い適切な対応を行うため、将来的なネットワーク拡張の基準とするためにネットワーク監視は非常に重要です。

ネットワークを監視する方法として、

ネットワーク管理プロトコル(SNMP(Simple Network Management Porotocl))
MRTG(Multi Router Traffic Grapher)によるトラフィック量の把握
パケットキャプチャ


などがあります。
不正アクセスの検出については、「4.1.2 不正アクセスの検知」にあるようにまだあといくつかの方法があります。


・ネットワーク管理プロトコル(SNMP)
SNMPを利用すると、ルータやスイッチといったネットワーク機器の監視・制御を行うことができるようになります。SNMPはRFCで標準化されていて、ほとんどのベンダのネットワーク機器で利用できるようになっているほど普及しています。

SNMPについては、過去のメールマガジン、ホームページの解説を参考にしてください。

SNMP
SNMP(Simple Network Management Protocol)
SNMP(Simple Network Managemnt Protocol)復習問題


・MRTG(Multi Router Traffic Grapher)によるトラフィック量の把握
MRTGは、SNMPをベースにしています。SNMPを利用してネットワークの負荷、つまり実際のトラフィック量を知るためのツールがMRTGです。

MRTGはネットワークの利用率を、日/週/年ごとにGIFやPNG形式のイメージにグラフ化してWebページを生成します。
グラフ化されるので、「ぱっと」目で見てわかるのがとても便利ですね。また、MRTGはUNIX/LINUX、Windowsといったほとんどプラットフォームで動作して無償で入手することができます。

MRTGはSNMPをベースにしているため、基本的にはMIBで取得できるデータが主な項目となりますが、その他にもディスクの空き容量やCPU/メモリの使用率といった情報も監視することができます。

MRTGの入手、インストールおよび使い方は以下のリンクを参照してください。

MRTGによるネットワーク監視
MRTG:Multi Router Traffic Grapher


・パケットキャプチャ
パケットキャプチャとは、その名前の通りネットワーク上を流れるデータ(パケット)をキャプチャ(捕まえる)して、その内容を解析することです。パケットキャプチャを行うことによって、
どのコンピュータ間で通信が多く行われているのか、どのプロトコルが多く流れているのか、ブロードキャストトラフィックの割合はどれぐらいかといった、ネットワークのさらに詳細な姿を見ることができるようになります。

パケットキャプチャは、基本的にLANのトラフィックをキャプチャします。WANのトラフィックもキャプチャできないことはないですが、ちょっと難しいです。

LANといえば、イーサネットですね。イーサネットの基本的な通信を思い出してください。

CSMA/CD


イーサネットでは、同じコリジョンドメイン上のすべてのコンピュータにデータ(フレーム)が届きますが、あて先MACアドレスを見て自分あてであれば、そのデータを上位のプロトコルで処理をしていくわけですね。
パケットキャプチャは、自分あてでないデータも受信することによって行われています。
ただし、
コリジョンドメインが異なるパケットはキャプチャできません。ということは、スイッチでは他のポートに接続されているコンピュータの通信をキャプチャすることができなくなってしまいます。それでは、パケットをキャプチャしてネットワークを監視するという目的を果たすことができなくなるので、スイッチで特殊な設定(モニターポート、SPANポートなど)をして、特定のポートはすべてのポートのデータが流れるようにします。そのポートにパケットキャプチャを行うコンピュータを接続することになります。

パケットキャプチャを行うためのソフトはたくさんありますが、UNIX系のシステムで最も一般的なソフトは「tcpdump」があります。Windowsでは、これを移植した「Windump」というものがあります。
商用ソフトとして、もっとも有名で多機能なものがHPの「Open View」ですね。




4.1.2 不正アクセスの検知

インターネットは誰が接続しているのかわかりません。残念なことに心無いユーザがいて、さまざまな不正アクセスやインターネットに公開されているサーバへの攻撃を行っています。
インターネットに接続するユーザとしては、こうした不正アクセスや攻撃から自らを守る必要があります。そうしないと、
サービスを正常に提供することができなくなったり、不正アクセスの踏み台になってしまって社会的な信用を失ってしまう恐れがあります。
そのためには、まず不正アクセスを検知しなければいけません。検知した上で適切な対応を実施することが重要になってきます。

不正アクセスを検知する方法として、
侵入検知システム(IDS:Intrusion Detection System)があります。IDSの種類として


・ホスト型 ある特定のサーバやルータに対する不正アクセスを検知する
・ネットワーク型 特定のネットワークセグメントに対する不正アクセスを検知する


この2種類があります。それぞれどういった不正アクセス・攻撃を検知することができるのかが異なってくるので、特徴をきちんと理解した上で適切なタイプのIDSを選択します。

IDSが不正アクセス・攻撃を検知する仕組みは、
シグネチャ検出と呼ばれています。シグネチャとは、不正アクセス・攻撃のパターンのことを指しています。このシグネチャをIDSにあらかじめ登録しておき、シグネチャに一致するパターンを検出すると、それを不正アクセス・攻撃とみなして管理者へ警告を出したり、攻撃を自動的に防御したりすることができるようになります。
でも、すぐに想像がつくとおり、
シグネチャに一致しない攻撃パターンには対応できません。これは、ウィルス対策とまったく同じ問題ですね。

商用のIDSは、非常に効果です。ソフトだけで数百万もしてしまうものがざらにあります。なかなか個人や中小規模のネットワークで導入するのは、非常に難しいですね。そんな人のために、機能はそれほど高くありませんが、フリーで手に入るIDSソフトもあります。「Snort」と呼ばれるソフトがとても有名ですね。

とりあえず動かすsnort+ACID(αversion)


セキュリティに関しては、「日経NETWORK」の連載が非常にわかりやすくていいと思います。この連載は、架空の企業のセキュリティ担当者の対話形式で進められていて、さまざまなセキュリティ上の問題点を想定して、それに対する対処法方がまとめられています。
バックナンバーは、CD-ROMにまとめられる予定なので、これから購読する方はバックナンバーのCD-ROMも参考にしていただければいいんじゃないかなと思います。

「日経NETWORK」勘所を知る セキュリティ対策





4.2.1 ログ分析の必要性

なんらかのトラブルが発生した場合には、まず最初にやるべきことは
トラブルの原因を突き止めることです。一口に突き止めるといっても、トラブルが発生した場所やトラブルの現象、トラブルの影響などいろいろなことを見ていかなくてはいけません。
このようなトラブルの原因の追求に非常に役に立つのが、サーバやルータが収集しているログ情報です。
ログ情報を正しく収集して、分析することによってトラブル発生時に適切な切り分けを行って、対処を行うことができるようになります。
また、トラブル発生時だけではなくて、
正常時もログをきちんと監視しておくことによって、トラブルの予兆や不正アクセスを検出することもできるようになります。

『Syslog』
UNIXのシステムでは、syslogという仕組みがあり、システムおよびサービスの状態やどのユーザやどのIPアドレスを持つコンピュータがログインしたか、といったような認証情報もログとして取得することができます。

syslogでは、設定のレベルに応じてログファイルへの記録、コンソールへの出力、別のサーバへのログの転送や、管理者への警告を行うといった設定が可能です。


『イベントビューア』
WindowsNT/2000では、イベントビューアによって、システム、セキュリティ、アプリケーションのログを見ることができます。
システムログには、サービスの開始やデバイスドライバの起動といったようなログが記録されます。アプリケーションログは、動作中のアプリケーションに関するログが記録されています。セキュリティログには、設定された監査に従ってログオンしたユーザのログなどが記録されます。


『ネットワーク機器のログ』
ルータやスイッチといったネットワーク機器においては、syslogがサポートされている機器があります。ネットワーク機器の内部にログを保存することもできますが、別途syslogサーバへログ情報を送信して、一括でログを管理することも可能です。


こうして取得したログ情報は、膨大になってしまいます。そのログを毎日管理者が調べるというのは、非常に大きな負担になってしまいます。
ログ情報の中のどの情報を中心に見ていくのかということをしっかりと決めておくことが大事です。
そして、後からログ情報を参照することができるように、定期的にログファイルをバックアップしておくことも大事なポイントです。





4.3.1 トラブル原因

ネットワークで発生するトラブルは、さまざまなものがあります。
人為的なミス、ネットワーク機器やサーバの物理的な故障、設定変更にともなうミスなどなどがあります。
ここでは、トラブルの原因を伝送路(ネットワーク自体)のトラブル、クライアント端末のトラブル、ルータのトラブル、サーバのトラブルにわけて、トラブルの原因を見ていきます。


『伝送路(ネットワーク自体)のトラブル』
いままでつながっていたのに、急につながらなくなってしまった・・・というときに、あれこれといろんな設定を確認したりとかしますが、そんなときに、意外な盲点となるのが、ネットワークの物理的なトラブルです。
たとえば、ケーブルがNICやハブ、スイッチのポートから抜けてしまっていたり、ハブやスイッチの電源が抜けていたり、ケーブル自体が断線してしまったりといったことが起こります。
まず、
トラブルシュートの原則として『物理層から調べる』ということを心がけてください。何か様子が変だなと思ったら、あれこれと設定を確認するよりも、ケーブルが抜けていないか、ハブやスイッチの電源はきちんと入っているか、ケーブル自体が断線していないかということをまず確認することが、結局はトラブルを解決する近道になります。

『クライアント端末のトラブル』
ネットワーク上のクライアント端末にトラブルが発生したときには、まず特定のクライアント端末だけなのか、それとも他のクライアントでも同じようなことが起こっているのかをまず確認しましょう。
特定のクライアントだけのトラブルであれば、その原因はNICの不良やドライバの不良、OSの障害、クライアント端末のハードウェア障害などが考えられます。


『ルータのトラブル』
ルータのトラブルとして、最も多いのが
ルーティングの設定がうまくいっていないことがあげられます。ルータのルーティングテーブルを確認して、正しくネットワーク情報がルーティングテーブルに入っているかどうかを確認します。
もし、正しいルーティング情報を入っていなければスタティックルートの設定やルーティングプロトコルの設定を見直す必要があります。
また、ルータでパケットフィルタリングを行っている場合、パケットフィルタリングの設定ミスによって、特定のポートやアドレスに対する通信ができなくなってしまうということも、よく起こりがちなトラブルです。


『サーバのトラブル』
サーバのトラブルの場合、まずはクライアント端末と同じことを疑ってみましょう。つまり、NICやドライバの不良、OSの障害、そしてハードウェア故障です。
サーバがインターネットに対してサービスを公開している場合には、不正アクセスやDoS(Deninal of Service)攻撃といった可能性があります。こうした不正アクセスや攻撃は、IDSやファイアウォール、ルータ、サーバ自体のログを確認することによって判断することができます。




4.4.1 問診ツール

ネットワークのトラブル発生時の切り分けによく使われるツールとして、
「PING」があります。
PINGによって、目的のホスト(PC、ルータ)との接続性があるかどうかを確認することができます。これによって経路上のどこでトラブルが発生しているのかということを知ることができます。

PINGはICMPというプロトコルを利用して、目的のホストに「送った内容をそのまま送り返して」というメッセージを送信します。このメッセージの返事が返ってくればきちんと通信ができるんだということがわかるわけです。

PINGの詳しい動作については、こちらをご覧ください。
ICMP(Internet Control Message Protocol)その2


PINGによるトラブルシュートは次のように行いましょう。
まず、目的のホストまで通信ができなくなってしまったとします。こういったときの手順として、

1. 自分のコンピュータの配線を確認
トラブルシュートの原則は、『まず物理層から』です。案外、ケーブルが抜けていたりハブやスイッチの電源が抜けてしまっていたりすることがあるものです。
2. 同じハブやスイッチに接続されているほかのホストに対してPING
これによって、自分のPCとハブやスイッチの間の経路が正しいかどうかがわかります。成功しない場合には、ハブやスイッチのポート障害やケーブルがおかしいことがあります。
※ただし、スイッチは同じVLANにあるホストに対して確認します。
3. デフォルトゲートウェイに対してPING
これにより、他のネットワークにきちんと通信ができるかどうかを確認することができます。もし、失敗した場合にはデフォルトゲートウェアイのルータのポートが正常なのか、自分のPCのTCP/IPの設定が正しいかどうかを確認する必要があります。
4. ルータが複数ある場合には、同様に近いところから順次接続を確認
何台ものルータが存在するときには、あとのTracerouteを利用することも必要です。
5. 最後に目的のホストの周りを確認


以上の手順で、順番に確認して最終的に目的のホストの配線やTCP/IPの設定を確認していきましょう。

また、PINGはIPアドレスだけでなくホスト名で行うこともあります。
IPアドレスでのPINGは成功するのに、ホスト名では失敗する場合にはDNSの名前解決がうまくいっていないケースが考えられますので、DNSの設定を確認しましょう。

セキュリティ上の理由からルータやサーバでは、ICMPを受け付けないように設定されている場合がありますが、その場合は、PINGによる接続性の確認を行うことができません。


『Traceroute』
TracerouteもPINGと同様にICMPを利用する問診ツールです。Tracerouteによって、目的のホストまでの通信経路を確認することができます。Tracerouteは、IPヘッダのTTLというフィールドをうまく利用することによって、目的までの通信経路がわかるようになります。

すでにメルマガ、ホームページで解説しているので詳しいことはこちらをご覧ください。
ICMP(Internet Control Message Protocol)その6


TracerouteもICMPを利用しているため、場合によってはうまく動作しないことがあるということも心にとめておく必要があります。


『Telnet』
PINGやTracerouteで特に問題がないのに、あるサービスにだけアクセスできないという場合には、Telnetによって確認することができます。

通常のTelnetでは、目的のホストのポート番号23に対してアクセスしますが、23ではなくて、
特定のポート番号に対してアクセスすることができるようになります。

たとえば、WebサーバできちんとHTTPが動作しているかどうかを確認するためには、

telnet [WebサーバのIPアドレス] 80

という具合に、目的のサーバのIPアドレスの後にポート番号を指定します。HTTPだけでなく、FTPやSMTPなどその他のサーバのサービスの確認も同様に行うことができます。

ただし、インターネット上のサーバに対してこのようなポート番号を指定したTelnetを行うことはポートスキャンをしていることと同じになってしまいます。不正アクセスと勘違いされないように注意する必要があります。


『nslookup』
DNSサーバは、ホスト名とIPアドレスの名前解決を行っていますが、この名前解決をテストするためのツールがnslookupです。

通常のホスト名からIPアドレスを解決する正引きだけでなく、IPアドレスからホスト名を解決する逆引きのテストも行うことができます。




4.5.1 情報収集と対処方法

トラブル対応と同様に、セキュリティに関する対処もネットワークを構築した後に継続してやらなければいけないことです。
日々、さまざまなOSやアプリケーションにセキュリティホールが発見されています。これらを放置してしまうと、不正にアクセスされてしまったり、不正アクセスの踏み台になってしまう危険性があります。
そのため、
システムおよびネットワーク管理者は、OSやアプリケーションのセキュリティホールや新しいコンピュータウィルス、新しい不正アクセスの手口などについて継続的に情報収集を行う必要があります。


多くの場合、基本的なチェックを行うことによって不正アクセスを防御することが可能です。たとえば、SMTPサーバで他のドメインあてのメールを中継しないようにすれば、スパムメールの踏み台になることを防ぐことができます。また、OSやアプリケーションはインストールした時のデフォルトの設定で動作させると、必要のないサービスが稼動していることがあります。こうした
必要のないサービスを停止させておくと、これらに関連するセキュリティホールの影響を受けなくてすみます。

そして、日々の管理においても基本的なことが重要です。たとえば、

・不要なユーザアカウントはすぐに削除
・ユーザに単純なパスワードを使用させない
・パスワードを定期的に変更させる

といったごく基本的なことを怠っていると、そこから不正アクセスされてしまう危険性があります。

こういったセキュリティ対策を行うに当たって、必ずきちんとしたセキュリティポリシーを持つことが重要です。セキュリティポリシーは、どのようなサービスを提供し、どのようなサービスは提供しないのかという基本方針に加えて、日ごろの管理体制や情報収集の方法・体制、もしも不正アクセスがあった場合の対処方法なども含まれています。
セキュリティポリシーはいったん決めたら変えないものと思う人がけっこういるのですが、そんなことはありません。セキュリティポリシーも状況に応じて柔軟に変更していくことが必要です。





4.6.1 対処方法

さまざまな対策を行っても、不正アクセスされる可能性はゼロではありません。万が一、不正アクセスされてしまった場合は、以下のような対処が必要となり
ます。

『原因の特定』
不正アクセスを発見した場合やネットワークを通じて感染するウィルスに感染した場合には、他のコンピュータやサイトへ被害が広がることを防ぐために、システムをネットワークから切り離すことが必要になることがあります。ネットワークのケーブルを抜いてしまったりするということですね。
その上で、不正アクセスの原因を特定します。ここで、
日ごろから如何にログをきちんと収集して、定期的なチェックを行っているかということが効いてきます。ログファイルは、改ざん・削除されている可能性もあるので、100%信頼できるわけではありませんが、後々の調査のために不正アクセス時のログファイルはきちんと保存しておきます。

『システムの復旧』
原因を特定した後、システムの復旧を行います。
最悪のケースでは、システム全体の再インストールが必要となります。復旧する場合には、正確な信頼できる情報に従って行わなければいけません。

『事後処理
もしも
不正アクセスの踏み台になってしまったら、相手先に事情を説明しなくてはいけません。また、IPアドレスなどから不正アクセスを行ったクラッカーを特定するように努力します。
また、
再発防止のためにセキュリティポリシーを改めて考え直すことも重要です。セキュリティレベルを向上させるツールを導入したり、利用者に対する教育を行い、セキュリティに対する意識を向上させることなどが含まれます。そして、必要ならば情報共有のために適切な機関に対する報告を行います。




4.6.2 申告


同じような手口の不正アクセスを防止したり、被害の拡大を防ぐためには
情報の共有が重要です。代表的な機関は次の通りです。

IPA 情報処理振興事業協会(Information-technology Promotion Agency,Japan)
http://www.ipa.go.jp/security/
国内の情報セキュリティ対策の必要性・重要性認識を啓発し、具体的な対策情報・手段を提供し、暗号技術や認証技術の開発・評価・研究を通じてセキュアな情報インフラストラクチャ整備に貢献している機関です。


JPCERT/CC コンピュータ緊急対応センター(JaPan Computer Emergency Response Team/Coordination Center)
http://www.jpcert.or.jp/
日本国内の不正アクセスの動向や対策情報を提供し、セキュリティに関する啓蒙活動を行っている機関です。「初心者のためのセキュリティ講座」や、JPCERT/CCメーリングリストというった役に立つ情報を提供しています。海外における同様の機関として、米国の団体であるCERT/CC(Computer Emergency Response Team/Coordination Center)があります。





メールマガジンの購読はこちら↓

『ネットワークのおべんきょしませんか?』 を購読しませんか?
めろんぱん E-mail




(C) Copyright 2000-2002 Gene All Right Reserved