11.2. カスタムリポジトリーの設定

更新されたクライアント設定パッケージまたは他の Red Hat 以外のソフトウェアを RHUI サーバーに配信するために使用できるカスタムリポジトリーを作成できます。64 ビット RHUI サーバー (例: client-rhui-x86_64) の保護されたリポジトリーは、RHUI サーバーに新しい Red Hat 以外のパッケージ (更新済みのクライアント設定パッケージなど) を配布するための優先手段になります。

Red Hat コンテンツリポジトリーと同様、保護されているすべてのカスタムリポジトリーが、プロセッサーアーキテクチャーでのみ異なる (i386 と AMD64) は、$basearch yum 変数を使用して、エンタイトルメント証明書内の単一のエンタイトルメントに統合されます。

証明書に問題がある場合には、RHUI サーバーの保護されていないリポジトリーを、更新された RPM を RHUI サーバーに配布するためのフォールバック方法として使用できます。

手順

  1. Red Hat Update Infrastructure Management Tool のホーム画面に移動します。

    [root@rhua ~]# rhui-manager
  2. Repository Management 画面で c を押して、create a new custom repository (RPM content only) を選択します。

    ------------------------------------------------------------------------------
                 -= Red Hat Update Infrastructure Management Tool =-
    
    -= Repository Management =-
    
       l   list repositories currently managed by the RHUI
       i   display detailed information on a repository
       a   add a new Red Hat content repository
       ad  add a new Red Hat docker container
       c   create a new custom repository (RPM content only)
       d   delete a repository from the RHUI
       u   upload content to a custom repository (RPM content only)
       ur  upload content from a remote web site (RPM content only)
       p   list packages in a repository (RPM content only)
    
    Connected: rhua.example.com
    ------------------------------------------------------------------------------
  3. リポジトリーの一意の ID を入力します。英数字、_(アンダースコア)、および-(ハイフン) のみが許可されます。一意の ID にスペースは使用できません。たとえば、repo1repo_1、および repo-1 はすべて有効なエントリーです。

    Unique ID for the custom repository (alphanumerics, _, and - only):
  4. リポジトリーの表示名を入力します。この名前は、Red Hat Update Infrastructure Management Tool 内でリポジトリーを識別するのに使用されます。
  5. リポジトリーをホストするパスを指定します。このパスは、RHUI がホストする全リポジトリーで一意でなければなりません。たとえば、このステップのパスを some/unique/name として指定すると、リポジトリーは //server/pulp/repos/some/unique/name に配置されます。
  6. リポジトリーのメタデータに使用するチェックサムタイプとして sha256 を選択します。

    注記

    RHEL 6 または RHEL 7 用のカスタムリポジトリーを作成する場合は sha256 を使用します。RHEL 5 クライアントのリポジトリーを作成する場合は sha1 を使用します。

  7. 新規リポジトリーを保護するかどうかを選択します。この質問に no と回答すると、すべてのクライアントがリポジトリーにアクセスできます。yes と回答すると、適切なエンタイトルメント証明書を持つクライアントのみがリポジトリーにアクセスできます。

    注記

    名前が示すように、保護されていないリポジトリーのコンテンツは、クライアントのエンタイトルメント証明書を必要とせずに要求するシステムで利用できます。保護されていないリポジトリーを使用してコンテンツを配信する場合は、更新されたクライアント設定 RPM などのコンテンツを配布する場合は注意してください。これにより、保護されたリポジトリーへのアクセスが提供されます。

    保護されていないリポジトリーの使用は、緊急時のガラス破りの行動です。

    新規リポジトリーの保護を選択した場合、Red Hat Update Infrastructure Management Tool はエンタイトルメントパスを要求します。また、リポジトリーの相対パスに基づいてエンタイトルメントパスを提案します。

    クライアントエンタイトルメント証明書には、アクセス可能なダウンロード URL が含まれます。RHUI は証明書のコンテンツを分析し、要求されたリポジトリーが許可された URL のいずれかと一致するかどうかを判断します。これにより、クライアントが認証を許可するかどうかが決まります。たとえば、エンタイトルメント証明書が /some/unique/name へのアクセスを許可し、リクエストが //server/pulp/repos/some/unique/name/os/repodata にあるリポジトリーに対して行われた場合、パスは権利を付与するダウンロード URL の 1 つで始まるため、RHUI はリクエストを承認し、認証を付与します。URL は正しい情報でのみ開始する必要があります。完全一致する必要はありません。

    注記

    pulp-admin で作成した /some/unique/name リポジトリーがカスタムグループに追加されていない場合は、Red Hat 更新インフラストラクチャー管理ツールに /some/unique/name が表示されません。Red Hat Update InfrastructureManagementTool で同じ ID /some/unique/name のリポジトリーを作成しようとして、/some/unique/name リポジトリーが pulp-admin で作成されたことに気付かない場合は、次のメッセージが表示されます。ID /some/unique/name のリポジトリーはすでに存在します。

    yum が変数の値を認識している限り、エンタイトルメントには変数を含めることもできます。使用する最も一般的な変数は $basearch$releasever で、要求を行うクライアントの詳細が入力されます。たとえば、資格証明書が /unique-name/$ basearch/bar へのアクセスを許可し、リクエストが //server/pulp/repos/unique-name/x86_64/bar にあるリポジトリーに対して行われた場合、RHUI は変数が入力されたときにパスが一致するため、認証を要求して許可します。

    Red Hat Update Infrastructure Management Tool は、リポジトリーのパスを提供したときに使用した変数に基づいて使用するパスを提案します。フィールドが空白のままにして、推奨されるパスを受け入れます。

    Red Hat Update Infrastructure Management Tool は、GNU Privacy Guard(GPG) 署名が、そのリポジトリーにあるコンテンツに対して有効になっているかどうかを尋ねます。y を押すと、コンテンツが Red Hat によって署名されるかどうかを尋ねます。yes と回答すると、リポジトリー設定に Red Hat GPG キーが含まれます。その内容がカスタムの GPG キーで署名されるかどうかを尋ねます。yes と回答すると、リポジトリー設定に含める公開 GPG キーへのパスの入力が求められます。パブリック GPG キーへの複数のパスの入力を継続できます。

    Should the repository require clients to perform a GPG check and verify packages are signed by a GPG key? (y/n) y
    
    Will the repository be used to host any Red Hat GPG signed content? (y/n) y
    
    Will the repository be used to host any custom GPG signed content? (y/n) y
    
    Enter the absolute path to the public key of the GPG key pair:
    /root/rpm-gpg/rhui-client-rhui.gpg
    
    Would you like to enter another public key? (y/n) y
    
    Enter the absolute path to the public key of the GPG key pair:
    /root/rpm-gpg/rhui-client-all.gpg
    
    Would you like to enter another public key? (y/n) n
  8. 新しいリポジトリーの詳細が表示されます。プロンプトで y を押して情報を確認し、リポジトリーを作成します。