セキュリティを意識したネットワークシステム設計、5つのポイント(2/4 ページ)

» 2005年07月21日 13時34分 公開
[松浦孝康(JPRS),ITmedia]

 サービスそのものをセキュアにするためには、そのサービスの提供に不要な機能を設定から取り除くことなどがある。例えば、Webサーバソフトウェアであれば、デフォルトで設定されるが使わない機能を、設定から削除する。また、ファイルやディレクトリのパーミッションの設定を適切に施すといった作業も必要となる。

 サーバへのアクセス制限については、外部からそのサーバへの不要なアクセスを遮断するためだけでなく、サーバが侵入されてしまった場合にでも、そこから別のシステムへ攻撃・侵入できないように隔離できるような構成を取ることも重要である(図2)。具体的には外部から内部に入ってくるアクセスの制限と、内部から外部へのアクセスの両方を制限することで、万一侵入されても被害を局所化することができる。

図2 図2●アクセス制限

 またアクセス制限考える際には、誰がそのシステムにアクセスするのかをよく検討してポリシーを記述する。

 例えば、システムにアクセスする人間は、一般のエンドユーザーや内部の人間である開発部隊、業務をこなす人、システムを管理する人などさまざまだ。しかもそれぞれがシステム内の異なるサービスにアクセスすることになるため、人の種類に合わせたポリシーを記述しなければならない。

 また、このようなアクセス制限という「機能」は、サービスを提供するサーバとは別にファイアウォールを設置することで一括したセキュリティ管理が行えるので、運用面で有利になる。

2:侵入されても被害を局所化できること

 攻撃/侵入について上記のような対策を行っても、100%安全なシステムはありえない。このため、万が一侵入されてしまった時のことも考えて、システムを設計することも重要である。

 そこで、前述した図2のファイアウォールとサーバを1つのセットとし、それを多段で構成して、機能を分離する方法がある。図3では、Webサーバという機能と、Webサーバが扱うデータが分離されている。

図3 図3●機能を分離して構成する

 重要なデータの置き場所を分離することで、データへのアクセスを制限することができる(ここで言うデータとは、データベース上に保存される情報やWebサーバで公開するHTML や画像ファイルなどを指している)。もし、これらのデータがWebサーバ上に置かれていた場合、そのサーバに侵入されるとデータが改ざん、消去されるといった危険性がある。

 データを分離することで、データを提供するデータベースサーバへのアクセスを制限したり、読み出し専用を駆使して書き換えを不可能にすることができる。また、Webサーバ側では、機能がシンプル化されることにより、Webサーバプログラムやアプリケーションの管理/運用に注力できる。

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