アットマーク・アイティ @IT@IT自分戦略研究所QA@ITイベントカレンダー+ログ
 @IT > Linuxによるソリューションの実現 - セキュリティ基盤を実現する「Tivoli AMOS」
 
@IT[FYI] 企画:アットマーク・アイティ 営業企画局
制作:アットマーク・アイティ 編集局
掲載内容有効期限:2003年1月15日

 

Linuxによるソリューションの実現 第1回
セキュリティ基盤を実現する「Tivoli AMOS」
(Tivoli Access Manager for Operating Systems)

  商用サーバ領域に進出した
Linuxへの次なる要求は「セキュリティ」

 旧来のホスト・エンジニアからすれば驚異だろうが、いまやLinuxは商用サーバ領域に進出し、例えばインターネット・サーバ(Webサーバ)として一定の地位を築いている。国内のサーバのシェアとしては、グラフ1のように1998年は1%だった。それが、グラフ2のように2000年では8%まで伸びている。また、グラフ3のように米国における2001年サーバOS市場でのLinuxのシェアは、25%にまで達しているという報告もある。

グラフ1 1998年の出荷本数によるサーバOSのシェア(IDCジャパン調べ)

グラフ2 2000年の出荷本数によるサーバOSのシェア(IDCジャパン調べ)

グラフ3 米国における2001年のサーバOSのシェア(IDC調べ)

 これだけサーバOSとして普及しているLinuxだが、多くの人にとって気になる点として安定性とともにセキュリティレベルが挙げられるだろう。では、Linuxのセキュリティはどうなっているのか?

 一言でいって、Linuxが本質的にセキュリティに問題があるOSだということはない。現在のLinuxは、セキュリティの機能としてほかの商用OSに劣らない機能を持っている。ただし、Linuxの性格から便利さを優先させ、実質的にセキュリティが低くなっている側面がある。これは、UNIX系OS全般にいえることだろう。また、オープンソースとしての特質から解析されたセキュリティホールが攻撃されたことも過去にはあった。しかし、ほかの商用OSにおいてもセキュリティ問題が報告されることは日常茶飯事であり、Linuxが特別にセキュアでないとはいえないだろう。

 具体的に、Linuxがクラッカーの攻撃の対象とされたケースを見てみよう。例えば、2001年12月には世界中のLinux Webサーバが同時多発的に攻撃された。このとき特定のバージョンのtelnetdには、telnetで接続しているユーザーの操作を遠隔で行うことができてしまうという欠陥があった。そこをクラッカーに狙われた例も報告されている。また、同様に特定のバージョンのLPRng、rpc.statd、wu-ftpdではワームによる攻撃例が報告されている。Ramenはこれらのサービスに感染するワームで、一度感染したらLAN内のほかのLinuxマシンへも感染しようとする。同様のワームとして、LionおよびAdoreというものも報告されている。これらの事例は、LinuxがメジャーなサーバOSとなったこと、オープンソースであること、デフォルトの状態ではセキュリティ対策が必ずしも万全でないことに起因しているといえるだろう。

 ただ、特筆しておきたいのは、ほかのUNIX系OSと同じく、Linuxも器として極めてフレキシブルであり、設定や機能の追加で高いセキュリティを実現することが可能であることだ。このようなツールの1つとして、容易にLinuxのセキュリティ機能を高めることのできるアドオン・ソフト「Tivoli Access Manager for Operating Systems(以下、AMOS)」が先ごろ日本IBMより発表された。では、ここでその製品の紹介をしていこう。

 

サーバのセキュリティを根本的に管理する仕組み

 AMOSは、システム管理ソフトウェア「Tivoli」ブランドで提供されるセキュリティ管理製品の1つで、今年11月に新バージョンが発表された。AMOSは、LinuxだけでなくAIXやSolarisなどのUNIX系OSが混在する環境で、これらOSに対する深い知識なしに、AMOSの同一操作によってUNIX系OSのセキュリティを汎用機レベル(z/OS Security Server)まで引き上げることのできる製品である。では、実際どのような環境を構築できるのだろう? Tivoliは、クライアント/サーバ・モデルのシステムとして構築される場合が多く、その中でAMOSは次のような構成をとる。

