「設定 - SELinux」の版間の差分

ナビゲーションに移動 検索に移動
172行目: 172行目:
  sudo semodule -r <任意のポリシー名>
  sudo semodule -r <任意のポリシー名>
<br><br>
<br><br>
== ポリシーモジュールファイル (TEファイル) のシンタックス ==
ポリシーモジュールファイル (TEファイル) を作成することにより、特定のソフトウェアやサービスに対するカスタムポリシーを作成できる。<br>
<br>
以下のセクションに示す要素を組み合わせて、特定のアプリケーションやサービスに対するSELinuxポリシーモジュールを作成することができる。<br>
<br>
==== モジュール宣言 ====
policy_module(モジュール名, バージョン)
例:
policy_module(myapp, 1.0)
<br>
==== タイプ定義 ====
type タイプ名;
例:
type myapp_t;
type myapp_exec_t;
type myapp_data_t;
<br>
==== ドメイン遷移ルール ====
domain_auto_trans(ソースドメイン, 実行ファイルタイプ, ターゲットドメイン)
例:
domain_auto_trans(unconfined_t, myapp_exec_t, myapp_t)
<br>
==== allowルール ====
allow ソースタイプ ターゲットタイプ:クラス { パーミッション };
例:
allow myapp_t myapp_data_t:file { read write getattr };
<br>
==== インタフェース使用 ====
インタフェース名(タイプ1, タイプ2, ...)
例:
files_read_etc_files(myapp_t)
<br>
==== 属性の定義と割り当て ====
attribute 属性名;
typeattribute タイプ名 属性名;
例:
attribute myapp_domain;
typeattribute myapp_t myapp_domain;
<br>
==== ブール値の定義 ====
bool ブール名 default 初期値;
例:
bool myapp_enable_feature default false;
<br>
==== 条件付きポリシー ====
if (条件) {
    // ポリシールール
}
else {
    // 別のポリシールール
}
例:
if (myapp_enable_feature) {
    allow myapp_t user_home_t:file { read write };
}
<br>
==== ロールの割り当て ====
role ロール名 types タイプ名;
例:
role system_r types myapp_t;
<br>
==== ファイルコンテキストの指定 ====
files_type(タイプ名)
例:
files_type(myapp_data_t)
<br><br>


__FORCETOC__
__FORCETOC__
[[カテゴリ:RHEL]][[カテゴリ:SUSE]][[カテゴリ:Raspberry_Pi]][[カテゴリ:PinePhone]]
[[カテゴリ:RHEL]][[カテゴリ:SUSE]][[カテゴリ:Raspberry_Pi]][[カテゴリ:PinePhone]]

案内メニュー