5.3.9. Active Directory Kerberos 通信用の Kerberos Distribution Center プロキシーとしての IdM サーバーの設定
特定の状況では、ネットワークの制限またはファイアウォールルールにより、Identity Management (IdM) クライアントが Active Directory (AD) ドメインコントローラー上のポート 88 に Kerberos トラフィックを送信できなくなります。このソリューションは、たとえば Identity Management サーバーで Kerberos プロキシーを設定して、IdM クライアントから AD にトラフィックを中継します。
- IdM クライアントで、Active Directory レルムを
/etc/krb5.conf
ファイルの [realms] セクションに追加します。kdc
パラメーターおよびkpasswd_server
パラメーターを、IdM サーバーの完全修飾ドメイン名 (その後に続く/KdcProxy
) を参照するように設定します。AD.EXAMPLE.COM = { kdc = https://server.idm.example.com/KdcProxy kpasswd_server = https://server.idm.example.com/KdcProxy }
- IdM クライアントで、前の手順の
/etc/krb5.conf
指定を上書きする可能性のある/var/lib/sss/pubconf/kdcinfo.*
ファイルの作成を無効にします。/etc/sssd/sssd.conf
ファイルを編集し、krb5_use_kdcinfo
をFalse
に設定します。[domain/example.com] krb5_use_kdcinfo = False
- IdM サーバーで、
/etc/ipa/kdcproxy/kdcproxy.conf
ファイルでuse_dns
オプションをtrue
に設定し、DNS サービス (SRV) レコードを使用して以下と通信するための AD サーバーを検索します。use_dns = true
また、DNS SRV レコードを使用しない場合は、明示的な AD サーバーを/etc/krb5.conf
ファイルの [realms] セクションに追加します。AD.EXAMPLE.COM = { kdc = ad-server.ad.example.com kpasswd_server = ad-server.ad.example.com }
注記この手順の 2 と 3 を実行するには、Ansible スクリプトなどのスクリプトを実行します。これは、複数のシステムで変更を行う場合などに特に便利です。 - IdM サーバーで IPA サービスを再起動します。
# ipactl restart
- この手順が成功したことを確認するには、IdM クライアントで以下のコマンドを実行します。
# rm /var/lib/sss/pubconf/kdcinfo* # kinit ad_user@AD.EXAMPLE.COM Password for ad_user@AD.EXAMPLE.COM: # klist Ticket cache: KEYRING:persistent:0:0 Default principal: ad_user@AD.EXAMPLE.COM Valid starting Expires Service principal [... output truncated ...]