Linuxを守る「SELinux」と「AppArmor」は何が違うのか?Linuxのセキュリティを比較【前編】

「Linux」を不正アクセスから保護するために、「SELinux」と「AppArmor」が活用できる。両者は具体的に何が違うのか。複数の観点から解説する。

2024年03月04日 05時00分 公開
[Jack WallenTechTarget]

関連キーワード

Linux | OS | 運用管理 | セキュリティ


 OS「Linux」は複数のセキュリティモジュールを標準で搭載する。その代表例が「SELinux」(Security-Enhanced Linux)と「AppArmor」だ。攻撃者による不正アクセスを防ぐため、アプリケーション分離機能を提供する点は共通だが、動作方法は異なる。以下でその違いを見ていこう。

SELinuxとAppArmorの違い

デフォルトの設定

 Linuxはディストリビューション(配布用パッケージ)によって、AppArmorとSELinuxのどちらが標準で有効化されているのかが異なる。具体的には、以下の「Red Hat Enterprise Linux」(RHEL)およびその派生ディストリビューションにおいて、標準でSELinuxが有効だ。

  • RHEL
  • Rocky Linux
  • AlmaLinux
  • CentOS Stream
  • Fedora

 これに対して、以下の「Debian」とその派生ディストリビューションは、標準のセキュリティモジュールとしてAppArmorを採用している。

  • Debian
  • Ubuntu
  • SUSE Linux
    • 商用版の「SUSE Linux Enterprise Server」
    • オープンソース版の「openSUSE」

 DebianベースのディストリビューションでSELinuxを利用できる一方、RHELベースのディストリビューションでAppArmorを利用することは推奨されていない。

アクセス制御

 SELinuxでは、セキュリティ属性の情報を示す「ラベル」をプロセスやファイルに割り当て、ラベルに基づいてセキュリティポリシーを構築する。セキュリティポリシーはエンドユーザーがアクセスできるもの、できないものを定義し、それに沿ってアプリケーションやプロセス、ファイルといったリソースに対するアクセス制御を実施する。セキュリティポリシーが未定義の場合、SELinuxはアクセスを許可しない。

 AppArmorはファイルパスごとにパーミッションの設定一式(プロファイル)を定義することで、アクセスを制御する。従来型の任意アクセス制御(DAC:Discretionary Access Control)は、リソースの所有者や管理者が他のエンドユーザーのアクセス権限を制御できるが、これはエンドユーザーの判断にアクセス権限の管理を委ねることになる。この欠点を補うためにAppArmorが提供するのが、強制アクセス制御(MAC:Mandatory Access Control)という仕組みだ。これによって、エンドユーザーの判断に左右されないセキュリティポリシーの運用が可能になる。

MLSとMCS

 「MLS」(Multi-Level Security)は、異なるセキュリティレベルを持つ情報の扱いを可能にするための仕組みだ。エンドユーザーとプロセスを「サブジェクト」、ファイルやデバイスなどのコンポーネントを「オブジェクト」として扱い、それぞれのセキュリティレベルの違いに基づいてアクセスを制限できる。

 「MCS」(Multi-Category Security)は、性質や用途に基づいた「カテゴリー」をオブジェクトに割り当て、カテゴリーに応じてアクセス制御をする仕組みだ。これによってSELinuxを利用するIT管理者は、異なるカテゴリーごとにアクセス制御をしやすくなる。

 SELinuxはMLSとMCSを使用するが、AppArmorはどちらも使用しない。

コンポーネント

 SELinuxは、主に以下のコンポーネントから成る。

  • サブジェクト
    • エンドユーザーやプロセスなど、アクセス制御を要求する主体
  • オブジェクト
    • ファイルやソケット、ネットワークインタフェースなど、アクセス制御の対象となる主体
  • カーネルモジュール
    • SELinuxを実現するモジュール
  • Access Vector Cache
    • パーミッションのキャッシュ
  • Security Server
    • アクセス制限をするかどうかを決定する、SELinuxの中核的なプログラム群
  • SELinux Policy Database
    • セキュリティポリシーを保管するデータベース

 AppArmorを構成する主要なコンポーネントは以下の通りだ。

  • プロファイル
    • アクセス制御のルール一式
  • Profile Loader
    • OS起動時にプロファイルを読み込んで適用する
  • 支援ツール
  • プロファイルの作成、編集、デバッグなどを実行するためのユーティリティー

