SELinuxとAmandaEnterprise

この記事は アマンダエンタープライズ (AE)

SELinuxモードの確認

現在の SELinux モード設定を取得するには、root ユーザーとして getenforce または sestatus を実行します。 前者は単に「Enforcing」または「Permissive」のいずれかを標準出力に出力します。 後者では、SELinuxfs マウント ポイント、現在のモード、SELinux 構成ファイルに表示されるモードなどの追加の詳細が提供されます。

SLELinuxモードは、setenforceアプリケーションを使用して実行時にrootユーザーが変更できます。

使用法:

setenforce [強制| 寛容| 1 | 0]

sentenforceを使用して行われた変更は、システムの再起動に対して永続的ではないことを覚えておくことが重要です。

SELinux が無効ではなく許可に設定されている場合、SELinux 対応アプリケーションは強制モードがまだ設定されているかのように動作します。 SELinux は、許可モードの間もアプリケーションのアクティビティを監査し続けます。 これが、許可モードを使用する場合と SELinux を完全に無効にする場合の主な違いです。

システム起動時のmodeのデフォルト値は、/ etc / selinux / configファイルでSELINUXパラメーターによって定義されます。 SELINUXパラメーターは、強制、許容、または無効を受け入れます。

例:

root> #cat / etc / selinux / config#このファイルは、システム上のSELinuxの状態を制御します。 #SELINUX =は、次のXNUMXつの値のいずれかを取ることができます。#enforcing-SELinuxセキュリティポリシーが適用されます。 #permissive-SELinuxは強制する代わりに警告を出力します。 #無効-SELinuxポリシーがロードされていません。 SELINUX = Enforcing#SELINUXTYPE =は、次のXNUMXつの値のいずれかを取ることができます。#targeted-ターゲットプロセスは保護されます。#minimum-ターゲットポリシーの変更。 選択したプロセスのみが保護されます。 #mls-マルチレベルセキュリティ保護。 SELINUXTYPE =ターゲットルート>#

起動時にSELinuxモードが常に予期しないモードに切り替わる問題のトラブルシューティングが必要な場合は、強制パラメーターを0または1(許容)に設定することでSELinuxをgrub.confで構成できることに注意してください。または強制)。

Amandaとうまく連携するようにSELinuxを設定する

SELinuxの主な機能は強制アクセス制御を実施することであるため、SELinuxが無効になっていない場合、または許可モードの場合、Amandaを実行するために追加の手順が必要になる場合があります

最新バージョンのZmanda(Amanda Enterprise Edition)は、インストール時にSELinuxを自動的に許可モードに設定しようとします。

root>#。/ amanda-enterprise-3.4-linux-x64.run Zmandaをインストールするには、SELinuxをPermissive状態に切り替える必要があります。 インストーラー自体がそれを行い、インストールが完了すると元の状態に復元します。 続けますか? [Y / n]:

  ズマンダ インストーラはこれを実現するために semanage アプリケーションを使用するため、インストーラを実行する前にどの semanage かなどをチェックして semanage がインストールされていることを確認してください。 semanage がまだインストールされていない場合は、次のコマンドでアプリケーションを入手できます。

root> #yumが提供します* / semanage {追加の出力は表示されません} root> #yum install

可能であれば、SELinuxを実装する環境でのAmanda / Zmandaインストールのトラブルシューティングを行うときは、SELinuxを一時的に許容モードに設定してみてください。 テストを再試行して、SELinuxが実際に問題の原因であることを確認し、監査ログエントリを生成します。

セキュリティ ポリシーにより SELinux を許可モードで実行できない場合は、SELinux が Amanda の通常の操作を妨害していることを示す兆候がいくつかあります。 amanda や zmanda に関連するエントリの監査ログを確認できます。

ルート> #ausearch -m avc -c amanda

SELinuxがAmandaを拒否することに関するログエントリを見つけることができないが、許容モードで実行しても問題がない場合は、dontauditルールの結果である可能性があります。 dontauditルールを一時的に無効にするには、次のコマンドを実行できます。

ルート> #semodule -DB

これが実行されたら、インストール、バックアップ、または復元を再度実行して、監査ログを確認してください。 SELinuxが該当する拒否をログに記録した後、必ず再度有効にしてください 監査しない ルール:

ルート> #semodule -B

一部のオペレーティングシステムには、Amandaの正しいコンテキストを反映していない可能性のあるAmanda用のプリインストールされたポリシーモジュールが付属しています。 次を使用して、現在含まれているモジュールを確認できます。

ルート> #semodule -l | grep amanda

インストールされているすべてのモジュールをリストするには少し時間がかかる場合があります。もちろん、「amanda」に一致するモジュールがない場合は出力はありません。 古いまたは破損した Amanda ポリシー モジュールを実行していることがわかった場合は、次の方法で削除できます。

ルート> #semodule -r 

すべての SELinux コンテキストは手動で構成できますが、それはこのドキュメントの範囲外です。 完全に手動のソリューションに興味がある場合は、chcon およびrestorecon のマニュアル ページで詳細を参照してください。

audit2allowを使用したカスタムポリシーパッケージの作成

ほとんどの環境では、同様のオペレーティングシステムを実行しているAmandaクライアントマシンが多数あり、場合によっては追加のAmandaサーバーを展開する必要があります。 これらのシナリオでは、個々のマシンのセキュリティコンテキストを手動でトラブルシューティングして変更することは効率的ではありません。 これは、audit2allowと呼ばれるツールが、ネットワーク上の複数のマシンに展開できるカスタムポリシーパッケージを作成するのに役立つ場合がある場所です。

まず、タスクを許容モードで実行し、タイプ強制ファイルを作成します。

ルート> #grep -E'amanda | zmanda '/var/log/audit/audit.log | audit2allow -m myamanda> myamanda.te

タイプエンフォースメントファイルが作成されたら、それがオペレーターによってチェックされていることを確認してください。 情報セキュリティ部門の要求に応じて、自動生成された出力を変更してください。

タイプ強制ファイルを検証するときは、多くのアプリケーションが -Z スイッチを使用して SELinux セキュリティ コンテキストを提供することに注意してください。 たとえば、「ls、-Z」、「ps axZ」などです。

タイプエンフォースメントファイルがセキュリティポリシーの要件を満たしていることが確認されたら、アクティブなポリシーモジュールとして含めるためにポリシーパッケージに変換する必要があります。 これを行うには、次のコマンドを実行できます。

ルート> #checkmodule -mo myamanda.mod myamanda.teルート> #semodule_package -m myamanda.mod -o myamanda.pp

ポリシーモジュールをロードするには、次を実行する必要があります。

ルート> #semodule -i myamanda.pp

エラーが発生した場合 「非 MLS モジュールを MLS ベースとリンクしようとしました」 代わりに、Type EnforcementファイルをMulti-Layer Securityとして変換し、次のように結果のポリシーパッケージを含める必要があります。

ルート> #checkmodule -M -m -o myamanda.mod myamanda.teルート> #semodule_package -m myamanda.mod -o myamanda.pp

次に、上記のようにsemodule-iを使用してポリシーパッケージを含めます。 これで、強制モードのSELinuxでバックアップと復元を実行するように設定されているはずです。