図1 Tivoliのクライアント/サーバ・モデル中のAMOSの位置付け

 最小構成としては、Tivoli Access Manager管理サーバとAMOSがインストールされた各サーバOSとのセットという形となる。図1のように管理サーバによって、その配下にあるAMOSがインストールされたすべてのサーバのセキュリティポリシーとユーザー情報を一元的に管理することができる。このように多くのサーバ群を一元管理できることは、セキュリティの向上と、管理コストの軽減にも寄与することは明らかだ。さらに、Tivoli Identity Manager や Tivoli Access Manager for e-businessなどのほかのセキュリティ製品との連携による統合管理を行うことも可能である。

 では、AMOSがインストールされた個々Linuxサーバの中はどのような構成になっているだろうか。

図2 Tivoli AMOSのLinux内での位置付け

 基本的にLinuxのOSとしてのコアの部分は、ほかのUNIXと同じくプロセス管理などの最小限の機能しか持っていない。そこに各種デーモンやサービス、コマンド群によってOSとしての環境を構築している。AMOSは、OSのコアのすぐ上に位置し、各種サービスやコマンド、つまりユーザーの操作も含めてOSとの間のインターフェイスとなり、これらの制御を一手に行う。それによって、サーバのセキュリティを深い部分で管理するという仕組みである。

 

AMOSの制御機能により高レベルのセキュリティを実現する

 ではここで、AMOSによるセキュリティ管理の仕組みでは、具体的に何が強化されるのかを見てみよう。AMOSによって強化されるセキュリティは大きく分けて次の3点である。

  • UNIX資源アクセス制御
  • 監査ログ機能
  • rootユーザーの制御機能

 これらの機能によってインターネット上にあるLinuxサーバもLAN内のLinuxサーバも、セキュリティの強化をすることができる。

 例えば、Webサーバの場合、クラッカーは特定のLinuxのサービスを狙って攻撃を仕掛けてくることが多い。AMOSは、そのような攻撃に対しても威力を発揮できるだろう。AMOSによって特定ユーザーに対してログインできるサーバなどを制限できるため、恣意(しい)的なサーバ侵入を抑制できる。重要なリソースへのアクセス制御が細かく設定できるため、たとえクラックによって特権ユーザーであるrootユーザーになったとしても、rootの権限はセキュリティポリシーにのっとりAMOSによって制御されるので好き勝手はできない。また、AMOSによるアクセス制御機能によって、クラックされたLinuxサーバを踏み台にしてほかのコンピュータを攻撃するようなことも非常に困難になる。さらに、デフォルトにはない充実した監査機能が用意されているので、攻撃を受けた記録、rootユーザーによるオペレーションも記録でき、それらのログは特権ユーザーのrootユーザーといえども変更、消去できないようにすることが可能であり、セキュリティ監査証跡を漏れなく残すことができるのだ。

 また、実務的な利便性を優先させた結果、LAN内のサーバはインターネット上のサーバよりもセキュリティ設定が緩くなる傾向がある。しかし、組織内にクラッカーがいる場合、あるいはそのLANにクラッカーが外部から侵入した場合、そのようなLinuxサーバが重大な危険にさらされる可能性がある。利便性の面からアクセス制御を厳しく設定できない場合でも、AMOSは監査機能とrootユーザーの制御によってLinuxサーバのセキュリティを強化でき、潜在的クラッカーに対する牽制ともなる。

 例えば、組織内でroot権限が複数の管理者に割り当てられていることがある。通常、複数の管理者がrootにsuできることは当然のことだ。しかし、rootというオールマイティーな権限は、すべてのファイルの閲覧、改ざんから消去まで何でもできてしまう。rootになれるユーザーが多いほど危険なことは理解できるだろう。このような組織内のセキュリティ脆弱性に対して、AMOSの高機能な監査機能とrootユーザーの制御機能は、Linuxサーバのセキュリティを大幅に強化することができる。

 こうしたAMOSのセキュリティ強化機能によって、インターネット環境でもLAN環境でもLinuxサーバのセキュリティを強化することが可能となるのだ。

 では、それぞれについて詳しく説明しよう。

