AppArmorでアプリケーションのファイアウォールを構築Linux Hacks(3/3 ページ)

» 2006年12月14日 15時58分 公開
[Mayank-Sharma,Open Tech Press]
SourceForge.JP Magazine
前のページへ 1|2|3       

長所と短所

 AppArmorの導入はごく簡単であり、少なくともSUSEユーザーならば苦労しないだろう。インストール時にカーネルやアプリケーションを再コンパイルする必要はなく、Novellのどちらのディストリビューションにもインストールが統合されている。SUSE Linuxのホームユーザーでも、比較的簡単に、GaimやFirefoxといった重要なネットワークアプリケーションを保護するプロファイルを設定できるだろう。

 だが、AppArmorの機能を最大限に活用するためには、対象アプリケーションの仕組みを細部までよく知る必要がある。いったんプロファイルを設定すると、そのプロファイルに含め忘れた機能にはアクセスできなくなる。慎重に設定しないと、AppArmorの柔軟性が困った事態をもたらすおそれがあるのだ。これを回避するには、さまざまなファイルとライブラリに対する参照を1つ1つ確認し、すべての参照について適切な権限を選択するようにする。ワイルドカード文字を使用するときは特に注意する。

 Novellは、AppArmorに関して詳細な「Administrators Guide」と簡単な「Quick Start Guide」の2種類のマニュアルを用意している。さらに、FAQ幾つかのメーリングリストもある。前にも述べたとおり、たたき台となるプロファイルも幾つか用意されている。エンタープライズユーザーならば、SUSE Linuxサブスクリプションを通じて保守アップデートを入手できる。

予定されている機能拡張

 AppArmorはいまなお開発中である。AppArmorはNovellの2種類のディストリビューションに統合されているが、Slackwareで使用することもできる。Ubuntuポートも計画中である。AppArmorの機能をより洗練させるために、現在の、単にlddを繰り返し実行して共有ライブラリ呼び出しの一覧を作成するアナライザに代えて、もっと良い静的アナライザを使用する計画もある。また、管理者の時間を節約するために、報告済みのアクションは報告しないという、より賢い学習モードを導入する計画も進んでいる。

 AppArmorで保護されるのは、プロファイルのあるアプリケーションだけである。将来的には、専用のプロファイルを持たないすべてのアプリケーションに対応するグローバルプロファイルの実装が計画されている。このプロファイルでは、ブラックリスト方式に従い、ディストリビューション内の重要ファイル(/etc/sudoers、/etc/shadow)に対するアクセスを基本的にすべて拒否し、特別に許可されたプロファイルを持つアプリケーションのアクセスだけを例外として認めるようにする。

まとめ

 AppArmorは非常に完成度の高いツールだが、Novellはさらに改良を続けている。ここまで一貫して述べてきたように、これは500ページのマニュアルがないと使えないという類のものではない。しかし、どんなセキュリティツールでもそうであるように、正しい使い方を学ぶ必要がある。現時点では、2種類のSUSEディストリビューションからごく簡単に使用できるが、広く普及するためには、ほかのディストリビューションでもサポートされる必要がある。ただ、最近のNovellとMicrosoftのパートナーシップについては何かと批判的な声があるので、AppArmorもほかのディストリビューションベンダーに素直には受け入れられない可能性がある。

AppArmorかSELinuxか

 オープンソースセキュリティに関しては、少なくとも2つの陣営がある。1つはAppArmorの使いやすさを支持するグループで、もう1つはより包括的なSELinuxを支持するグループである。AppArmorとSELinuxは同じゴールを目指しているが、アプローチが異なっている。AppArmorは、個々のアプリケーションに焦点を当て、各アプリケーションが必要不可欠なライブラリやファイルのみにアクセスするよう制限している。

 一方のSELinuxは、オペレーティングシステム全体を制御しており、ディストリビューション内の情報のフローまでも管理している。SELinuxのアプローチはArmorよりも対象範囲が広く、MACやMulti-Level Security(MLS)といった強力なセキュリティ技術に基づいている。ただし、そのぶんだけセットアップは難しくなっている。

 どちらの製品もオープンソースだが、Novellは今でも単独でAppArmor開発を行っている。対するSELinuxは、Red Hat、Tresys、NSA、IBM、HPなど複数のベンダーに加えて、個人のオープンソース開発者が開発を進めている。それぞれのツールの発展経過を比較するのは不公平だろう。なぜなら、AppArmorはつい最近オープンソース界にデビューしたばかりだからだ。SELinuxは2000年の後期にオープンソース化されて以来、新しいグラフィカルツールやユーティリティに助けられながら、セットアップと保守を簡便化するという方向に向かって着実に進歩を遂げてきた。

 どちらのソリューションも、ローカルコンピュータと外界との境界領域で動作しているアプリケーションを保護することを目的としている点は同じである。では、どちらを使用するべきだろうか。現時点の状況では、どのディストリビューションを使用しているかによって答えは異なる。AppArmorを最大限に活用するためには、フリーのopenSUSEディストリビューションか、エンタープライズ用のSUSE Linuxを使用する必要がある。同様に、SELinuxを最大限に活用できるのは、FedoraおよびRed Hat Enterprise Linuxのユーザーである。

前のページへ 1|2|3       

Copyright © 2010 OSDN Corporation, All Rights Reserved.

注目のテーマ