Red Hat Training

A Red Hat training course is available for Red Hat Satellite

5.2. Identity Management を使用した認証

Satellite 5 では、IdM または IPA サーバーによる認証が可能になりました。これらは以下に対応します。
  • WebUI での Kerberos 認証。
  • ユーザーを Satellite データベースに事前に作成する必要がない。
  • PAM 認証を全ユーザーに有効とすることが可能。
  • ユーザーのロールを外部の ID プロバイダーのユーザーグループメンバーシップから取得することが可能。
  • システムグループ管理者を組織の外部 ID プロバイダーのユーザーグループメンバーシップから取得することが可能。

注記

IPA 認証設定が機能するのは、Satellite 5 の Web UI を使用する場合のみです。rhn_registerrhnreg_ksspacecmdrhncfg-manager といったクライアントツールや Satellite 5 API では IPA 認証は使用できません。

5.2.1. 要件

IPA を使用した Satellite 認証には、以下の要件があります。
  • 設定済み Satellite Server。以下の手順では、Satellite サーバーに satellite.example.com のホスト名を使用しています。
  • Red Hat Enterprise Linux 6 または 7 上で設定した IPA/IdM サーバー。以下の手順では、IPA サーバーに ipa.example.com のホスト名を使用しています。
  • Satellite サーバーへの追加パッケージのインストール。標準の Red Hat Enterprise Linux 6 および 7 リポジトリーからこれらのパッケージをインストールするには、以下のコマンドを実行します。
    [root@satellite ~]# yum install ipa-client ipa-admintools sssd sssd-dbus mod_auth_kerb mod_authnz_pam mod_lookup_identity mod_intercept_form_submit -y
    
  • 最新の SELinux ブール値を追加するための selinux-policy パッケージの最新バージョン。以下のコマンドでこのパッケージを更新できます。
    [root@satellite ~]# yum update selinux-policy -y
    

5.2.2. Satellite Server の登録

ipa-client-install コマンドを使って Satellite サーバーを IPA サーバーに登録します。ここでは Satellite サーバーの登録に必要なオプションを設定します。
[root@satellite ~]# ipa-client-install
Provide the domain name of your IPA server (ex: example.com): example.com
Provide your IPA server name (ex: ipa.example.com): ipa.example.com
Hostname: satellite.example.com
Realm: EXAMPLE.COM
DNS Domain: example.com
IPA Server: ipa.example.com
BaseDN: dc=example,dc=com

Continue to configure the system with these values? [no]: yes
User authorized to enroll computers: admin
Synchronizing time with KDC...
Password for admin@EXAMPLE.COM: *********
これが完了すると、Satellite サーバーは IPA サーバーの詳細を使用してクライアントとして機能します。
IPA サーバーには、Satellite サーバー用の HTTP サービスも必要になります。管理者ユーザーとして Satellite サーバーを IPA サーバーに認証し、ipa service-add コマンドを実行します。
[root@satellite ~]# kinit admin
[root@satellite ~]# ipa service-add HTTP/satellite.example.com
--------------------------------------------------
Added service "HTTP/satellite.example.com@EXAMPLE.COM"
--------------------------------------------------
  Principal: HTTP/satellite.example.com@EXAMPLE.COM
  Managed by: satellite.example.com

5.2.3. IPA 認証設定ツールの使用

Satellite には spacewalk-setup-ipa-authentication というツールが含まれており、これは Satellite サーバーが IPA 認証を使用するように設定します。以下の手順で実行します。
  • Satellite サーバーで Kerberos 認証を設定します。
  • Satellite サーバーで SSSD サービスを設定します。
  • Satellite web サーバーが SSSD で通信し、PAM 認証に従うように設定します。
Satellite サーバーで以下のコマンドを実行して設定を開始します。
[root@satellite ~]# spacewalk-setup-ipa-authentication

5.2.4. 認証設定の完了

Satellite 管理者ユーザーとしてログインし、管理ユーザー外部認証 に移動します。デフォルトの組織 を、IPA で認証する新規ユーザーのデフォルトの組織に設定します。更新 をクリックしてこのオプションを保存します。
これでユーザーは、IPA 認証情報を使用して Satellite にログインできます。

5.2.5. IPA が複数の組織を使用するよう設定する (オプション)

IPA サーバーには各ユーザーの組織ユニット用のパラメーターが含まれています。Satellite はこの値を使って組織にマッピングを行います。これにより、IPA サーバーにある組織ユニットの値 (ou) をベースにして特定のユーザーが組織に追加されます。
Satellite 管理者ユーザーとしてログインし、管理ユーザー外部認証 に移動します。IPA から渡される組織ユニット名を使用する オプションを有効にして 更新 をクリックします。
この時点で Satellite により、IPA サーバーにある各ユーザーの組織ユニットに基づいてユーザーが組織に追加されます。組織ユニットがないユニットは、デフォルトの組織に割り当てられます。

5.2.6. IPA がユーザーグループを使用するよう設定する (オプション)

IPA サーバーにはグループ用のパラメーターが含まれており、Satellite はこれをロールにマッピングできます。これにより、IPA ユーザーのロールベースのパーミッションが使用できるようになります。
Satellite 管理者ユーザーとしてログインし、管理ユーザー外部認証グループロールマッピング に移動します。Create new external group (新規外部グループの作成) リンクをクリックし、以下の詳細を入力します。
  • 外部のグループ名 - IPA サーバーからのグループ名を入力します。
  • 管理者ロール および ロール - グループに割り当てるロールを選択します。たとえば、チャンネル管理者 を割り当てます。
作成 をクリックしてグループ作成を完了します。
これで Satellite は、各ユーザーの IPA グループに基づいてユーザーにパーミッションを割り当てます。