SSSDのカスタマイズ
デフォルトでは、sssdプロファイルで使用されるSSSDサービスは、システム・アクセスおよび認証を管理するためにPluggable Authentication Modules (PAM)およびネーム・サービス・スイッチ(NSS)を使用します。 プロファイルの追加機能を有効にしてSSSD認証をカスタマイズする場合は、有効にした機能にSSSDを構成する必要もあります。
/etc/sssd/conf.dディレクトリ内に構成ファイルを作成してSSSD構成をカスタマイズします。 各構成ファイルには、.confサフィクスが必要です。
構成ファイルは、ini形式の構文を使用します。 ファイルは、大カッコで囲まれたセクションに分割されます。 各セクションには、key = valueエントリとしてリストされるパラメータが含まれます。
次の例は、Kerberosを使用するLDAPプロバイダに対して認証するようにSSSDを構成する方法を示しています:
-
機能の構成ファイルを作成し、
/etc/sssd/conf.d(/etc/sssd/conf.d/00-ldap.confなど)に格納します -
適切なパラメータ定義を使用して
/etc/sssd/conf.d/00-ldap.confを構成します。たとえば:[sssd] config_file_version = 2 domains = LDAP services = nss, pam [domain/LDAP] id_provider = ldap ldap_uri = ldap://ldap.mydom.com ldap_search_base = dc=mydom,dc=com auth_provider = krb5 krb5_server = krbsvr.mydom.com krb5_realm = MYDOM.COM cache_credentials = true min_id = 5000 max_id = 25000 enumerate = false [nss] filter_groups = root filter_users = root reconnection_retries = 3 entry_cache_timeout = 300 [pam] reconnection_retries = 3 offline_credentials_expiration = 2 offline_failed_login_attempts = 3 offline_failed_login_delay = 5-
[sssd] -
SSSD監視オプション、ドメインおよびサービスの構成設定が含まれています。 SSSD監視サービスは、SSSDで提供されるサービスを管理します。
-
servicesは、SSSDが動作するサービスを定義します。これには、ネーム・サービス・スイッチの場合はnss、Pluggable Authentication Modulesの場合はpamが含まれます。 -
domainsエントリは、認証ドメインを定義するセクションの名前を指定します。
-
-
[domain/LDAP] -
Kerberos認証を使用するLDAPアイデンティティ・プロバイダのドメインを定義します。 各ドメインでは、ユーザー情報の格納場所、認証方法および構成オプションを定義します。 SSSDは、LDAPアイデンティティ・プロバイダ(OpenLDAP、Red Hat Directory Server、IPA、Microsoft Active Directoryなど)とともに使用でき、システム固有のLDAPまたはKerberos認証のいずれかを使用できます。
-
id_providerでは、プロバイダのタイプ(この例ではLDAP)を指定します。 -
ldap_uriは、SSSDが接続できる優先度の順に、LDAPサーバーのユニバーサル・リソース識別子(URI)のカンマ区切りリストを指定します。 -
ldap_search_baseは、SSSDが相対識別名(RDN)で共通名(cn)などのLDAPユーザー操作を実行するときに使用するベース識別名(dn)を指定します。 -
auth_providerエントリでは、認証プロバイダ(この例ではKerberos)を指定します。 -
krb5_serverは、SSSDが接続できる優先度の順に、Kerberosサーバーのカンマ区切りリストを指定します。 -
krb5_realmでは、Kerberosレルムを指定します。 -
cache_credentialsは、SSSDがチケット、セッション・キー、その他の識別情報などのユーザー資格証明をキャッシュしてオフライン認証およびシングル・サインオンを有効にするかどうかを指定します。ノート:
SSSDがLDAPサーバーでKerberos認証を使用できるようにするには、Simple Authentication and Security Layer (SASL)とGeneric Security Services API (GSSAPI)の両方を使用するようにLDAPサーバーを構成する必要があります。 OpenLDAPに対するSASLおよびGSSAPIの構成の詳細は、https://www.openldap.org/doc/admin24/sasl.htmlを参照してください。
-
min_idおよびmax_idでは、ユーザーおよびグループIDの値に対する上限と下限を指定します。 -
enumerateでは、SSSDがプロバイダで使用可能なユーザーおよびグループの完全なリストをキャッシュするかどうかを指定します。 ドメインに含まれるユーザーまたはグループが比較的少数である場合を除き、Falseに設定することをお薦めします。
-
-
[nss] -
SSSDデータベース(SSS)とNSSを統合するネーム・サービス・スイッチ(NSS)モジュールを構成します。
-
filter_usersおよびfilter_groupsのために、NSSはSSSから取得される指定されたユーザーおよびグループに関する情報を抽出できません。 -
reconnection_retriesは、データ・プロバイダが失敗した場合にSSSDが再接続を試行する回数を指定します。 -
enum_cache_timeoutは、SSSDがユーザー情報リクエストをキャッシュする秒数を指定します。
-
-
[pam] -
SSSDとPAMを統合するPAMモジュールを構成します。
-
offline_credentials_expirationは、認証プロバイダがオフラインの場合にキャッシュされたログインを有効にする日数を指定します。 -
offline_failed_login_attemptsは、認証プロバイダがオフラインの場合に許可される失敗したサインインの数を指定します。 -
offline_failed_login_delayは、ユーザーが再度サインインを試行できるようになるまでの、失敗したサインインの最大数の後の分数を指定します。
-
-
-
/etc/sssd/conf.d/00-ldap.confのモードを0600に変更します:sudo chmod 0600 /etc/sssd/conf.d/00-ldap.conf -
sssdサービスが実行されていることを確認します:sudo systemctl status sssd必要に応じて、
sssdサービスを起動して有効にします:sudo systemctl enable --now sssd -
sssdプロファイルを選択します。sudo authselect select sssd
SSSDの詳細は、READMEファイルを参照してください: https://github.com/SSSD/sssd。
SSSD用に提供されているマニュアル・ページは包括的で、使用可能なオプションに関する詳細情報を提供します。 これには、sssd(8), sssd.conf(5), sssd-ldap(5), sssd-krb5(5)およびsssd-ipa(5)が含まれます。