● UNIX資源アクセス制御

 UNIX資源アクセス制御とは、ファイル/ディレクトリ、管理サーバへのユーザーのログイン、TCPサービス単位のアクセス制御、改ざん検知、プロセスの保護などに関するアクセス制御のことである。

  • より詳細なアクセス制御

    LinuxおよびUNIXでは、ファイル/ディレクトリへのアクセス制御として、特定のユーザー、グループに書き込み、読み込み、実行に関する権限を与えるかどうかだけが設定できる。しかし、重要な企業情報を扱う業務用サーバなどでは、特定のユーザーのみにアクセス権を与えたいという設定が必要となることがある。例えば、重要な人事データにアクセスできるのは人事担当者のみで、サーバ管理者といえど、このデータを見ることができないようにしたい場合などだ。その場合AMOSを使うことにより、ユーザー単位でファイル/ディレクトリへのアクセス制御を詳細に設定できる。さらに、更新、所有者変更、作成、ディレクトリ変更などに関する設定も行うことができる。

  • サーバ間のアクセス制御(サーバ間の渡り歩きを禁止)

    AMOSによって、ファイル/ディレクトリのアクセス制御と同じく、特定のサーバへ、または特定のサーバからのアクセスを、任意のユーザーごとにアクセス制御することができる。例えば、telnetやrloginなどのコマンドを使って、特定のユーザーが特定のサーバへログインすることを許可または禁止することができる。あるいは、特定のサーバから別のサーバへログインすることを許可または禁止することができる。これによって、不正なユーザーが、許可されていないサーバへログインすることを防ぐだけでなく、そのサーバを踏み台として別のサーバへの渡り歩きを防御することができる。TCPサービスへのノード・ネットワーク単位で制御できるため、ユーザーとサーバを関連付けた細かなアクセス制御が可能となる。

  • suの制限

    通常、suコマンドを使ってrootユーザーになることができるが、AMOSによって特定のユーザーに対してsuコマンドを制限し、rootユーザーになることを抑制できる。また、suコマンドが許可され、rootユーザーになった場合も、AMOSによるユーザー制御が保持されるため、rootユーザーであっても、AMOSによるユーザー権限内での作業しか許可しないようにするといったきめの細かいユーザー管理が可能だ。

  • ユーザーの追跡監査

    AMOSでは、特定のユーザーがsuでrootユーザーになった場合でも、rootユーザーになる前のユーザーとして監査ログを取ることができ、ユーザーの動向を追跡できる。

  • プロセスの保護

    rootユーザーであれば、killコマンドですべてのプロセスを強制終了することができるが、AMOSによって、たとえrootユーザーでもkillできないように特定のプロセスを保護することができる。この機能によって、rootユーザーからもプロセスを保護することが可能となる。

  • 改ざん検知

    特定のプログラムや重要なファイルを監視して、改ざんを検知できるよう設定ができる。さらに、そのファイルが実行できないようにすることも可能だ。

  • ログイン制御

    ログインを特定の回数失敗すると、ロックアウトする機能を提供する。これによって、ランダムあるいはしらみつぶしにパスワードを試すようなクラッキングを防ぐことができる。また、パスワード強化ポリシーの適用とパスワードの履歴により、ユーザーが脆弱なパスワードを指定できないように設定できるため、さらに強固なセキュリティの壁を築くことができる。さらに、同一ユーザーが同時にログインできる数も制限できる。

