第12章 ISO イメージとファイルの管理

Red Hat Satellite 6 には、 Red Hat の CDN やその他のソースの ISO イメージを保存する機能があります。また、Satellite Server では、仮想マシンのイメージなどの他のファイルをアップロードしたり、それらをリポジトリーに公開する方法が提供されます。本章では、ISO イメージとその他のファイルをインポートする基本的な手順を説明します。

12.1. Red Hat からの ISO イメージのインポート

Red Hat CDN では、特定製品の ISO イメージを提供しています。このコンテンツをインポートするプロセスは、RPM コンテンツのリポジトリーを有効にするプロセスと類似のものです。

Web UI をご利用の場合

コンテンツ > Red Hat リポジトリー に移動します。これにより、さまざまなコンテンツタイプのタブのセットが表示されます。ISO タブを選択し、使用するイメージを見つけます。この例では、Red Hat Enterprise Linux Server > Red Hat Enterprise Linux 7 Server (ISOs) を選択し、Red Hat Enterprise Linux 7 Server ISOs x86_64 7.2 のイメージを選択します。

コンテンツ > 製品 に移動し、Red Hat Enterprise Linux Server をクリックすると、この製品のリポジトリー画面が表示されます。この時点では、この製品には選択した ISO イメージのリポジトリーが含まれています。このリポジトリーを選択し、同期開始 をクリックします。

注記

Web UI でも同期の進捗状況を確認できます。コンテンツ > 同期の状態 に移動して、製品/リポジトリーのツリーを展開します (または すべて展開 をクリックします)。

数分後には、Satellite Server によって、選択した全イメージのインポートが完了します。

CLI をご利用の場合

file リポジトリーの Red Hat Enterprise Linux Server 製品を検索します。

# hammer repository-set list \
--product "Red Hat Enterprise Linux Server" \
--organization "ACME" | grep "file"

Red Hat Enterprise Linux 7.2 Server ISO の file リポジトリーを有効にします。

# hammer repository-set enable \
--product "Red Hat Enterprise Linux Server" \
--name "Red Hat Enterprise Linux 7 Server (ISOs)" \
--releasever 7.2 \
--basearch x86_64 \
--organization "ACME"

自分の製品内でリポジトリーを検索し、これと同期させます。この例では、リポジトリーのこのバージョンの ID は 40 です。

# hammer repository list \
--product "Red Hat Enterprise Linux Server" \
--organization "ACME"
# hammer repository synchronize \
--name "Red Hat Enterprise Linux 7 Server ISOs x86_64 7.2" \
--product "Red Hat Enterprise Linux Server" \
--organization "ACME"

12.2. 個別の ISO イメージとファイルのインポート

本セクションでは、Satellite Server に手動で ISO コンテンツとその他のファイルをインポートする方法を説明します。この例では、bootdisk.iso ファイルを Satellite Server にアップロードします。このプロセスは、カスタムの Puppet モジュールをアップロードするプロセスと同様です。

  1. カスタム製品を作成します。
  2. ファイルのリポジトリーを製品に追加します。
  3. リポジトリーにアップロードするファイルを選択します。

Web UI をご利用の場合

コンテンツ > 製品 に移動し、新製品 をクリックします。新しい製品のフォームが表示されます。以下の詳細情報を入力します。

  • 名前: 製品の簡単な名前。Custom ISOs と入力します。
  • ラベル: 製品の内部 ID。Red Hat Satellite 6 では、名前 に入力した内容に基づいてこのフィールドに値が自動的に入力されます。
  • GPG キー: 製品全体の GPG キー。これは空白にします。
  • 同期プラン: 製品の同期計画。これは Example Plan にアタッチすることができます。
  • 説明: 製品の簡単な説明。Custom ISO collection と入力します。

保存 をクリックします。

ISO 用のカスタム製品を作成すると、製品のリポジトリー画面が表示されます。リポジトリーの作成 をクリックし、新しいリポジトリー用のフォームを表示します。以下の詳細情報を入力します。

  • 名前: リポジトリーの簡単な名前。Bootdisk と入力します。
  • ラベル: リポジトリーの内部 ID。Red Hat Satellite 6 では、名前 に入力した内容に基づいてこのフィールドに値が自動的に入力されます。
  • タイプ: リポジトリーのタイプ。file を選択すると新たなフィールドが表示されます。
  • URL: ソースとして使用するレジストリーの URL。これは、PULP_MANIFEST ファイルが保存されている Satellite が作成した他のリポジトリーを同期するためのものです。この例では空白にしておきます。

保存 をクリックすると、Bootdisk リポジトリーが記載されている製品のリポジトリー画面に戻ります。Bootdisk リポジトリーをクリックします。

ファイルのアップロード セクションに移動し、参照 をクリックします。ISO ファイル (この例では bootdisk.iso) を選択し、アップロード をクリックします。数秒すると、Satellite Server が Content successfully uploaded とレポートします。

