セキュリティーコンプライアンスの管理
SCAP コンプライアンスポリシーを計画および設定し、ポリシーをホストにデプロイメントし、ホストのコンプライアンスを監視する
概要
Red Hat ドキュメントへのフィードバック (英語のみ)
Red Hat ドキュメントに関するご意見やご感想をお寄せください。また、改善点があればお知らせください。
フィードバックを提供するには、Red Hat Jira の Create Issue フォームを使用します。Jira の問題は Red Hat Satellite Jira プロジェクトに作成され、その進捗状況を追跡できます。
前提条件
- Red Hat アカウント が登録されている。
手順
- Create Issue にアクセスします。Jira でログインエラーが表示された場合は、フォームにリダイレクトされた後、ログインして続行します。
- Summary フィールドと Description フィールドに入力します。Description フィールドに、ドキュメントの URL、章またはセクション番号、および問題の詳しい説明を入力します。フォーム内の他のフィールドは変更しないでください。
- Create をクリックします。
第1章 セキュリティーコンプライアンス管理
セキュリティーコンプライアンス管理は、セキュリティーポリシーを定義し、それらのポリシーに準拠しているかどうかシステムを監査し、非準拠のインスタンスを解決する継続的なプロセスです。コンプライアンス違反は、組織の設定管理ポリシーに基づいて管理されます。セキュリティーポリシーは、ホスト固有のものから業界共通のものまでに及ぶため、ポリシー定義には柔軟性が必要になります。
Satellite を使用すると、登録されているすべてのホストに対するコンプライアンスの監査とレポートをスケジュールできます。
第2章 Security Content Automation Protocol
Satellite は、Security Content Automation Protocol (SCAP) 標準を使用してセキュリティーポリシーを定義します。
SCAP は、XML ベースのいくつかの仕様 (Extensible Checklist Configuration description Format (XCCDF) で説明されているチェックリストや、Open Vulnerability and Assessment Language (OVAL) で説明されている脆弱性など) のフレームワークです。これらの仕様は、データストリーム ファイルとしてカプセル化されます。
XCCDF のチェックリスト項目 (ルール とも呼ばれます) は、システム項目の必要な設定を表します。たとえば、ルールによって、どのユーザーも root
ユーザーアカウントを使用して SSH 経由でホストにログインできないように指定できます。ルールは 1 つ以上の XCCDF プロファイル にグループ化できます。これにより、複数のプロファイルでルールを共有できます。
OpenSCAP スキャナーツールは、ホスト上のシステム項目をルールに照らして評価し、Asset Reporting Format (ARF) でレポートを生成します。このレポートは、モニタリングと分析のために Satellite に返されます。
タイトル | 説明 | バージョン |
SCAP | Security Content Automation Protocol | 1.3 |
XCCDF | Extensible Configuration Checklist Description Format | 1.2 |
OVAL | Open Vulnerability and Assessment Language | 5.11 |
- | Asset Identification | 1.1 |
ARF | Asset Reporting Format | 1.1 |
CCE | Common Configuration Enumeration | 5.0 |
CPE | Common Platform Enumeration | 2.3 |
CVE | Common Vulnerabilities and Exposures | 2.0 |
CVSS | Common Vulnerability Scoring System | 2.0 |
関連情報
- SCAP の詳細は、OpenSCAP プロジェクト を参照してください。
第3章 Satellite 内の SCAP コンテンツ
SCAP コンテンツは、コンプライアンス、設定、またはセキュリティーベースラインの実装を含む SCAP データストリームファイルです。通常、単一のデータストリームには複数の XCCDF プロファイルが含まれます。XCCDF プロファイルは、General Purpose Operating Systems (OSPP)、Health Insurance Portability and Accountability Act (HIPAA)、PCI-DSS v3.2.1 Control Baseline for Red Hat Enterprise Linux 9 など、Satellite のホスト設定のコンプライアンスを評価するための業界標準またはカスタムのセキュリティー標準を定義したものです。テーラリングファイル を使用すると、要件に応じて既存の XCCDF プロファイルを調整できます。
Satellite では、SCAP コンテンツからの XCCDF プロファイルを使用し、最終的にはテーラリングファイルを使用して、コンプライアンスポリシー を定義します。Satellite には、OpenSCAP プロジェクト によって提供される SCAP セキュリティーガイドのデフォルトの SCAP コンテンツが含まれています。
独自のコンテンツをダウンロード、デプロイ、変更、作成する方法の詳細は、以下を参照してください。
3.1. サポートされている SCAP バージョン
Satellite は、SCAP バージョン 1.2 および 1.3 のコンテンツをサポートします。
第4章 コンプライアンスポリシーのデプロイメント方法
次のいずれかの方法を使用して、コンプライアンスポリシーをデプロイできます。
- Ansible デプロイメント
- Ansible ロールを使用して、コンプライアンススキャン用にホストを設定します。
- Puppet デプロイメント
- Puppet クラスと Puppet エージェントを使用して、コンプライアンススキャン用にホストを設定します。
- 手動デプロイメント
- コンプライアンススキャン用にホストを手動で設定します。
第5章 コンプライアンスポリシーのデプロイメント方法の設定
次の手順のいずれかを使用して、コンプライアンスポリシーをデプロイするために選択した方法に合わせて Satellite を設定します。後で コンプライアンスポリシーを作成 するときに、これらの方法のいずれかを選択します。
Ansible デプロイメントの手順
theforeman.foreman_scap_client
Ansible ロールをインポートします。詳細は、Red Hat Satellite での Ansible 統合を使用した設定の管理 を参照してください。
-
作成したポリシーと
theforeman.foreman_scap_client
Ansible ロールをホストまたはホストグループに割り当てます。 デプロイメントをトリガーするには、ホストまたはホストグループで Ansible ロールを手動で実行するか、定期的なポリシー更新のリモート実行を使用して定期的なジョブを設定します。
詳細は、ホストの管理 の リモートジョブの設定およびセットアップ を参照してください。
Puppet デプロイメントの手順
- Puppet が有効になっていることを確認します。
- Puppet エージェントがホストにインストールされていることを確認します。
foreman_scap_client
Puppet モジュールを含む Puppet 環境をインポートします。詳細は、Red Hat Satellite で Puppet インテグレーションを使用した設定の管理 を参照してください。
作成したポリシーと
foreman_scap_client
Puppet クラスをホストまたはホストグループに割り当てます。Puppet は次回の定期実行時にデプロイメントをトリガーします。または、Puppet を手動で実行することもできます。Puppet はデフォルトで 30 分ごとに実行します。
手動デプロイメントの手順
手動デプロイメント方法の場合、追加の Satellite 設定は必要ありません。
手動デプロイメントの詳細は、Red Hat ナレッジベース の How to set up OpenSCAP Policies using Manual Deployment option を参照してください。
第6章 利用可能な SCAP コンテンツのリスト
Satellite にすでにロードされている SCAP コンテンツを表示するには、この手順を使用してください。Satellite Web UI の代わりに CLI を使用するには、CLI 手順 を参照してください。
前提条件
-
ユーザーアカウントに
view_scap_contents
権限を持つロールが割り当てられている。
手順
- Satellite Web UI で、Hosts > Compliance - SCAP contents に移動します。
CLI 手順
Satellite Server で次の Hammer コマンドを実行します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow hammer scap-content list \ --location "My_Location" \ --organization "My_Organization"
# hammer scap-content list \ --location "My_Location" \ --organization "My_Organization"
第7章 SCAP コンテンツの設定
SCAP データストリームとテーラリングファイルをアップロードして、コンプライアンスポリシーを定義できます。
7.1. デフォルト SCAP コンテンツのロード
デフォルト SCAP コンテンツを Satellite Server にロードすると、SCAP セキュリティーガイド (SSG) からのデータストリームがロードされ、すべての組織と場所に割り当てられるようになります。
SSG は、Satellite Server のオペレーティングシステムによって提供され、/usr/share/xml/scap/ssg/content/
にインストールされます。利用可能なデータストリームは、Satellite が実行されているオペレーティングシステムのバージョンによって異なることに注意してください。この SCAP コンテンツは、Satellite Server と同じ RHEL マイナーバージョン持つホストをスキャンする場合にのみ使用できます。詳細は、「RHEL でサポートされている SCAP コンテンツの取得」 を参照してください。
前提条件
-
ユーザーアカウントに
create_scap_contents
権限を持つロールが割り当てられている。
手順
Satellite Server で次の Hammer コマンドを使用します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow hammer scap-content bulk-upload --type default
# hammer scap-content bulk-upload --type default
7.2. RHEL でサポートされている SCAP コンテンツの取得
Red Hat Enterprise Linux の最新の SCAP セキュリティーガイド (SSG) は Red Hat カスタマーポータルで入手できます。ホストの RHEL マイナーバージョン用に指定された SSG バージョンを取得する必要があります。
手順
- パッケージブラウザーの SCAP セキュリティーガイド にアクセスします。
-
バージョン メニューから、ホストが実行している RHEL マイナーバージョン向けの最新の SSG バージョンを選択します。たとえば、RHEL 8.6 の場合は、
*.el8_6
という名前のバージョンを選択します。 - パッケージ RPM をダウンロードします。
RPM からデータストリームファイル (
*-ds.xml
) を展開します。以下に例を示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow rpm2cpio scap-security-guide-0.1.69-3.el8_6.noarch.rpm \ | cpio -iv --to-stdout ./usr/share/xml/scap/ssg/content/ssg-rhel8-ds.xml \ ssg-rhel-8.6-ds.xml
$ rpm2cpio scap-security-guide-0.1.69-3.el8_6.noarch.rpm \ | cpio -iv --to-stdout ./usr/share/xml/scap/ssg/content/ssg-rhel8-ds.xml \ > ssg-rhel-8.6-ds.xml
- データストリームを Satellite にアップロードします。詳細は、「追加の SCAP コンテンツのアップロード」 を参照してください。
関連情報
- Red Hat ナレッジベース の Supported versions of the SCAP Security Guide in RHEL
- Red Hat Enterprise Linux 9 セキュリティーの強化 の RHEL 9 で対応する SCAP セキュリティーガイドプロファイル
- Red Hat Enterprise Linux 8 セキュリティーの強化 の RHEL 8 で対応している SCAP セキュリティーガイドプロファイル
- Red Hat Enterprise Linux 7 セキュリティーガイド の RHEL 7 で対応する SCAP セキュリティーガイドプロファイル
7.3. 追加の SCAP コンテンツのアップロード
追加の SCAP コンテンツ (自分で作成したコンテンツ、または他の場所で取得したコンテンツ) を Satellite Server にアップロードできます。Red Hat は、Red Hat から取得した SCAP コンテンツのサポートのみを提供することに注意してください。Satellite Web UI の代わりに CLI を使用するには、CLI 手順 を参照してください。
前提条件
-
ユーザーアカウントに
create_scap_contents
権限を持つロールが割り当てられている。 - SCAP データストリームファイルを取得している。
手順
- Satellite Web UI で、Hosts > Compliance > SCAP contents に移動します。
- Upload New SCAP Content をクリックします。
-
Title テキストボックスにタイトルを入力します (
My SCAP Content
など)。 - Scap File で、Choose file をクリックし、SCAP データストリームファイルが含まれる場所に移動して、Open をクリックします。
- Locations タブで場所を選択します。
- Organizations タブで組織を選択します。
- Submit をクリックします。
SCAP コンテンツファイルが正常にロードされると、Successfully created My SCAP Content
のようなメッセージが表示されます。
CLI 手順
-
SCAP データストリームファイルを Satellite Server 上のディレクトリー (
/usr/share/xml/scap/my_content/
など) に配置します。 Satellite Server で次の Hammer コマンドを実行します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow hammer scap-content bulk-upload --type directory \ --directory /usr/share/xml/scap/my_content/ \ --location "My_Location" \ --organization "My_Organization"
# hammer scap-content bulk-upload --type directory \ --directory /usr/share/xml/scap/my_content/ \ --location "My_Location" \ --organization "My_Organization"
検証
- 利用可能な SCAP コンテンツをリストします。SCAP コンテンツのリストに新しいタイトルが含まれています。
7.4. XCCDF プロファイルの調整
元の SCAP コンテンツを編集せずに、テーラリングファイル を使用して既存の XCCDF プロファイルをカスタマイズできます。1 つのテーラリングファイルに複数の XCCDF プロファイルのカスタマイズを含めることができます。
テーラリングファイルは SCAP Workbench ツールを使用して作成できます。SCAP ワークベンチツールの使用方法の詳細は、Customizing SCAP Security Guide for your use case を参照してください。
作成したら、テーラリングファイルをコンプライアンスポリシーに割り当てて、ポリシー内の XCCDF プロファイルをカスタマイズできます。
7.5. テーラリングファイルのアップロード
テーラリングファイルをアップロードすると、それをコンプライアンスポリシーに適用して、XCCDF プロファイルをカスタマイズできます。
前提条件
-
ユーザーアカウントに
create_tailoring_files
権限を持つロールが割り当てられている。
手順
- Satellite の Web UI で Hosts > Compliance - Tailoring Files に移動し、New Tailoring File をクリックします。
- Name テキストボックスに、名前を入力します。
- Choose File をクリックし、テーラリングファイルが含まれる場所に移動して、Open を選択します。
- Submit をクリックして、選択したテーラリングファイルをアップロードします。
第8章 コンプライアンスポリシーの管理
コンプライアンスポリシー は、SCAP コンテンツの特定の XCCDF プロファイルに対して、指定されたホストのコンプライアンスをチェックする定期的な監査です。
Satellite Server 上でスキャンのスケジュールを指定すると、ホスト上でスキャンが実行されます。スキャンが完了すると、ARF 形式のレポートが生成され、Satellite Server にアップロードされます。コンプライアンスポリシーがスキャンされたホストに変更を加えることはありません。
コンプライアンスポリシーは、SCAP クライアント設定と cron スケジュールを定義します。ポリシーは、ポリシーが割り当てられているホスト上に SCAP クライアントとともにデプロイされます。
8.1. コンプライアンスポリシーの作成
コンプライアンスポリシーを作成することで、セキュリティーコンプライアンス要件を定義および計画し、ホストがセキュリティーポリシーに準拠した状態を維持できます。
前提条件
- 選択した コンプライアンスポリシーのデプロイメント方法 に合わせて Satellite を設定している。
Satellite で、SCAP コンテンツ、最終的にはテーラリングファイルが利用可能である。
- 利用可能な SCAP コンテンツを確認するには、6章利用可能な SCAP コンテンツのリスト を参照してください。
- SCAP コンテンツとテーラリングファイルをアップロードするには、7章SCAP コンテンツの設定 を参照してください。
-
ユーザーアカウントに
view_policies
およびcreate_policies
権限を持つロールが割り当てられている。
手順
- Satellite Web UI で、Hosts > Compliance - Policies に移動します。
- New Policy または New Compliance Policy をクリックします。
- デプロイメント方法を Ansible、Puppet、または Manual から選択します。Next をクリックします。
- ポリシーの名前、説明 (省略可能) を入力してから 次へ をクリックします。
適用する SCAP Content および XCCDF Profile を選択し、Next をクリックします。
Satellite は、選択された XCCDF プロファイルにルールが含まれているかどうかを検出しないことに注意してください。
Default XCCDF Profile
などの空の XCCDF プロファイルは、空のレポートを返します。- オプション: XCCDF プロファイルをカスタマイズするには、Tailoring File と XCCDF Profile in Tailoring File を選択し、Next をクリックします。
ポリシーを適用するスケジュール時刻を指定します。Period のリストから、Weekly、Monthly、または Custom を選択します。Custom オプションを使用すると、ポリシーのスケジュールをより柔軟に行うことができます。
- Weekly を選択したら Weekday リストから曜日を選択します。
- Monthly を選択したら Day of month フィールドで日付を指定します。
- Custom を選択したら Cron line フィールドに有効な Cron 式を入力します。
- ポリシーを適用する場所を選択し、Next をクリックします。
- ポリシーを適用する組織を選択し、Next をクリックします。
- オプション: ポリシーを割り当てるホストグループを選択します。
- Submit をクリックします。
8.2. コンプライアンスポリシーの表示
特定の OpenSCAP コンテンツおよびプロファイルの組み合わせ別に適用されるルールをプレビューできます。これは、ポリシーを計画するときに役立ちます。
前提条件
-
ユーザーアカウントに
view_policies
権限を持つロールが割り当てられている。
手順
- Satellite Web UI で、Hosts > Compliance - Policies に移動します。
- 必要なポリシーの Actions 列で、Show Guide をクリックするか、リストから Show Guide を選択します。
8.3. コンプライアンスポリシーの編集
Satellite Web UI では、コンプライアンスポリシーを編集できます。
Puppet エージェントが、次回の実行時に、編集されたポリシーをホストに適用します。これはデフォルトで 30 分ごとに実行されます。Ansible を使用する場合は、Ansible ロールを手動で再度実行するか、ホスト上で Ansible ロールを実行する定期的なリモート実行ジョブを設定する必要があります。
前提条件
-
ユーザーアカウントに
view_policies
およびedit_policies
権限を持つロールが割り当てられている。
手順
- Satellite Web UI で、Hosts > Compliance - Policies に移動します。
- 必要なポリシーの名前をクリックします。
- 必要な属性を編集します。
- Submit をクリックします。
8.4. コンプライアンスポリシーの削除
Satellite Web UI では、既存のコンプライアンスポリシーを削除できます。
前提条件
-
ユーザーアカウントに
view_policies
およびdestroy_policies
権限を持つロールが割り当てられている。
手順
- Satellite Web UI で、Hosts > Compliance - Policies に移動します。
- 必要なポリシーの Actions 列で、リストから Delete を選択します。
- 確認メッセージで OK をクリックします。
第9章 コンプライアンスポリシーのデプロイ
コンプライアンスポリシーをデプロイするには、SCAP クライアントをインストールし、cron スケジュールファイルを更新して、ポリシーで選択されている SCAP コンテンツをホストにアップロードする必要があります。
9.1. リモートの SCAP リソースの追加
SCAP データストリームは、OVAL ファイルなどのリモートリソースを参照できます。これは、SCAP クライアントがホスト上で実行する際にインターネット上で取得するものです。データストリームにリモートリソースが必要な場合は、以下のような Satellite Server の OpenSCAP Scanner ツールから以下のような警告が表示されます。
oscap info /usr/share/xml/scap/ssg/content/ssg-rhel8-ds.xml | grep "WARNING"
# oscap info /usr/share/xml/scap/ssg/content/ssg-rhel8-ds.xml | grep "WARNING"
WARNING: Datastream component 'scap_org.open-scap_cref_security-data-oval-com.redhat.rhsa-RHEL8.xml.bz2'
points out to the remote 'https://access.redhat.com/security/data/oval/com.redhat.rhsa-RHEL8.xml.bz2'.
Use '--fetch-remote-resources' option to download it.
WARNING: Skipping 'https://access.redhat.com/security/data/oval/com.redhat.rhsa-RHEL8.xml.bz2' file
which is referenced from datastream
デフォルトでは、SCAP クライアントはリモートリソースを無視し、リソースに依存する XCCDF ルールをスキップするように設定されています。スキップされたルールは notchecked
ステータスになります。
インターネットにアクセスできるホストの場合、Satellite のホスト上にあるリモートリソースのダウンロードを有効にすることができます。インターネットにアクセスできないホストにリモート SCAP リソースを適用する方法については、「接続されていない環境でのリモート SCAP リソースの適用」 を参照してください。
- Ansible デプロイメント方法の使用
次の Ansible 変数をオーバーライドします。
-
名前:
foreman_scap_client_fetch_remote_resources
-
型:
boolean
-
値:
true
詳細は、Red Hat Satellite での Ansible 統合を使用した設定の管理 の Satellite での Ansible 変数のオーバーライド を参照してください。
-
名前:
- Puppet デプロイメント方法の使用
以下の Puppet Smart Class パラメーターを設定します。
-
名前:
fetch_remote_resources
-
型:
boolean
-
値:
true
詳細は、Red Hat Satellite での Puppet 統合を使用した設定の管理 の Puppet Smart Class パラメーターの設定 を参照してください。
-
名前:
9.2. 接続されていない環境でのリモート SCAP リソースの適用
SCAP データストリームには、OVAL ファイルなどのリモートリソースを含めることができます。これは、SCAP クライアントがホスト上で実行する際にインターネット上で取得できるものです。ホストがインターネットにアクセスできない場合は、カスタムファイルタイプリポジトリーからホスト上のファイル をダウンロードして、リモート SCAP リソースをダウンロードし、Satellite Server からホストにローカルファイルとして配布する必要があります。
前提条件
- リモート実行を有効にして、ホストを Satellite に登録した。
- リモートリソースの取得が無効になっている (デフォルト)。詳細は、「リモートの SCAP リソースの追加」 を参照してください。
手順
Satellite Server で、コンプライアンスポリシーで使用するデータストリームを調べて、ダウンロードする必要がある不足しているリソースを見つけます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oscap info /usr/share/xml/scap/ssg/content/ssg-rhel8-ds.xml | grep "WARNING"
# oscap info /usr/share/xml/scap/ssg/content/ssg-rhel8-ds.xml | grep "WARNING" WARNING: Datastream component 'scap_org.open-scap_cref_security-data-oval-com.redhat.rhsa-RHEL8.xml.bz2' points out to the remote 'https://access.redhat.com/security/data/oval/com.redhat.rhsa-RHEL8.xml.bz2'. Use '--fetch-remote-resources' option to download it. WARNING: Skipping 'https://access.redhat.com/security/data/oval/com.redhat.rhsa-RHEL8.xml.bz2' file which is referenced from datastream
データストリームによって参照されるローカルファイルの名前を調べます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oscap info /usr/share/xml/scap/ssg/content/ssg-rhel8-ds.xml
# oscap info /usr/share/xml/scap/ssg/content/ssg-rhel8-ds.xml ... Referenced check files: ssg-rhel8-oval.xml system: http://oval.mitre.org/XMLSchema/oval-definitions-5 ssg-rhel8-ocil.xml system: http://scap.nist.gov/schema/ocil/2 security-data-oval-com.redhat.rhsa-RHEL8.xml.bz2 system: http://oval.mitre.org/XMLSchema/oval-definitions-5 ...
オンラインのマシンで、不足しているリソースをダウンロードします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow curl -o security-data-oval-com.redhat.rhsa-RHEL8.xml.bz2 https://www.redhat.com/security/data/oval/com.redhat.rhsa-RHEL8.xml.bz2
# curl -o security-data-oval-com.redhat.rhsa-RHEL8.xml.bz2 https://www.redhat.com/security/data/oval/com.redhat.rhsa-RHEL8.xml.bz2
重要ダウンロードしたファイルの名前が、データストリームによって参照される名前と一致していることを確認してください。
ファイルを新しいカスタムファイルタイプコンテンツとして、Satellite Server に追加します。詳細は、コンテンツの管理 の カスタムファイルタイプコンテンツの管理 を参照してください。
http://satellite.example.com/pulp/content/My_Organization_Label/Library/custom/My_Product_Label/My_Repo_Label/
など、リポジトリーが公開されている URL をメモします。ホスト上の
root
のホームディレクトリーにファイルをアップロードするリモートジョブをスケジュールします。たとえば、Run Command - Script Default
ジョブテンプレートを使用して、次のコマンドを入力します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow curl -o /root/security-data-oval-com.redhat.rhsa-RHEL8.xml.bz2 http://satellite.example.com/pulp/content/My_Organization_Label/Library/custom/My_Product_Label/My_Repo_Label/security-data-oval-com.redhat.rhsa-RHEL8.xml.bz2
# curl -o /root/security-data-oval-com.redhat.rhsa-RHEL8.xml.bz2 http://satellite.example.com/pulp/content/My_Organization_Label/Library/custom/My_Product_Label/My_Repo_Label/security-data-oval-com.redhat.rhsa-RHEL8.xml.bz2
リモートジョブの実行の詳細は、ホストの管理 の リモートジョブの実行 を参照してください。
- コンプライアンスポリシーのデプロイに進みます。
9.3. Ansible を使用したホストグループへのポリシーのデプロイ
Ansible を使用してホストグループにコンプライアンスポリシーをデプロイすると、Ansible ロールによって SCAP クライアントがインストールされ、選択したコンプライアンスポリシーに従ってホスト上で OpenSCAP スキャンが設定されます。
コンプライアンスポリシーの SCAP コンテンツでは、リモートリソースが必要になる場合があります。詳細は、「リモートの SCAP リソースの追加」 を参照してください。
前提条件
- Capsule で OpenSCAP を有効にしている。詳細は、Capsule Server のインストール の Capsule Server での OpenSCAP の有効化 を参照してください。
ホストのオペレーティングシステムバージョンのリポジトリーが Satellite Server で同期され、ホストで有効化されている。
- Red Hat Enterprise Linux 9 BaseOS リポジトリーおよび Appstream RPM リポジトリー
- Red Hat Enterprise Linux 8 BaseOS リポジトリーおよび Appstream RPM リポジトリー
- Red Hat Enterprise Linux 7 Server および Extras RPM リポジトリー
- ホストのオペレーティングシステムバージョン用の Red Hat Satellite Client 6 リポジトリーは、Satellite Server で同期され、コンテンツビューおよびホストのライフサイクル環境で利用でき、ホストで有効化されている。詳細は、コンテンツの 管理 の Satellite のホストのリポジトリーセットのステータスの変更 を参照してください。このリポジトリーは、SCAP クライアントのインストールに必要です。
- Ansible デプロイメント方法を使用して コンプライアンスポリシーを作成 し、ホストグループを割り当てている。
手順
- Satellite Web UI で、Configure > Host Groups に移動します。
- OpenSCAP レポート用に設定するホストグループをクリックします。
- OpenSCAP Capsule リストから、使用する OpenSCAP が有効な Capsule を選択します。
-
Ansible Roles タブで、
foreman.foreman_scap_client
Ansible ロールを割り当てます。 - オプション: Parameters タブで、ロールの Ansible 変数を設定します。
- Submit をクリックして変更を保存します。
- 必要なホストグループの行で、Actions 列に移動し、Run all Ansible roles を選択します。
9.4. Ansible を使用したホストへのポリシーのデプロイ
Ansible を使用してホストにコンプライアンスポリシーをデプロイすると、Ansible ロールによって SCAP クライアントがインストールされ、選択したコンプライアンスポリシーに従ってホスト上で OpenSCAP スキャンが設定されます。
コンプライアンスポリシーの SCAP コンテンツでは、リモートリソースが必要になる場合があります。詳細は、「リモートの SCAP リソースの追加」 を参照してください。
前提条件
- Capsule で OpenSCAP を有効にしている。詳細は、Capsule Server のインストール の Capsule Server での OpenSCAP の有効化 を参照してください。
ホストのオペレーティングシステムバージョンのリポジトリーが Satellite Server で同期され、ホストで有効化されている。
- Red Hat Enterprise Linux 9 BaseOS リポジトリーおよび Appstream RPM リポジトリー
- Red Hat Enterprise Linux 8 BaseOS リポジトリーおよび Appstream RPM リポジトリー
- Red Hat Enterprise Linux 7 Server および Extras RPM リポジトリー
- ホストのオペレーティングシステムバージョン用の Red Hat Satellite Client 6 リポジトリーは、Satellite Server で同期され、コンテンツビューおよびホストのライフサイクル環境で利用でき、ホストで有効化されている。詳細は、コンテンツの 管理 の Satellite のホストのリポジトリーセットのステータスの変更 を参照してください。このリポジトリーは、SCAP クライアントのインストールに必要です。
- Ansible デプロイメント方法を使用して コンプライアンスポリシーを作成 している。
手順
- Satellite Web UI で Hosts > All Hosts に移動して、OpenSCAP レポートを設定するホストで、Edit をクリックします。
- OpenSCAP Capsule リストから、使用する OpenSCAP が有効な Capsule を選択します。
-
Ansible Roles タブで、
theforeman.foreman_scap_client
Ansible ロールを追加します。 - オプション: Parameters タブで、ロールの Ansible 変数を設定します。
- Submit をクリックして変更を保存します。
- Hosts ブレッドクラムリンクをクリックして、ホストのインデックスページに戻ります。
- ポリシーを追加するホストを選択します。
- Select Action をクリックします。
- リストから Assign Compliance Policy を選択します。
- Assign Compliance Policy ウィンドウで、Remember hosts selection for the next bulk action を選択します。
- 使用可能なポリシーのリストから必要なポリシーを選択し、Submit をクリックします。
- Select Action をクリックします。
- リストから Run all Ansible roles を選択します。
9.5. Puppet を使用したホストグループへのポリシーのデプロイ
Puppet を使用してホストグループにコンプライアンスポリシーをデプロイすると、Puppet エージェントによって SCAP クライアントがインストールされ、選択したコンプライアンスポリシーに従って次回の Puppet 実行時にホスト上で OpenSCAP スキャンが設定されます。
コンプライアンスポリシーの SCAP コンテンツには、リモートリソースが必要になる場合があります。詳細は、「リモートの SCAP リソースの追加」 を参照してください。
前提条件
- Capsule で OpenSCAP を有効にしている。詳細は、Capsule Server のインストール の Capsule Server での OpenSCAP の有効化 を参照してください。
ホストのオペレーティングシステムバージョンのリポジトリーが Satellite Server で同期され、ホストで有効化されている。
- Red Hat Enterprise Linux 9 BaseOS リポジトリーおよび Appstream RPM リポジトリー
- Red Hat Enterprise Linux 8 BaseOS リポジトリーおよび Appstream RPM リポジトリー
- Red Hat Enterprise Linux 7 Server および Extras RPM リポジトリー
- ホストのオペレーティングシステムバージョン用の Red Hat Satellite Client 6 リポジトリーは、Satellite Server で同期され、コンテンツビューおよびホストのライフサイクル環境で利用でき、ホストで有効化されている。詳細は、コンテンツの 管理 の Satellite のホストのリポジトリーセットのステータスの変更 を参照してください。このリポジトリーは、SCAP クライアントのインストールに必要です。
- Puppet デプロイメント方法を使用して コンプライアンスポリシーを作成 し、ホストグループを割り当てている。
手順
- Satellite Web UI で、Configure > Host Groups に移動します。
- OpenSCAP レポート用に設定するホストグループをクリックします。
-
Environment リストで、
foreman_scap_client*
Puppet クラスを含む Puppet 環境を選択します。 - OpenSCAP Capsule リストで、使用する OpenSCAP が有効になっている Capsule を選択します。
-
Puppet ENC タブで、
foreman_scap_client
Puppet クラスを追加します。 - オプション: Puppet Class Parameters を設定します。
- Submit をクリックして変更を保存します。
9.6. Puppet を使用したホストへのポリシーのデプロイ
Puppet を使用してホストにコンプライアンスポリシーをデプロイすると、Puppet エージェントによって SCAP クライアントがインストールされ、選択したコンプライアンスポリシーに従って次回の Puppet 実行時にホスト上で OpenSCAP スキャンが設定されます。
コンプライアンスポリシーの SCAP コンテンツには、リモートリソースが必要になる場合があります。詳細は、「リモートの SCAP リソースの追加」 を参照してください。
前提条件
- Capsule で OpenSCAP を有効にしている。詳細は、Capsule Server のインストール の Capsule Server での OpenSCAP の有効化 を参照してください。
ホストのオペレーティングシステムバージョンのリポジトリーが Satellite Server で同期され、ホストで有効化されている。
- Red Hat Enterprise Linux 9 BaseOS リポジトリーおよび Appstream RPM リポジトリー
- Red Hat Enterprise Linux 8 BaseOS リポジトリーおよび Appstream RPM リポジトリー
- Red Hat Enterprise Linux 7 Server および Extras RPM リポジトリー
- ホストのオペレーティングシステムバージョン用の Red Hat Satellite Client 6 リポジトリーは、Satellite Server で同期され、コンテンツビューおよびホストのライフサイクル環境で利用でき、ホストで有効化されている。詳細は、コンテンツの 管理 の Satellite のホストのリポジトリーセットのステータスの変更 を参照してください。このリポジトリーは、SCAP クライアントのインストールに必要です。
- Puppet デプロイメント方法を使用して コンプライアンスポリシーを作成 している。
手順
- Satellite Web UI で Hosts > All Hosts に移動して、OpenSCAP レポートを設定するホストで、Edit をクリックします。
-
Environment リストから、
foreman_scap_client
およびforeman_scap_client::params
が含まれる Puppet 環境を選択します。 - OpenSCAP Capsule リストから、使用する OpenSCAP が有効な Capsule を選択します。
-
Puppet ENC タブで、
foreman_scap_client
Puppet クラスを追加します。 - オプション: Puppet Class Parameters を設定します。
- Hosts ブレッドクラムリンクをクリックして、ホストのインデックスページに戻ります。
- ポリシーを追加するホストを選択します。
- Select Action をクリックします。
- リストから Assign Compliance Policy を選択します。
- Assign Compliance Policy ウィンドウで、Remember hosts selection for the next bulk action を選択します。
- 使用可能なポリシーのリストから必要なポリシーを選択し、Submit をクリックします。
第10章 オンデマンドでのセキュリティーコンプライアンススキャンの実行
ホストは、ホストに割り当てられたコンプライアンスポリシーで定義された CRON スケジュールに従って、OpenSCAP スキャンを定期的に実行します。ただし、ホスト上で、設定されているすべてのコンプライアンスポリシーのスキャンを随時手動で実行することもできます。
前提条件
-
ユーザーアカウントに
view_hosts
、create_job_invocations
、およびview_job_invocations
権限を持つロールが割り当てられている。 コンプライアンスポリシーを作成し、ホストにデプロイしている。
- ポリシーの管理の詳細は、8章コンプライアンスポリシーの管理 を参照してください。
- ポリシーのデプロイの詳細は、9章コンプライアンスポリシーのデプロイ を参照してください。
手順
- Hosts > All Hosts に移動します。
- 必要なホストのホスト名をクリックします。
- ホストの詳細ページで、Schedule a job ドロップダウンメニューを展開します。
- Run OpenSCAP scan を選択します。
検証
- ホストの詳細の概要で、Recent jobs カードを見つけます。
- Running タブを選択します。ジョブがすでに終了していない限り、表に Run scan for all OpenSCAP policies というジョブが表示されます。
- Recent jobs カードで、Finished タブを選択します。
- ジョブが正常に終了すると、ジョブの行に succeeded ステータスが表示されます。
- オプション: ジョブ名をクリックして呼び出しの詳細を確認します。
第11章 コンプライアンスの監視
Satellite を使用すると、コンプライアンスの監視と管理を一元化できます。コンプライアンスダッシュボードでは、ホストのコンプライアンスの概要が表示され、そのポリシーの範囲内にある各ホストの詳細を表示できます。コンプライアンスレポートでは、適用可能なポリシーを使用して、各ホストのコンプライアンスの詳細を分析します。この情報を使用して、各ホストが提示するリスクを評価し、ホストがコンプライアンスを満たすために必要なリソースを管理できます。SCAP を使用してコンプライアンスを監視することで、ポリシーのコンプライアンスを確認し、コンプライアンスの変化を検出できます。
11.1. コンプライアンスレポートの検索
コンプライアンスレポート検索フィールドを使用して、ホストのサブセットで使用可能なレポートのリストをフィルタリングします。
手順
- Satellite Web UI で、Hosts > Reports に移動します。
- オプション: 空の Search フィールドをクリックすると、利用可能な検索パラメーターがリスト表示されます。
- Search フィールドに検索クエリーを入力し、Search をクリックします。検索クエリーでは大文字と小文字は区別されません。
検索クエリーの例
- 5 つを超えるルールが失敗したすべてのコンプライアンスレポートを検索する
failed > 5
failed > 5
- 2023 年 1 月 1 日以降に作成された、ホスト名に
prod-
が含まれるホストのすべてのコンプライアンスレポートを検索します。
host ~ prod- AND date > "Jan 1, 2023"
host ~ prod- AND date > "Jan 1, 2023"
- 1 時間前に
rhel7_audit
コンプライアンスポリシーによって生成されたすべてのレポートを検索する
"1 hour ago" AND compliance_policy = date = "1 hour ago" AND compliance_policy = rhel7_audit
"1 hour ago" AND compliance_policy = date = "1 hour ago" AND compliance_policy = rhel7_audit
- XCCDF ルールに合格するレポートを検索する
xccdf_rule_passed = xccdf_org.ssgproject.content_rule_firefox_preferences-auto-download_actions
xccdf_rule_passed = xccdf_org.ssgproject.content_rule_firefox_preferences-auto-download_actions
- XCCDF ルールに不合格となるレポートを検索する
xccdf_rule_failed = xccdf_org.ssgproject.content_rule_firefox_preferences-auto-download_actions
xccdf_rule_failed = xccdf_org.ssgproject.content_rule_firefox_preferences-auto-download_actions
- 結果が XCCDF ルールに合格または不合格以外のレポートを検索する
xccdf_rule_othered = xccdf_org.ssgproject.content_rule_firefox_preferences-auto-download_actions
xccdf_rule_othered = xccdf_org.ssgproject.content_rule_firefox_preferences-auto-download_actions
追加情報
-
論理演算子
and
、not
、およびhas
を使用すると、複雑なクエリーを作成できます。論理演算子の詳細は、Red Hat Satellite の管理 の 詳細な検索でサポートされる演算子 を参照してください。 - 正規表現は、検索クエリーで使用できません。ただし、1 つの検索式に複数のフィールドを使用できます。使用可能なすべての検索演算子の詳細は、Red Hat Satellite の管理 の 詳細な検索でサポートされる演算子 を参照してください。
- 検索をブックマークすると、同じ検索クエリーを再利用できます。詳細は、Red Hat Satellite の管理 の ブックマークの作成 を参照してください。
11.2. コンプライアンスのメール通知
Satellite Server は、コンプライアンスポリシーサマリー のメール通知をサブスクライブしているすべてのユーザーに、OpenSCAP サマリーメールを送信します。メール通知のサブスクライブの詳細は、Red Hat Satellite の管理 の メール通知の設定 を参照してください。
ポリシーが実行されるたびに、Satellite は直前の実行との比較で結果をチェックし、変更がないかどうかを確認します。メールは各サブスクライバーがリクエストする頻度で送信され、各ポリシーのサマリーと直近の結果を提供します。
11.3. コンプライアンスポリシー統計情報の表示
コンプライアンスポリシーダッシュボードを表示して、特定のポリシーのコンプライアンスレポートを確認できます。コンプライアンスポリシーダッシュボードでは、ホストのコンプライアンスの統計的なサマリーが表示され、そのポリシーの範囲内にある各ホストのレポートの詳細を表示できます。
コンプライアンスレポートを表示するときは、次のホストを優先することを検討してください。
-
Failed
と評価されたホスト -
ステータスが不明なため
Never audited
とラベル付けされたホスト
前提条件
-
ユーザーアカウントに
view_policies
権限を持つロールが割り当てられている。
手順
- Satellite Web UI で、Hosts > Policies に移動します。
- 必要なポリシーの行で、Actions 列に移動し、Dashboard をクリックします。
11.4. ルールのコンプライアンス結果に基づくホストの調査
簡略化されたレポートを調べ、ポリシールールを使用して、特定のルールの不合格など、特定のコンプライアンス結果を持つホストをリスト表示できます。
前提条件
-
ユーザーアカウントに
view_arf_reports
およびview_hosts
権限を持つロールが割り当てられている。
手順
- Satellite Web UI で、Hosts > Reports に移動します。
- Reported At 列で、必要なホストとコンプライアンスポリシーのレポートに移動し、時刻のリンクをクリックします。
- Satellite で、ポリシールールの簡略化されたリストとスキャンの結果が表示されます。
オプション: チェック結果によってルールをフィルターします。Show log messages ドロップダウンリストから、次のフィルターのいずれかを選択します。
- Failed and othered - 不合格となったルール、またはスキャン中にチェックされなかったルールを表示します。
- Failed only - 不合格となったルールのみを表示します。
- オプション: ルールの詳細を調べます。Message 列で、ルール名の横にあるアイコンをクリックします。
- 必要なルールの行で、Actions 列に移動し、Hosts failing this rule をクリックします。
11.5. ホストのコンプライアンス違反の調査
完全なコンプライアンスレポートを調べて、ホストがルールに準拠できなかった理由を特定できます。場合によっては、非準拠状態を修復する方法を確認できます。
推奨される修復アクションやスクリプトは、先に実稼働以外の環境でテストしてから実装してください。修復によりシステムが機能しなくなる可能性があります。
コンプライアンスレポートは次のエリアで構成されています。
- 導入部分
- Evaluation Characteristics (評価特性)
- Compliance and Scoring (コンプライアンスおよびスコアリング)
- ルールの概要
前提条件
-
ユーザーアカウントに
view_arf_reports
およびview_hosts
権限を持つロールが割り当てられている。
手順
- Satellite Web UI で、Hosts > Reports に移動して、すべてのコンプライアンスレポートをリスト表示します。
- 必要なホストの行で、Actions 列に移動し、Full Report をクリックして、評価レポートの完全な詳細を表示します。
- Evaluation Characteristics エリアに移動して、特定のプロファイルに対するホストの評価に関する基本情報を確認します。
- Compliance and Scoring エリアに移動して、評価の統計情報とホストのコンプライアンススコアを確認します。
- Rule Overview に移動してルールを調べます。
- オプション: pass、notapplicable、または fix など、非表示にするチェックステータスの選択を解除します。
- オプション: Group rule by ドロップダウンメニューから、Severity などのルールのグループ化の基準を選択します。
- オプション: 検索フィールドに検索文字列を入力して、ルールをタイトルでフィルターします。検索は大文字と小文字を区別せず、入力時に動的に適用されます。
ルールのタイトルをクリックして、結果の詳細を調べます。
- ルールの説明と、ホストのコンプライアンスを満たすための指示 (利用できる場合)。
- ルールの根拠。
- 場合により、修復スクリプト。
11.6. コンプライアンスレポートの削除
Satellite のコンプライアンスレポートを削除できます。
前提条件
-
ユーザーアカウントに
view_arf_reports
およびdestroy_arf_reports
権限を持つロールが割り当てられている。
手順
- Satellite Web UI で、Hosts > Reports に移動します。
- コンプライアンスレポートウィンドウで、削除するポリシーを特定し、ポリシーの名前の右側にある Delete を選択します。
- OK をクリックします。
11.7. 複数のコンプライアンスレポートの削除
複数のコンプライアンスポリシーを同時に削除できます。ただし、Satellite Web UI では、コンプライアンスポリシーはページ分割されているため、レポートを 1 ページずつ削除する必要があります。すべての OpenSCAP レポートを削除する場合は、API ガイド の OpenSCAP レポートの削除 にあるスクリプトを使用します。
前提条件
-
ユーザーアカウントに
view_arf_reports
およびdestroy_arf_reports
権限を持つロールが割り当てられている。
手順
- Satellite Web UI で、Hosts > Reports に移動します。
- コンプライアンスレポートウィンドウで、削除するコンプライアンスレポートを選択します。
- リストの右上の Delete reports を選択します。
- 削除するページ数だけ、この手順を繰り返します。