第6章 Atomic Host で ID および認証サービスを提供するための SSSD コンテナーの設定

システム管理者は、コンテナーで SSSD を使用して Atomic Host システムの外部 ID、認証、および承認サービスを提供できます。本章では、外部 ID ソース (Identity Management または Active Directory) からのユーザーが Atomic ホスト自体で実行しているサービスを使用できるようにする privileged として、SSSD コンテナーを実行する方法を説明します。

または、外部 ID ソース(Identity Management または Active Directory)からのユーザーが Atomic Host の他のコンテナーで実行しているサービスを使用できるようする、unprivileged として SSSD コンテナーを実行することもできます。詳細は7章異なる設定を含む SSSD コンテナーのデプロイを参照してください。

開始する前に、以下を参照してください。

Atomic Host を Identity Management サーバーに登録するには、以下を参照してください。

Atomic Host を Active Directory に登録するには、以下を参照してください。

6.1. 前提条件

  • コンテナーをインストールする前に Atomic Host システムをアップグレードします。『Red Hat Enterprise Linux Atomic Host 7 インストールおよび設定ガイド』「アップグレードおよびダウングレード」を参照してください。

6.2. 特権のある SSSD コンテナーを使用した Identity Management ドメインの登録

この手順では、SSSD コンテナーをインストールして、Identity Management サーバーに登録できるように設定する方法を説明します。インストール中に以下の手順を実行します。

  • さまざまな設定およびデータがコンテナーにコピーされます。
  • Identity Management クライアントを設定するための ipa-client-install ユーティリティーが起動します。
  • Identity Management ドメインへの登録に成功すると、設定およびデータは Atomic Host システムに再びコピーされます。

前提条件

以下のいずれかが必要になります。

  • Atomic Host システムのワンタイムクライアント登録のパスワードを Identity Management ドメインに行うための無作為なパスワード。このパスワードを生成するには、以下のように、Identity Management サーバー上の Identity Management ホストとして Atomic Host システムを追加します。

    $ ipa host-add <atomic.example.com> --random
    [... output truncated ...]
      Random password: 4Re[>5]OB$3K($qYs:M&}B
    [... output truncated ...]

    詳細は、『Linux ドメイン ID、認証、およびポリシーガイド』「クライアントのインストール」を参照してください。

  • クライアント登録が許可された Identity Management ユーザーの認証情報。デフォルトでは、これは admin ユーザーです。

手順

  1. atomic install コマンドを実行して sssd コンテナーインストールを開始し、新しいホストの登録が可能な IdM ユーザーの無作為なパスワードまたは認証情報を指定します。多くの場合、これは admin ユーザーです。

    # atomic install rhel7/sssd --password "4Re[>5]OB$3K($qYs:M&}B"
    [... output truncated ...]
    Service sssd.service configured to run SSSD container.
    [... output truncated ...]
    # atomic install rhel7/sssd -p admin -w <admin_password>
    [... output truncated ...]
    Service sssd.service configured to run SSSD container.
    [... output truncated ...]

    atomic install rhel7/sssd コマンドは、標準の ipa-client-install オプションを指定できます。設定によっては、これらのオプションを指定して追加情報を入力する必要がある場合があります。たとえば、ipa-client-install がサーバーのホスト名およびドメイン名を判断できない場合は、--server および --domain オプションを指定します。

    # atomic install rhel7/sssd --password "4Re[>5]OB$3K($qYs:M&}B" --server <server.example.com> --domain <example.com>
    注記

    atomic install の実行前に、Atomic Host の /etc/sssd/ipa-client-install-options ファイルに保存して、ipa-client-install にオプションを指定することもできます。たとえば、このファイルには以下が含まれます。

    --password=4Re[>5]OB$3K($qYs:M&}B
    --server=server.example.com
    --domain=example.com
  2. 以下のいずれかのコマンドを実行して、コンテナーで SSSD を起動します。

    # atomic run rhel7/sssd
    # systemctl start sssd
  3. 任意。コンテナーが実行していることを確認します。

    # docker ps
    CONTAINER ID        IMAGE
    5859b9366f0f        rhel7/sssd
  4. 任意。Atomic Host の SSSD が Identity Management ドメインの ID を解決していることを確認します。

    1. Identity Management ユーザーの Kerberos チケットを取得し、ssh ユーティリティーを使用して Atomic Host にログインします。

      $ atomic run sssd kinit <idm_user>
      $ ssh <idm_user>@<atomic.example.com>
    2. id ユーティリティーを使用し、所定のユーザーとしてログインしていることを確認します。

      $ id
      uid=1215800001(idm_user) gid=1215800001(idm_user) groups=1215800001(idm_user) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
    3. hostname ユーティリティーを使用して、Atomic Host システムにログインしていることを確認します。

      $ hostname
      atomic.example.com

6.3. SSSD Container を使用した Active Directory ドメインのジョイン

この手順では、SSSD コンテナーをインストールし、Atomic Host システムを Active Directory にジョインするように設定する方法を説明します。

手順

  1. 管理者などActive Directory ドメインにシステムを登録することができるユーザーのパスワードを、Atomic Host システムの /etc/sssd/realm-join-password ファイルに保存します。

    # echo <password> > /etc/sssd/realm-join-password

    realm join コマンドは、パスワードをコマンドラインパラメーターとして受け付けないため、ファイルにパスワードを指定する必要があります。

    注記

    atomic install でデフォルト名 (sssd) ではなく、カスタムのコンテナーイメージ名を指定する場合には、ファイルのパスにカスタム名を追加します (/etc/sssd/<custom_container_name>/realm-join-password)。

  2. atomic install コマンドを実行して sssd コンテナーインストールを開始し、参加するレルムを指定します。操作にデフォルトの管理者ユーザーアカウントを使用している場合は、以下を実行します。

    # atomic install rhel7/sssd realm join <ad.example.com>
    docker run --rm=true --privileged --net=host -v /:/host -e NAME=sssd -e IMAGE=rhel7/sssd -e HOST=/host rhel7/sssd /bin/install.sh realm join ad.example.com
    Initializing configuration context from host ...
    Password for Administrator:
    Copying new configuration to host ...
    Service sssd.service configured to run SSSD container.

    別のユーザーアカウントを使用している場合は、--user オプションで指定します。

    # atomic install rhel7/sssd realm join --user <user_name> <ad.example.com>
  3. 以下のいずれかのコマンドを実行して、コンテナーで SSSD を起動します。

    # atomic run rhel7/sssd
    # systemctl start sssd
  4. 任意。コンテナーが実行していることを確認します。

    # docker ps
    CONTAINER ID        IMAGE
    5859b9366f0f        rhel7/sssd
  5. 任意。Atomic Host システムで、SSSD が Active Directory ドメインからアイデンティティーを解決していることを確認します。

    # id administrator@<ad.example.com>
    uid=1397800500(administrator@ad.example.com) gid=1397800513(domain users@ad.example.com)

関連情報


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