Linux Kernel Conference 2005でTOMOYO Linuxを発表するNTTデータの原田季栄氏
Linux Kernel Conference 2005でTOMOYO Linuxを発表するNTTデータの原田季栄氏
[画像のクリックで拡大表示]

 NTTデータは11月11日,同社が独自開発したセキュアOS「TOMOYO Linux」をオープンソース・ソフトウエアとして公開した。アクセスを制限するルールである「ポリシー」の自動学習機能を備えることが特徴。

 セキュアOSは,アクセス権限を細分化することで,例え侵入されても影響範囲が限定されるようにすることなどでセキュリティを向上させたOS。SELinuxなどが代表的だが,個々のプログラムやファイル,ユーザーにアクセス権限を割り当てる「ポリシー」の作成,編集が煩雑なことが課題となっていた。

 TOMOYO Linuxは「学習モード」で,ユーザーが実行したプログラムやアクセスしたファイルを記録し,ここで行われた動作だけを許可する「ポリシー」を自動生成する。自動生成されたポリシーを適用することで,学習モードで実行された操作以外を禁止することができる。ポリシーはテキストとして生成されるので,編集することも可能。

 「当初SELinuxを対象にポリシーの自動生成を試みたが,SELinuxはアクセス権限設定単位であるドメインが階層化されていないフラットな構造のため,自動生成が困難だった」(開発を手がけたNTTデータ オープンソース開発センタ シニアスペシャリスト 原田季栄氏)。そのため,TOMOYO Linuxではドメインは階層構造となっている。

 すでに,NTTデータ社内だけでなく,顧客のシステムでもTOMOYO Linuxが動作しているという。TOMOYO Linuxは,ファイアウォールとして導入されている。「通常と異なる操作はすべてエラーとして記録されるため異常の検出が容易」(原田氏)。

 TOMOYO Linuxは,Sourceforge.jpの同プロジェクトのページからダウンロードできる。

 NTTデータでは,TOMOYO Linuxに先立って,ルート・ファイルシステムを読み取り専用にしてシステム・ファイルの改ざんを防止する「SAKURA Linux」(開発コード名)を開発している。またデバイス・ファイルの改ざんを防止するため/devをアクセス制限付きにしたファイル・システム「SYAORAN」(開発コード名),認証機構の「CERBERUS」(開発コード名)も開発している。

【訂正・追記】
掲載当初「SELinuxはアクセス権限設定単位であるドメインが階層構造となっていため,ポリシーの自動生成が困難だった(略)TOMOYO Linuxではドメインは階層化されていないフラットな構造となっている」と記述しておりましたがこれは誤りで,正しくは「SELinuxはアクセス権限設定単位であるドメインが階層化されていないフラットな構造のため,ポリシーの自動生成が困難だった(略)TOMOYO Linuxではドメインは階層構造となっている」です。お詫びして訂正させていただきます。また「SAKURA Linux」,「SYAORAN」,「CERBERUS」はいずれも開発コード名である旨を追記しました。(2005年11月14日)