アクセス制御レベル

 SELinuxで利用可能なポリシーは以下の2つだ。

  1. Targeted
    • デフォルトのポリシー
    • 特定のプロセスに対するアクセス制御を実施する
    • 対象となったプロセスは特定のドメインでのみ実行され、ファイルへのアクセスが制限される
  2. MLS
    • セキュリティレベルに基づいてアクセスを制御する

 モードは以下の3種類がある。

  1. Enforcing
    • デフォルトのモード
    • 読み込んだセキュリティポリシーをシステム全体に適用する
  2. Permissive
    • システムが全てのアクティビティーをログに記録し、アクティビティーの実行を拒否しない
  3. Disabled
    • SELinuxを無効にする

 AppArmorのプロファイルは、動作に関わる以下の要素を含む。

  1. Paths
    • プロセスがアクセスできるファイルを定義する
  2. Capabilities
    • プロセスが特定の機能を使用することを制限する

 AppArmorには2つのモードがある。

  • Enforce
    • ポリシーを強制的に適用する
  • Complain
    • ポリシーに違反した挙動のみをログに記録する

使い勝手

 一般的にSELinuxの仕組みは複雑であるため、AppArmorよりも使い方が難しい。その分、SELinuxの方がより細かくアプリケーション分離を制御しやすい。SELinuxに精通していないIT管理者が誤ってSELinuxを無効にしてしまい、システムを脆弱(ぜいじゃく)にする場合がある。

 AppArmorはSELinuxと比べて習得と使用が簡単であるため、SELinuxよりも安全な選択肢だと言える。複雑な制御を必要とするIT管理者にとっては、SELinuxの方が適切だ。

 これらの違いを以下の表にまとめる。

表 SELinuxとAppArmorの違い
機能 SELinux AppArmor
アクセス制御 ラベルをベースとしたセキュリティポリシー パスをベースとしたセキュリティポリシー
MLS/MCS MLSとMCSの両方を使用 MLSとMCSを使用しない
使いやすさ AppArmorよりも習得が難しい SELinuxよりも習得しやすく使いやすい
ディストリビューション RHELベースのディストリビューションを中心に採用 Debianベースのディストリビューションを中心に採用

 次回は、SELinuxとAppArmorの利点および欠点を比べる。

TechTarget発 先取りITトレンド

米国TechTargetの豊富な記事の中から、最新技術解説や注目分野の製品比較、海外企業のIT製品導入事例などを厳選してお届けします。

Copyright © ITmedia, Inc. All Rights Reserved.

鬮ォ�エ�ス�ス�ス�ス�ス�ー鬯ィ�セ�ス�ケ�ス縺、ツ€鬩幢ス「隴取得�ス�ク陷エ�・�ス�。鬩幢ス「�ス�ァ�ス�ス�ス�、鬩幢ス「隴主�讓滂ソス�ス�ス�ス鬩幢ス「隴趣ス「�ス�ス�ス�シ鬩幢ス「隴乗��ス�サ�ス�」�ス�ス�ス�ス

製品資料 フォーティネットジャパン合同会社

クラウドに必要な「データドリブンなセキュリティ」を実現する方法とは?

クラウド利用が当たり前となった今日、セキュリティ対策もまたクラウド環境に適したものでなくてはならない。とはいえ、大量のデータポイントが生成されるクラウド領域にあって、その全てのポイントを網羅するのは並大抵のことではない。

製品資料 TIS株式会社

Web攻撃総数の2割以上が狙うAPI、適切な管理とセキュリティ対策を行うには?

ビジネスでのAPI利用が進むにつれ、そのAPIを標的としたサイバー攻撃も増加している。それらに対抗するためには、「シャドーAPI」や「ゾンビAPI」を洗い出し、セキュリティ対策を徹底する必要がある。その正しい進め方を解説する。

製品資料 Okta Japan株式会社

アイデンティティー管理/保護の注目手法、「IGA」とは何か?

ある調査で企業の61%がセキュリティ優先事項のトップ3に挙げるほど、重要度が高まっているアイデンティティー管理・保護。その中で昨今注目されているのが「IGA」というアプローチだ。そのメリットや、導入方法を解説する。

製品資料 株式会社エーアイセキュリティラボ

AIで人材不足を解消、セキュリティ担当者のためのDXガイド

DX推進によってさまざまなビジネスシーンでデジタル化が加速しているが、そこで悩みの種となるのがセキュリティの担保だ。リソースやコストの制限も考慮しながら、DXとセキュリティを両輪で進めるには何が必要になるのか。

製品資料 パロアルトネットワークス株式会社

セキュリティ運用を最適化し、SOCの負担を軽減する「SOAR」とは?

サイバー攻撃が巧妙化し、セキュリティチームとSOCは常に厳戒態勢を取り続けている。さらにデジタルフットプリントの拡大に伴い、セキュリティデータが絶え間なく往来する事態が生じている。このような状況に対応するには、SOARが有効だ。

驛「譎冗函�趣スヲ驛「謨鳴€驛「譎「�ス�シ驛「�ァ�ス�ウ驛「譎「�ス�ウ驛「譎「�ソ�ス�趣スヲ驛「譎「�ソ�スPR

From Informa TechTarget

いまさら聞けない「仮想デスクトップ」と「VDI」の違いとは

