第7章 異なる設定を含む SSSD コンテナーのデプロイ

システム管理者は、Identity Management や Active Directory などの特定のアイデンティティープロバイダーを使用する、特権のない複数の SSSD コンテナーをデプロイすることができます。これにより、他のアプリケーションコンテナーが、優先の ID ソースのみを使用できます。

7.1. 前提条件

  • SSSD コンテナーが提供するサービスを他のコンテナーから使用する場合は、クライアントコンテナーの rhel7 ベースイメージに sssd-client パッケージが含まれている必要があります。ただし、デフォルトの rhel7 ベースイメージにはこのパッケージが含まれません。

    その他のコンテナーから SSSD サービスを使用する必要がある場合は、デフォルトの rhel7 ベースイメージに基づいてクライアントコンテナーに独自のイメージを作成し、sssd-client を含めます。詳細は、『Creating Docker images』 を参照してください。

7.2. SSSD コンテナーを起動し、これをアイデンティティーリソースにジョインさせる

SSSD コンテナーを開始し、Active Directory などのアイデンティティーリソースにジョインさせるには、以下を実行します。

  1. atomic install コマンドを使用して、SSSD コンテナーを起動します。以下に例を示します。

    # atomic install --opt1='--dns=192.0.2.1 --dns-search=idm.example.com --hostname=server.ad.example.com -e SSSD_CONTAINER_TYPE=application --net=default' --name=ad_sssd rhel7/sssd realm join -v ad.example.com

    前述の例は、ad_sssd という名前の SSSD アプリケーションコンテナーを作成します。DNS サーバーの IP アドレス、検索ドメイン、ホスト名、および realm join コマンドを atomic install に渡し、コンテナーで稼働している SSSD を Active Directory ドメインに自動的に参加させます。

    この手順は、SSSD コンテナーを提供する各アイデンティティープロバイダーに対して繰り返します。

  2. コンテナーを起動します。以下に例を示します。

    # atomic run ad_sssd

7.3. SSSD キャッシュをアプリケーションコンテナーに渡す

アプリケーションコンテナーで SSSD キャッシュを使用するには、アプリケーションコンテナーの起動時に関連のディレクトリーを docker run コマンドに渡します。

# docker run --rm --name=<container_name> -v=/var/lib/sssd_container/<sssd-container-name>/client/etc/krb5.conf.d:/etc/krb5.conf.d -v=/var/lib/sssd_container/<sssd-container-name>/client/var/lib/sss/pipes/:/var/lib/sss/pipes/ <image_name>

これにより、SSSD コンテナーのディレクトリーがアプリケーションコンテナー内の対応するディレクトリーにマッピングされます。

これでコンテナーで実行中のアプリケーションは、kinit ユーティリティーや mod_auth_gssapi モジュールなどを使用して認証できるようになりました。


このページには機械翻訳が使用されている場合があります (詳細はこちら)。