タイプ適用(.te)ファイルにルールを追加した後、SELinuxポリシーの再構築中にエラーが発生しました。

タイプ適用(.te)ファイルにルールを追加した後、SELinuxポリシーの再構築中にエラーが発生しました。

私はこのようなことを経験しています。ガイドこれにより、アプリケーション用のカスタムSELinuxポリシーを作成し、カーネルシステムファイルへの無制限のアクセスを制限できます。

ステップ9では、タイプ適用ファイル(mydaemon.te)にルールを追加し、次のコマンドを実行してポリシーを再構築して再インストールする必要があります。mydaemon.shスクリプト。残念ながら私';'表示で「不明な型var_log_t」エラーが発生しました次のようになります。

[ec2-user@ip-172-31-6-46 ~]$ sudo ./mydaemon.sh
Building and Loading Policy
+ make -f /usr/share/selinux/devel/Makefile mydaemon.pp
Compiling targeted mydaemon module
mydaemon.te:26:ERROR 'unknown type var_log_t' at token ';' on line 4010:
    
allow mydaemon_t var_log_t:file { open write getattr };
/usr/bin/checkmodule:  error(s) encountered while parsing configuration
make: *** [/usr/share/selinux/devel/include/Makefile:157: tmp/mydaemon.mod] Error 1
+ exit

私は次のような他のタイプを試しました。変数_tしかし、それも動作しません。

答え1

タイプ適用ファイルに追加する場合は、allow mydaemon_t var_log_t:file { open write getattr };同じファイルのrequireセクションにvar_log_tオブジェクトfileと動詞と共にタイプとクラスを追加する必要がありますopen write getattr

だからそれは次のようになります:

require {
    type mydaemon_t;
    type var_log_t;
    class file { open write getattr };
}

#============= mydaemon_t ==============
allow mydaemon_t var_log_t:file { open write getattr };

関連情報