7.3. SSSD の ID および認証プロバイダーの設定
7.3.1. SSSD の ID プロバイダーおよび認証プロバイダーの概要
SSSD ドメイン。ID プロバイダーおよび認証プロバイダー
ID および認証プロバイダー は、SSSD 設定ファイルで ドメイン として設定されます。1 つのドメインを以下のように使用することができます。
- アイデンティティープロバイダー (ユーザー情報用)
- 認証プロバイダー (認証要求用)
- アクセス制御プロバイダー (承認要求用)
- (対応するすべての操作が単一のサーバー内で実行する場合の) これらのプロバイダーの組み合わせ
SSSD に複数のドメインを設定できます。少なくとも 1 つのドメインを設定する必要があります。設定しないと、SSSD は起動しません。
/etc/sssd/sssd.conf
ファイルの access_provider
オプションは、ドメインに使用されるアクセス制御プロバイダーを設定します。デフォルトでは、オプションは を 許可
し、常にすべてのアクセスを許可します。詳細は sssd.conf(5) の man ページを参照してください。
プロキシープロバイダー
プロキシープロバイダーは、SSSD と、SSSD が使用できないリソースとの間の中間リレーとして機能します。プロキシープロバイダーを使用する場合、SSSD はプロキシーサービスに接続し、プロキシーは指定されたライブラリーを読み込みます。
プロキシープロバイダーを使用して、SSSD を以下を使用するように設定できます。
- 指紋スキャナーなどの別の認証方法
- NIS などのレガシーシステム
/etc/passwd
およびリモート認証で定義されたローカルシステムアカウント
ID プロバイダーおよび認証プロバイダーの利用可能な組み合わせ
ID プロバイダー | 認証プロバイダー |
---|---|
Identity Management [a] | Identity Management [a] |
Active Directory [a] | Active Directory [a] |
LDAP | LDAP |
LDAP | Kerberos |
proxy | proxy |
proxy | LDAP |
proxy | Kerberos |
[a]
LDAP プロバイダータイプの拡張
|
このガイドでは、すべてのプロバイダータイプについて説明しているわけではないことに注意してください。詳細情報は、以下の追加リソースを参照してください。
- Identity Management に SSSD クライアントを設定するには、Red Hat は
ipa-client-install
ユーティリティーを使用することを推奨します。『Linux Domain Identity, Authentication, and Policy Guide』のInstalling and Uninstalling Identity Management Clients 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
LDAP ドメインを検出するように SSSD を設定
/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 サーバーを指定します。以下のいずれかを選択します。
- サーバーを明示的に定義するには、
ldap_uri
オプションでサーバーの 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を参照してください。 - DNS サービス検出を使用してサーバーを動的に検出するように SSSD を設定するには、「DNS サービスディスカバリーの設定」 を参照してください。
必要に応じて、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 = ldap://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 ルックアップ(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
プロバイダーは、/etc/passwd
および /etc/groups
ファイルの内容をミラーリングし、SSSD でこれらのファイルからのユーザーおよびグループを利用できるようにします。これにより、sss データベースを、/etc/nsswitch.conf
ファイルのユーザーおよびグループの最初のソースとして設定できます。
passwd: sss files group: sss files
この設定では、
files
プロバイダーが /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
- 必要に応じて、sss データベースを、
/etc/sssd/sssd.conf
ファイルでユーザーおよびグループの検索の最初のソースとして設定します。passwd: sss files group: sss files
- システムの起動時に
sssd
サービスが起動する方法でシステムを設定します。# systemctl enable sssd
sssd
サービスを再起動します。# systemctl restart sssd
関連情報
上記の手順では、
files
プロバイダーの基本オプションを示しています。詳細は、以下を参照してください。
- sssd.conf(5) の man ページ。ここでは、すべてのタイプのドメインで利用可能なグローバルオプションを説明します。
- sssd-files(5) の man ページ。これは、
files
プロバイダーに固有のオプションを説明します。
7.3.4. SSSD のプロキシープロバイダーの設定
前提条件
- SSSD をインストールします。
# yum install sssd
プロキシードメインを検出するように SSSD を設定
/etc/sssd/sssd.conf
ファイルを開きます。- プロキシープロバイダーの
[domain]
セクションを作成します。[domain/proxy_name]
- 認証プロバイダーを指定するには、以下を実行します。
auth_provider
オプションをプロキシー
に設定します。proxy_pam_target
オプションを使用して、認証プロキシーとして PAM サービスを指定します。
以下に例を示します。[domain/proxy_name]
auth_provider = proxy
proxy_pam_target = sssdpamproxy
重要プロキシー PAM スタックにpam_sss.so
が再帰的に含まれて いない ことを確認します。 - アイデンティティープロバイダーを指定するには、以下を実行します。
id_provider
オプションをプロキシー
に設定します。- NSS ライブラリーを ID プロキシーとして指定するには、
proxy_lib_name
オプションを使用します。
以下に例を示します。[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
Kerberos ドメインを検出するように SSSD を設定
/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
- DNS サービス検出を使用してサーバーを動的に検出するように SSSD を設定するには、「DNS サービスディスカバリーの設定」 を参照してください。
必要に応じて、krb5_backup_
server オプションでバックアップサーバーを指定します。 - krb5_server または
krb5_
オプションを使用して、サービスが実行しているサーバーを指定します。backup_server
で指定された KDC で Change Password サービスが実行されていない場合は、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 固有のオプションを説明します。