LSM(Linux Security Module)(えるえすえむ)
最終更新:2026/4/28
LSMは、Linuxカーネルにセキュリティポリシーを適用するためのフレームワークであり、アクセス制御機構を提供する。
ポイント
LSMは、SELinuxやAppArmorといったセキュリティモジュールを容易に統合し、柔軟なセキュリティポリシーを実現する。
LSMの概要
LSM(Linux Security Module)は、Linuxカーネルにおける強制アクセス制御(MAC)を実現するためのフレームワークです。従来のDAC(Discretionary Access Control)に加え、LSMを導入することで、より厳格なセキュリティポリシーを適用できます。
LSMの仕組み
LSMは、セキュリティポリシーをモジュールとしてカーネルに組み込むことを可能にします。これらのモジュールは、様々なセキュリティポリシー(例:SELinux、AppArmor、SMACK)を実装し、システムコールが実行される際に、そのアクセスが許可されるかどうかを判断します。LSMフレームワークは、セキュリティモジュールが互いに干渉することなく、協調して動作できるように設計されています。
LSMの利点
- 柔軟性: 様々なセキュリティポリシーをモジュールとして追加・削除できます。
- 拡張性: 新しいセキュリティポリシーを容易に開発・統合できます。
- モジュール性: セキュリティポリシーをカーネルに深く組み込むことなく、独立したモジュールとして実装できます。
- 強制アクセス制御: DACだけでは防ぎきれないセキュリティ脅威に対抗できます。
LSMの代表的なモジュール
- SELinux (Security-Enhanced Linux): 米国国立安全保障局(NSA)によって開発された、非常に強力なMACフレームワークです。
- AppArmor: Ubuntu Linuxなどで採用されている、パスベースのMACフレームワークです。
- SMACK (Simple Mandatory Access Control Kernel): よりシンプルなMACフレームワークで、SELinuxよりも設定が容易です。
LSMの利用
LSMは、サーバーや組み込みシステムなど、高いセキュリティが要求される環境で利用されます。SELinuxやAppArmorなどのモジュールを適切に設定することで、システムを不正アクセスやマルウェアから保護できます。