10.3. 追加の信頼ソースを使用してファイルを信頼できるものとしてマークする
fapolicyd フレームワークは、RPM データベースに含まれるファイルを信頼します。信頼のソースを変更することで、追加のファイルを信頼できるものとしてマークできます。
/etc/fapolicyd/fapolicyd.trust プレーンテキストファイルまたは /etc/fapolicyd/trust.d ディレクトリー内のファイルを、テキストエディターを使用して直接、または fapolicyd-cli コマンドを使用して変更できます。詳細は、システム上の fapolicyd.trust(13) および fapolicyd-cli(8) man ページを参照してください。
パフォーマンス上の理由から、カスタムの fapolicyd ルールを記述するのではなく、fapolicyd.trust または trust.d/ を使用してファイルを信頼できるものとしてマークしてください。
前提条件
-
fapolicydフレームワークがシステムにデプロイされます。
手順
カスタムバイナリーを必要なディレクトリーにコピーします。以下に例を示します。
$ cp /bin/ls /tmp $ /tmp/ls bash: /tmp/ls: Operation not permittedカスタムバイナリーを信頼済みとしてマークし、対応するエントリーを
/etc/fapolicyd/trust.d/のmyappファイルに保存します。# fapolicyd-cli --file add /tmp/ls --trust-file myapp-
--trust-fileオプションをスキップすると、前のコマンドは対応する行を/etc/fapolicyd/fapolicyd.trustに追加します。 ディレクトリー内のすべての既存ファイルを信頼できるものとしてマークするには、
--fileオプションの引数としてディレクトリーパスを指定します。次に例を示します。# fapolicyd-cli --file add /tmp/my_bin_dir/ --trust-file myapp
-
fapolicydデータベースを更新します。# fapolicyd-cli --update注記信頼済みのファイルまたはディレクトリーの内容を変更すると、そのチェックサムが変更されるため、
fapolicydはそれを信頼できるものとして認識しなくなります。新しいコンテンツへの信頼を回復するために、
fapolicyd-cli --file updateコマンドを使用してファイル信頼データベースを更新してください。引数を何も指定しない場合、データベース全体が更新されます。または、特定のファイルまたはディレクトリーへのパスを指定できます。次に、fapolicyd-cli --updateを使用してデータベースを更新します。
検証
カスタムバイナリーを実行できることを確認します。次に例を示します。
$ /tmp/ls ls