Linux Security Modules
ウィキペディア フリーな encyclopedia
Linux Security Modules (LSM) はGNU/Linux(Linuxディストリビューション)において、任意の1つのセキュリティ実装のみをサポートすることを回避し、同時に様々なコンピュータセキュリティモデルをサポートするためLinuxカーネルに追加されたフレームワークである。GNU General Public Licenseの条項に従いライセンスされ、Linuxカーネルバージョン2.6の標準的な機能の一部となっている。AppArmor、Security-Enhanced Linux (SELinux)、Smack(英語版)そして TOMOYO Linuxは現在メインライン(メインストリーム)カーネル(リーナス・トーバルズにより管理されるカーネルソースコードツリーで公式のLinuxカーネル)に存在するLSMベースのセキュリティモジュールである。
カーネルソースコードディレクトリのトップにあるsecurity/
というディレクトリの下にカーネル内処理に関するサブルーチン群が、include/linux/security.h
ヘッダファイルに主要な関数・構造体のプロトタイプ宣言や有益なマクロ、インライン関数がある。
名称より誤解を受けることが多いが、2011年現在におけるLSMはローダブル・カーネル・モジュール (LKM) ではなく、カーネル内に静的にリンクされる。またLSMの上に実装される各種セキュリティモジュールは以前はLKMとして実装可能であったが、現在では原則不可能である(後述)。
"Linux Security Module"と呼称する文書・Webページが散見されるが、正しくはLinux Security Modulesである。