13,002
回編集
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]] |