● アクセス履歴を詳細に監査するログ機能

 AMOSによって、セキュリティ上の記録を残す監査ログ機能が強化できる。強化されるポイントは、通常のLinuxよりも広範な監査範囲、グローバルまたは個別リソース単位での監査機能、高い監査ログ出力機能の3点である。例えば、特定のリソース(ファイル、ディレクトリ、pseudoデバイスなど)に対する、すべての監査ログを収集することが可能である。

 また、これらのログは、プラットフォームの種類に依存しない同一レベルの精巧な監査ログデータが取得できることも利点だ。ただし、監査レベルをALLなどに設定すると、莫大な量のログデータが発生し、ファイルシステムがパンクする可能性があるので注意が必要である。

ファイルの監査ログ例(VerBose Format)

● rootユーザーの制御機能

 Linuxのrootユーザーはシステム上の特権ユーザーで、何でもすることができる。すべてのファイル、ディレクトリにアクセスはもちろん、削除することもできる。そこがセキュリティ上の問題だ。また、仮に正当なrootユーザーでも誤操作してしまうことがあり得る。特権ユーザーであるrootユーザーの誤操作は、かなり発生頻度の高い障害の原因なのだ。

 AMOSをインストールすると、rootの権限をAMOSが握ることになる。通常rootユーザーは、自分に掛けられたセキュリティ制限を自分自身で外すこともできるが、AMOSによる制御が行われている場合は、rootユーザーであっても勝手に制御を外せずAMOSの制御下に置かれるのだ。

 このようにAMOSがrootの権限を制御することにより、すべてのユーザーは非rootユーザーとしてログインすることになる。そして、AMOSポリシーでrootの権限委譲を設定する。具体的には、su特権またはsetuidでrootに変更可能なユーザーを判別する。また、root権限の使用、root権限を使用したユーザーに対する完全な監査を行うことができる。さらに、rootユーザーがログファイルを削除、または修正して不正行為の証跡を隠ペいできないように重要データを保護することができる。

 セキュリティに完全といえる手段はないだろう。脆弱性への対処と不断の努力によって、セキュアな環境を維持していくというのが基本的な考え方だ。

 AMOSは、Linuxの持つ基本的な脆弱性を補って、高いレベルのセキュリティを実現することを可能とする。さらに、ネットワーク環境でセキュリティの一元管理が可能となり、社内の情報システム全体のセキュリティレベルの向上と、管理コストの削減も同時に図ることができる。

 ミッションクリティカルな用途へのLinuxの普及が進む中、今後AMOSの価値はますます高まるだろう。

 
オートノミック・コンピューティング

オートノミック・コンピューティングに欠かせない、4つの機能とは?

自己構成機能

自己修復機能

自己最適化機能

自己防御機能

また、IBMの「オートノミック・コンピューティングへの取り組み」についても、ぜひご覧ください。

IBMの取り組み
 

関連リンク

日本IBMトップページ

Tivoli製品情報

Tivoli Customer Portalオープン

Winning with Tivoli (セキュリティ関連情報)

プレスリリース

IBM総力をあげてオートノミック・コンピューティング取組みへ


自己修復機能等を強化したストレージ管理ソフトウェアを発表

Web等でのプライバシー情報遵守を支援するソフト


@IT関連News/記事

Project eLizaの最新成果はTivoli

マンスリー・レポート IT市場は自律型コンピューティングに向かうのか?(2002年11月号)

「WebSphere V5.0」登場、Webシステムの自律化へ一歩前進

ビジネス・インパクト管理でシステム停止を予測、チボリ


Webサービスのセキュリティにインパクトを与える提携


</comment> <tr> <td bgcolor="#EEEEEE"><font size="2"><a href="javascript:KeepIt();"> <img src="/club/keepoint/images/ico_kpt.gif" alt="kee&lt;p&gt;oint保存" border="0" align="absmiddle" width="24" height="18">kee&lt;p&gt;ointで保存</a></font></td> </tr> <comment>

 
@ITトップ@IT Special インデックス会議室利用規約プライバシーポリシーサイトマップ