いまさら聞けない「仮想デスクトップ」と「VDI」の違いとは
遠隔のクライアント端末から、サーバにあるデスクトップ環境を利用できる仕組みである仮想デスクトップ(仮想PC画面)は便利だが、仕組みが複雑だ。仮想デスクトップの仕組みを基礎から確認しよう。

繧「繧ッ繧サ繧ケ繝ゥ繝ウ繧ュ繝ウ繧ー

2025/04/25 UPDATE

  1. 譌・譛ャ縺ァ繧ょッセ遲悶′驕�l繧九€後≠縺ョ萓オ蜈・邨瑚キッ縲阪′諤・蠅冷€補€墓判謦�げ繝ォ繝シ繝励�豢サ蜍募ョ滓�
  2. 繝ゥ繝ウ繧オ繝�繧ヲ繧ァ繧「謾サ謦��窶懷庶逶岩€昴′30��ク帙€€遞シ縺偵↑縺上↑縺」縺溽官鄂ェ閠��隱、邂�
  3. Acronis縲√そ繧ー繧ィ繧サ繧ュ繝・繝ェ繝�ぅ繧樽SSP縺ォ隱榊ョ壹€€窶應セ。譬シ遶カ莠牙鴨窶昴〒荵励j謠帙∴菫�☆
  4. 縲窟pp Store縲阪d縲隈oogle Play縲阪〒窶懷些髯コ縺ェ繧「繝励Μ窶昴r隕区・オ繧√k譁ケ豕�
  5. 繝ゥ繝ウ繧オ繝�繧ヲ繧ァ繧「髮�屮Black Basta縺ョ莨夊ゥア縺梧オ∝�縲€譏弱i縺九↓縺ェ縺」縺滓判謦�€��窶懈悽髻ウ窶�
  6. 縲瑚コォ莉」驥代r謾ッ謇輔≧縲堺サ・螟悶�繝ゥ繝ウ繧オ繝�繧ヲ繧ァ繧「蟇セ遲悶�譛ャ蠖薙↓縺ゅk縺ョ縺具シ�
  7. DeepSeek縺ョ逕滓�AI縺ォ繧サ繧ュ繝・繝ェ繝�ぅ蟆る摩螳カ縺娯€懃オカ譛帙@縺溪€晉炊逕ア
  8. 蠕捺・ュ蜩。縺ォ繧医k繝��繧ソ豬∝�縲√◎縺ョ蟇セ遲悶〒螟ァ荳亥、ォ�溘€€蜀�Κ閼�ィ√�縺薙≧髦イ縺�
  9. 縲窟I PC縲阪′驥阪>繧ィ繝ウ繝峨�繧、繝ウ繝医そ繧ュ繝・繝ェ繝�ぅ繧定サス縺上☆繧具シ溘€€ESET縺ョ謖第姶
  10. 繝��繧ソ縺梧シ上∴縺�@縺溘i縲∽シ∵・ュ縺ッ縺ゥ繧後□縺第錐繧偵☆繧具シ溘€€IBM隱ソ譟サ縺ァ蛻、譏�

Linuxを守る「SELinux」と「AppArmor」は何が違うのか?:Linuxのセキュリティを比較【前編】 - TechTargetジャパン セキュリティ 髫エ�ス�ス�ー鬨セ�ケ�つ€鬮ォ�ェ陋滂ソス�ス�コ�ス�ス

TechTarget驛「�ァ�ス�ク驛「譎「�ス�」驛「譏懶スサ�」�趣スヲ 髫エ�ス�ス�ー鬨セ�ケ�つ€鬮ォ�ェ陋滂ソス�ス�コ�ス�ス

鬩幢ス「隴取得�ス�ク陷エ�・�ス�。鬩幢ス「�ス�ァ�ス�ス�ス�、鬩幢ス「隴主�讓滂ソス�ス�ス�ス鬩幢ス「隴趣ス「�ス�ス�ス�シ鬩幢ス「隴乗��ス�サ�ス�」�ス�ス�ス�ス鬩幢ス「隴趣ス「�ス�ス�ス�ゥ鬩幢ス「隴趣ス「�ス�ス�ス�ウ鬩幢ス「�ス�ァ�ス�ス�ス�ュ鬩幢ス「隴趣ス「�ス�ス�ス�ウ鬩幢ス「�ス�ァ�ス�ス�ス�ー

2025/04/25 UPDATE

ITmedia マーケティング新着記事

news046.png

「ECプラットフォーム」売れ筋TOP10(2025年4月)
今週は、ECプラットフォーム製品(ECサイト構築ツール)の国内売れ筋TOP10を紹介します。

news026.png

「パーソナライゼーション」&「A/Bテスト」ツール売れ筋TOP5(2025年4月)
今週は、パーソナライゼーション製品と「A/Bテスト」ツールの国内売れ筋各TOP5を紹介し...

news130.jpg

Cookieを超える「マルチリターゲティング」 広告効果に及ぼす影響は?
Cookieレスの課題解決の鍵となる「マルチリターゲティング」を題材に、AI技術によるROI向...