10.6. fapolicyd に関連する問題のトラブルシューティング
fapolicyd アプリケーションフレームワークは、最も一般的な問題のトラブルシューティングを行うツールを提供します。また、rpm コマンドでインストールされたアプリケーションを信頼データベースに追加することもできます。
rpm を使用したアプリケーションのインストール
rpmコマンドを使用してアプリケーションをインストールする場合は、fapolicydRPM データベースを手動で更新する必要があります。アプリケーション をインストールします。
# rpm -i application.rpmデータベースを更新します。
# fapolicyd-cli --updateこの手順を飛ばすとシステムがフリーズする可能性があるため、再起動する必要があります。
サービスのステータス
fapolicydが正しく機能しない場合は、サービスステータスを確認します。# systemctl status fapolicyd
fapolicyd-cli チェックとリスト
--check-config、--check-watch_fs、および--check-trustdbオプションは、構文エラー、まだ監視されていないファイルシステム、およびファイルの不一致を見つけるのに役立ちます。次に例を示します。# fapolicyd-cli --check-config Daemon config is OK # fapolicyd-cli --check-trustdb /etc/selinux/targeted/contexts/files/file_contexts miscompares: size sha256 /etc/selinux/targeted/policy/policy.31 miscompares: size sha256--listオプションを使用して、ルールの現在のリストとその順序を確認します。# fapolicyd-cli --list ... 9. allow perm=execute all : trust=1 10. allow perm=open all : ftype=%languages trust=1 11. deny_audit perm=any all : ftype=%languages 12. allow perm=any all : ftype=text/x-shellscript 13. deny_audit perm=execute all : all ...
デバッグモード
デバッグモードは、一致したルール、データベースステータスなどに関する詳細情報を提供します。
fapolicydをデバッグモードに切り替えるには、以下を行います。fapolicydサービスを停止します。# systemctl stop fapolicydデバッグモードを使用して、対応するルールを識別します。
# fapolicyd --debugfapolicyd --debugコマンドの出力は冗長であるため、エラー出力をファイルにリダイレクトできます。# fapolicyd --debug 2> fapolicy.outputまたは、
fapolicydがアクセスを拒否した場合にのみ出力をエントリーに制限するには、--debug-denyオプションを使用します。# fapolicyd --debug-deny
fapolicyd データベースの削除
fapolicydデータベースに関連する問題を解決するには、データベースファイルを削除してください。# systemctl stop fapolicyd # fapolicyd-cli --delete-db警告/var/lib/fapolicyd/ディレクトリーを削除しないでください。fapolicydフレームワークは、このディレクトリー内のデータベースファイルのみを自動的に復元します。
fapolicyd データベースのダンプ
fapolicydには、有効なすべての信頼ソースからのエントリーが含まれます。データベースをダンプした後にエントリーを確認できます。# fapolicyd-cli --dump-db
アプリケーションパイプ
まれに、
fapolicydパイプファイルを削除するとロックアップが解決する場合があります。# rm -f /var/run/fapolicyd/fapolicyd.fifo