13.2.12. ドメインの作成: Identity Management(IdM)
Identity Management(IdM または IPA)アイデンティティープロバイダーは、汎用 LDAP プロバイダーの拡張です。LDAP プロバイダーのすべての設定オプションは、IdM プロバイダーと、SSSD が IdM ドメインのクライアントとして機能させ、IdM 機能を拡張することを可能にする追加のパラメーターで利用できます。
Identity Management は、ドメインの ID、認証、アクセス制御ルール、およびパスワードのプロバイダーとして機能します。
*_provider
また、Identity Management には、SELinux ポリシー、自動マウント情報、ホストベースのアクセス制御を管理する独自のドメイン内に設定オプションがあります。IdM ドメインの機能はすべて SSSD 設定に関連付けて、システムユーザーにこれらのセキュリティー関連のポリシーを適用し、キャッシュすることができます。
例13.3 基本的な IdM プロバイダー
LDAP プロバイダーなどの IdM プロバイダーは、ID、認証、アクセス制御などの複数のサービスを提供するように設定できます。
IdM サーバーでは、非常に便利な設定が 2 つあります(必須ではありません)。
- デフォルトの RFC 2307 スキーマではなく、特定の IdM スキーマを使用します。
- クライアントが最初に IdM ドメインに接続するときに、Identity Management ドメインの DNS サーバーをこのクライアントの IP アドレスで更新するように SSSD を設定します。
[sssd] domains = local,example.com ... [domain/example.com] id_provider = ipa ipa_server = ipaserver.example.com ipa_hostname = ipa1.example.com auth_provider = ipa access_provider = ipa chpass_provider = ipa # set which schema to use ldap_schema = ipa # automatically update IdM DNS records ipa_dyndns_update = true
Identity Management は、Linux ドメイン全体でユーザーのセキュリティーポリシーとアイデンティティーを定義して維持します。これには、アクセス制御ポリシー、SELinux ポリシーなどのルールが含まれます。IdM ドメインのこれらの要素の一部は、SSSD を IdM クライアントとして使用して SSSD と直接対話し、これらの機能は
sssd.conf
の IdM ドメインエントリーで管理できます。
ほとんどの設定パラメーターは、IdM が固定スキーマを使用するので、スキーマ要素の設定に関連している(ほとんどのデプロイメントでは関係ありません)、変更する必要はありません。実際、IdM の機能にクライアント側の設定は必要ありません。しかし、動作を微調整すると便利な状況があります。
例13.4 SELinux を使用した IdM プロバイダー
IdM は、システムユーザーの SELinux ユーザーポリシーを定義して、SSSD の SELinux プロバイダーとして機能します。これは、selinux_provider パラメーターで設定されます。プロバイダーは id_provider の値にデフォルト設定されるため、SELinux ルールを サポート するように明示的に設定する必要はありません。ただし、SSSD で IdM プロバイダーの SELinux サポートを明示的に 無効 にするのに便利です。
selinux_provider = ipa
例13.5 ホストベースのアクセス制御のある IdM プロバイダー
IdM はホストベースのアクセス制御を定義し、ユーザーが接続または接続の試行に使用しているホストに基づいて、サービスまたはシステム全体へのアクセスを制限できます。このルールは、アクセスプロバイダーの動作の一部として SSSD によって評価および強制できます。
ホストベースのアクセス制御を有効にするには、Identity Management サーバーが少なくともアクセスプロバイダーである必要があります。
SSSD がホストベースのアクセス制御ルールを評価する方法は 2 つあります。
- SSSD は、ユーザーが IdM リソースに接続するために使用するマシン(ソースホスト)を評価できます。これはデフォルトでは無効になっているため、ルールのターゲットホスト部分のみが評価されます。
- SSSD は、指定した間隔で、キャッシュのホストベースのアクセス制御ルールを更新できます。
以下に例を示します。
access_provider = ipa ipa_hbac_refresh = 120 # check for source machine rules; disabled by default ipa_hbac_support_srchost = true
例13.6 レルム間の Kerberos 信頼を使用したアイデンティティー管理
Identity Management(IdM または IPA)は、Active Directory DNS ドメインと Kerberos レルムとの間で信頼できる関係で設定できます。これにより、Active Directory ユーザーは Linux システムのサービスおよびホストにアクセスできます。
SSSD には、レルム間の信頼で使用される 2 つの設定があります。
- Kerberos チケットに必要なデータを追加するサービス
- サブドメインをサポートする設定
Kerberos チケットデータ
Microsoft は、特権アクセス証明書 または MS-PAC と呼ばれる特別な承認構造を使用します。PAC は、Windows ドメインの他の Windows クライアントおよびサーバーへのエンティティーを識別する方法として Kerberos チケットに組み込まれます。
SSSD には、Kerberos チケットの追加データを生成する特別な PAC サービスがあります。Active Directory ドメインを使用する場合は、Windows ユーザーの PAC データを追加する必要がある場合があります。その場合は、SSSD で pac サービスを有効にします。
[sssd]
services = nss, pam, pac
...
Windows サブドメイン
通常、SSSD のドメインエントリーは単一のアイデンティティープロバイダーに直接対応します。ただし、IdM のレルム間の信頼を使用すると、IdM ドメインは別のドメインを信頼するため、ドメインは相互に透過的になります。SSSD はこの信頼関係に従うことができるので、IdM ドメインが設定されている場合は、SSSD のドメインセクションで設定せずに、SSSD により Windows ドメインが自動的に検索およびサポートされます。
これは、subdomains_provider パラメーターを IdM ドメインセクションに追加することで設定します。これは実際には任意のパラメーターです。サブドメインが検出されると、SSSD は ipa プロバイダータイプを使用するようにデフォルト設定されます。ただし、このパラメーターを使用して、none の値を設定してサブドメインのフェッチを無効にすることもできます。
[domain/IDM] ... subdomains_provider = ipa get_domains_timeout = 300