注記

Puppet モジュールを管理したり、製品から Puppet モジュールを削除するには、Manage Puppet Modules ページをクリックします。

CLI をご利用の場合

カスタム製品を作成します。

# hammer product create \
--name "Custom ISOs" \
--sync-plan "Example Plan" \
--description "Custom ISO collection" \
--organization "ACME"

リポジトリーを作成します。

# hammer repository create \
--name "Bootdisk" \
--content-type "file" \
--product "Custom ISOs" \
--organization "ACME"

ISO ファイルをリポジトリーにアップロードします。

# hammer repository upload-content \
--path ~/bootdisk.iso \
--name "Bootdisk" \
--product "Custom ISOs" \
--organization "ACME"

これで ISO イメージを含むカスタムリポジトリーが完成しました。

12.3. Red Hat OVAL リポジトリーのインポート

OVAL (Open Vulnerability and Assessment Language) ファイルには、公開セキュリティーコンテンツの情報が含まれています。Red Hat Satellite 6 では、OVAL ファイルを SCAP 監査プロセスの一部として使用します。Red Hat は、複数の OVAL ファイルを格納しているリポジトリー (https://www.redhat.com/security/data/oval/) を提供しています。Satellite Server がこのリポジトリーを同期することで、SCAP 監査向けのファイルにローカルでアクセスできるようになります。

Web UI をご利用の場合

コンテンツ > 製品 に移動し、新製品 をクリックします。新しい製品のフォームが表示されます。以下の詳細情報を入力します。

  • 名前: 製品の簡単な名前。OVAL Files と入力します。
  • ラベル: 製品の内部 ID。Red Hat Satellite 6 では、名前 に入力した内容に基づいてこのフィールドに値が自動的に入力されます。
  • GPG キー: 製品全体の GPG キー。これは空白にします。
  • 同期プラン: 製品の同期計画。これは Example Plan にアタッチすることができます。
  • 説明: 製品の簡単な説明。OVAL file collections と入力します。

保存 をクリックします。

OVAL 向けのカスタム製品を作成したら、製品のリポジトリー画面が表示されます。リポジトリーの作成 をクリックし、新しいリポジトリー用のフォームを表示します。以下の詳細情報を入力します。

  • 名前: リポジトリーの簡単な名前。Red Hat OVAL Files と入力します。
  • ラベル: リポジトリーの内部 ID。Red Hat Satellite 6 では、名前 に入力した内容に基づいてこのフィールドに値が自動的に入力されます。
  • タイプ: リポジトリーのタイプ。file を選択すると新たなフィールドが表示されます。
  • URL: ソースとして使用するレジストリーの URL。たとえば https://www.redhat.com/security/data/oval/ と入力します。このレポジトリーには、Satellite Server が同期に使用する PULP_MANIFEST ファイルが含まれます。

保存 をクリックすると、新規リポジトリーが記載された製品のリポジトリー画面に戻ります。このリポジトリーを選択して 同期開始 をクリックします。

CLI をご利用の場合

カスタム OVAL 製品を作成します。

# hammer product create \
--name "OVAL Files" \
--sync-plan "Example Plan" \
--description "OVAL file collections" \
--organization "ACME"

OVAL リポジトリーを作成します。

# hammer repository create \
--name "Red Hat OVAL Files" \
--content-type "file" \
--product "OVAL Files" \
--publish-via-http true \
--url https://www.redhat.com/security/data/oval/ \
--organization "ACME"

OVAL リポジトリーを同期します。

# hammer repository synchronize \
--name "Red Hat OVAL Files" \
--product "OVAL Files" \
--organization "ACME"

ローカルの Red Hat OVAL リポジトリーのテスト

OVAL コンテンツの同期が完了したら、リポジトリーからの OVAL ファイルを評価するテストを実行できます。

テストの Red Hat Enterprise Linux 7 システムに openscap-scanner パッケージをインストールします。これには oscap ツールが含まれています。

# yum install openscap-scanner

Satellite Server から Red Hat Enterprise Linux 7 OVAL ファイルのコピーをダウンロードします。

# cd /tmp
# wget http://satellite.example.com/pulp/isos/ACME-OVAL_Files-Red_Hat_OVAL_Files/Red_Hat_Enterprise_Linux_7.xml

oscap ツールで Red Hat Enterprise Linux 7 のテストマシンの脆弱性をスキャンします。

# oscap oval eval \
--results results.xml \
--report report.html ./Red_Hat_Enterprise_Linux_7.xml

これでテストが実行され、各定義が順守しているかどうかの情報を含む OVAL レポートが生成されます。

12.4. 本章のまとめ

本章では、Red Hat Satellite 6 での ISO およびファイルコンテンツの管理を説明しました。

次章では、コンテンツ管理プロセスを説明します。