Show Table of Contents
このページには機械翻訳が使用されている場合があります (詳細はこちら)。
7.3. SSSD 向け ID プロバイダーと認証プロバイダーの設定
7.3.1. SSSD の ID プロバイダーと認証プロバイダーについて
SSSD ドメイン ID プロバイダーと認証プロバイダー
ID および認証プロバイダーは、SSSD 設定ファイル内で domains として設定されます。単一ドメインは、以下のように使用することができます。
- アイデンティティープロバイダー (ユーザー情報向け)
- 認証プロバイダー (認証リクエスト向け)
- アクセス制御プロバイダー (承認リクエスト向け)
- これらのプロバイダーの組み合わせ (対応するすべての操作が単一サーバー内で実行される場合)
SSSD 用に複数のドメインを設定できます。少なくとも 1 つのドメインを設定する必要があります。そうでなければ、SSSD は開始しません。
/etc/sssd/sssd.conf
ファイル内の access_provider
オプションが、ドメイン用に使われるアクセス制御プロバイダーを設定します。デフォルトで、オプションは permit
に設定されます。これにより、すべてのアクセスが常に許可されます。詳細は、sssd.conf(5) の man ページを参照してください。
プロキシープロバイダー
プロキシープロバイダーは、SSSD とリソースとの間の中間的中継点の役割を持っています。このリソースがなければ SSSD は使用できません。プロキシープロバイダーを使用する際、SSSD はプロキシーサービスに接続し、プロキシーは指定されたライブラリーを読み込みます。
プロキシープロバイダーを使用して SSSD を設定すると、以下を使用できます。
- 指紋スキャナーなどの別の認証メソッド
- NIS などのレガシーシステム
/etc/passwd
で定義されたローカルシステムアカウントおよびリモート認証
ID および認証プロバイダーの利用可能な組み合わせ
表7.1 ID および認証プロバイダーの利用可能な組み合わせ
本ガイドでは、すべてのプロバイダータイプを説明しているわけではないことに留意してください。詳細情報は、以下を参照してください。
- Identity Management の SSSD クライアントを設定するには、Red Hat は
ipa-client-install
ユーティリティーの使用を推奨しています。『Linux ドメイン ID、認証、およびポリシーガイド』 の Identity Management クライアントのインストールおよびアンインストール を参照してください。 ipa-client-install
を使用せずに Identity Management の SSSD クライアントを手動で設定するには、Red Hat ナレッジベースの Installing and Uninstalling an Identity Management Client Manually を参照してください。- SSSD と共に使用する Active Directory の設定については、『Windows 統合ガイド』 の Active Directory を SSSD のアイデンティティープロバイダーとして使用する を参照してください。
7.3.2. SSSD 向け LDAP ドメインの設定
前提条件
- SSSD をインストールします。
# yum install sssd
SSSD を設定して LDAP ドメインを発見
/etc/sssd/sssd.conf
ファイルを開きます。- LDAP ドメイン用に
[domain]
セクションを作成します。[domain/LDAP_domain_name]
- LDAP サーバーをアイデンティティープロバイダーとして、または認証プロバイダーとして使用したいのか、もしくは両方として使用したいのかを指定します。
- LDAP サーバーをアイデンティティープロバイダーとして使用する場合は、
id_provider
オプションをldap
に設定します。 - LDAP サーバーを認証プロバイダーとして使用する場合は、
auth_provider
オプションをldap
に設定します。
たとえば、LDAP サーバーを両方として使用する場合は、以下のとおりです。[domain/LDAP_domain_name]
id_provider = ldap
auth_provider = ldap
- LDAP サーバーを指定します。以下から 1 つ選択します。
- サーバーを明示的に定義するには、サーバーの URI を
ldap_uri
オプションで指定します。[domain/LDAP_domain_name] id_provider = ldap auth_provider = ldap
ldap_uri = ldap://ldap.example.com
ldap_uri
オプションは、サーバーの IP アドレスも受信します。しかし、サーバー名の代わりに IP アドレスを使用すると、TLS/SSL 接続の失敗につながる場合があります。Red Hat ナレッジベースの 「Configuring an SSSD Provider to Use an IP Address in the Certificate Subject Name」 を参照してください。 - SSSD を設定し、DNS service discovery を動的に使用してサーバーを発見するには、「DNS Service Discovery の設定」 を参照してください。
オプションとして、ldap_backup_uri
オプションにおいてもバックアップサーバーを指定します。 ldap_search_base
オプションで、LDAP サーバーの検索ベースを指定します。[domain/LDAP_domain_name] id_provider = ldap auth_provider = ldap ldap_uri = ldap://ldap.example.com
ldap_search_base = dc=example,dc=com
- LDAP サーバーへの安全な接続を確立するための方法を指定します。推奨されているのは、TLS 接続を使用する方法です。そのためには、
ldap_id_use_start_tls
オプションを有効にし、これらの CA 証明書関連のオプションを使用します。ldap_tls_reqcert
は、クライアントがサーバー証明書を要求するかどうか、そしてその証明書でどのような確認が行われるのかを指定します。ldap_tls_cacert
は、証明書を含むファイルを指定します。
[domain/LDAP_domain_name] id_provider = ldap auth_provider = ldap ldap_uri = ldaps://ldap.example.com ldap_search_base = dc=example,dc=com
ldap_id_use_start_tls = true
ldap_tls_reqcert = demand
ldap_tls_cacert = /etc/pki/tls/certs/ca-bundle.crt
注記
SSSD は常に、認証用に暗号化されたチャンネルを使用します。これにより、パスワードが暗号化されずにネットワーク上に送信されることが決してないようにします。ldap_id_use_start_tls = true
により、アイデンティティールックアップ (id
またはgetent
のユーティリティーをベースとするコマンドなど) も暗号化されます。 [sssd]
セクションのdomains
オプションに新しいドメインを追加します。オプションは、SSSD がクエリーするドメインを一覧表示します。例を示します。domains =
LDAP_domain_name
, domain2
その他のリソース
上記の手順は、LDAP プロバイダー向けの基本的なオプションを示しています。詳細については以下を参照してください。
- sssd.conf(5) の man ページでは、 すべてのドメインタイプで利用可能なグローバルオプションを説明しています。
- sssd-ldap(5) の man ページでは、LDAP 固有のオプションを説明しています。
7.3.3. SSSD 向けファイルプロバイダーの設定
files
プロバイダーが、SSSD で利用可能なこれらのファイルからユーザーおよびグループを使用できるようにするには、/etc/passwd
ファイルおよび /etc/groups
ファイルの内容を反映します。これにより、sss
データベースを、/etc/nsswitch.conf
ファイルのユーザーおよびグループに対する最初のソースとして設定できます。
passwd: sss files group: sss files
この設定で、
/etc/sssd/sssd.conf
に /etc/sssd/sssd.conf
プロバイダーが設定されている場合は、Red Hat Enterprise Linux が、最初にユーザーおよびグループのクエリーをすべて SSSD に送信します。SSSD が実行していないか、要求されたエントリーを SSSD が見つけなかった場合、システムが、ローカルファイルのユーザーおよびグループを探すためにフォールバックします。LDAP ディレクトリーなどの中央データベースでほとんどのユーザーとグループを保存していると、この設定により、ユーザーおよびグループの検索速度を向上させます。
前提条件
- SSSD をインストールします。
# yum install sssd
SSSD を設定してファイルドメインを検出
/etc/sssd/sssd.conf
ファイルに次のセクションを追加します。[domain/files] id_provider = files
- 必要に応じて、
/etc/sssd/sssd.conf
ファイルのユーザーおよびグループの検出に対する最初のソースとしてsss
データベースを設定します。passwd: sss files group: sss files
- システムを起動する際に、
sssd
サービスが開始する方法で、システムを設定します。# systemctl enable sssd
sssd
サービスを再起動します。# systemctl restart sssd
その他のリソース
上記の手順は、
files
プロバイダー向けの基本的なオプションを示しています。詳細は以下を参照してください。
- sssd.conf(5) の man ページでは、 すべてのドメインタイプで利用可能なグローバルオプションを説明しています。
- man ページの sssd-files(5) では、
files
プロバイダーに固有のオプションを説明しています。
7.3.4. SSSD 向けプロキシープロバイダーの設定
前提条件
- SSSD をインストールします。
# yum install sssd
SSSD を設定してプロキシードメインを発見
/etc/sssd/sssd.conf
ファイルを開きます。- プロキシープロバイダー用に
[domain]
セクションを作成します。[domain/proxy_name]
- 認証プロバイダーを特定するには、以下を実行します。
auth_provider
オプションをproxy
に設定します。proxy_pam_target
オプションを使用して、PAM サービスを認証プロキシーに指定します。
以下に例を示します。[domain/proxy_name]
auth_provider = proxy
proxy_pam_target = sssdpamproxy
重要
プロキシー PAM スタックにpam_sss.so
が再帰的に 格納されていない ことを確認してください。 - アイデンティティープロバイダーを指定するには、以下を実行します。
id_provider
オプションをproxy
に設定します。proxy_lib_name
オプションを使用して、NSS ライブラリーをアイデンティティープロキシーに指定します。
以下に例を示します。[domain/proxy_name]
id_provider = proxy
proxy_lib_name = nis
[sssd]
セクションのdomains
オプションに新しいドメインを追加します。オプションは、SSSD がクエリーするドメインを一覧表示します。例を示します。domains =
proxy_name
, domain2
その他のリソース
上記の手順は、プロキシープロバイダーの基本的なオプションを示しています。詳細については、sssd.conf(5) の man ページを参照してください。ここでは、すべてのドメインタイプで利用可能なグローバルオプションと、その他のプロキシー関連オプションについて説明しています。
7.3.5. Kerberos 認証プロバイダーの設定
前提条件
- SSSD をインストールします。
# yum install sssd
SSSD の設定による Kerberos ドメインの発見
/etc/sssd/sssd.conf
ファイルを開きます。- SSSD ドメイン向けに
[domain]
セクションを作成[domain/Kerberos_domain_name]
- アイデンティティープロバイダーを指定します。たとえば、LDAP アイデンティティープロバイダーの設定に関する詳細は、「SSSD 向け LDAP ドメインの設定」 を参照してください。指定したアイデンティティープロバイダーで Kerberos のプリンシパル名を利用できない場合、SSSD は username@REALM 形式を使用してプリンシパルを構築します。
- Kerberos 認証プロバイダーの詳細を指定します。
auth_provider
オプションをkrb5
に設定します。[domain/Kerberos_domain_name] id_provider = ldap
auth_provider = krb5
- Kerberos サーバーを指定します。
- サーバーを明示的に定義するには、
krb5_server
オプションを使用します。オプションは、サーバーのホスト名または IP アドレスを受信します。[domain/Kerberos_domain_name] id_provider = ldap auth_provider = krb5
krb5_server = kdc.example.com
- SSSD を設定し、DNS service discovery を動的に使用してサーバーを発見するには、「DNS Service Discovery の設定」 を参照してください。
オプションとして、krb5_backup_server
オプションにおいてもバックアップサーバーを指定します。 - パスワード変更サービスが、
krb5_server
またはkrb5_backup_server
で指定した KDC 上で稼働していない場合、krb5_passwd
オプションを使用してサーバーにサービスが稼働している場所を指定します。[domain/Kerberos_domain_name] id_provider = ldap auth_provider = krb5 krb5_server = kdc.example.com krb5_backup_server = kerberos.example.com
krb5_passwd = kerberos.admin.example.com
krb5_passwd
が使用されていない場合、SSSD はkrb5_server
またはkrb5_backup_server
で指定された KDC を使用します。 krb5_realm
オプションを使用して、Kerberos レルム名を指定します。[domain/Kerberos_domain_name] id_provider = ldap auth_provider = krb5 krb5_server = kerberos.example.com krb5_backup_server = kerberos2.example.com krb5_passwd = kerberos.admin.example.com
krb5_realm = EXAMPLE.COM
[sssd]
セクションのdomains
オプションに新しいドメインを追加します。オプションは、SSSD がクエリーするドメインを一覧表示します。例を示します。domains =
Kerberos_domain_name
, domain2
その他のリソース
上記の手順は、Kerberos プロバイダー向けの基本的なオプションを示しています。詳細については以下を参照してください。
- sssd.conf(5) の man ページでは、 すべてのドメインタイプで利用可能なグローバルオプションを説明しています。
- sssd-krb5(5) の man ページでは、Kerberos 固有のオプションを説明しています。
このページには機械翻訳が使用されている場合があります (詳細はこちら)。