第7章 SSSD の設定

7.1. SSSD について

7.1.1. SSSD の仕組み

System Security Services Daemon (SSSD) は、リモートディレクトリーおよび認証メカニズムへアクセスするシステムサービスです。このサービスは、ローカルシステム (SSSD client) を外部のバックエンドシステム (provider) に接続します。これにより、SSSD クライアントは、SSSD プロバイダーを使用してアイデンティティーおよび認証リモートサービスへアクセスできます。たとえば、これらのリモートサービスには、LDAP ディレクトリー、Identity Management (IdM) または Active Directory (AD) ドメイン、 もしくは Kerberos レルムなどがあります。
このような目的で SSSD は以下を実行します。
  1. クライアントを ID ストアに接続し、認証情報を取得します。
  2. 取得した認証情報を使用して、クライアントにユーザーと認証情報のローカルキャッシュを作成します。
続いて、ローカルシステムのユーザーは、外部のバックエンドシステムに保存されたユーザーアカウントを使用して認証ができます。
SSSD は、ローカルシステム上にユーザーアカウントを作成しません。代わりに、外部のデータストアのアイデンティティーを使用して、ユーザーがローカルシステムにアクセスできるようにします。
SSSD の仕組み

図7.1 SSSD の仕組み

SSSD は、Name Service Switch (NSS) またはプラグ可能な認証モジュール (PAM) などの、いくつかのシステムサービスにキャッシュを提供することもできます。

7.1.2. SSSD を使用する利点

アイデンティティーおよび認証サーバーへの負荷を軽減
情報をリクエストする際、SSSD クライアントは SSSD に連絡し、SSSD はキャッシュを確認します。SSSD は、キャッシュに情報がない場合だけサーバーに連絡します。
オフライン認証
SSSD はオプションで、リモートサービスから取得したユーザー ID および認証情報のキャッシュを保持します。このセットアップでは、リモートサーバーまたは SSSD クライアントがオフラインであっても、リソースに正常に認証することができます。
認証プロセスの一貫性が改善された単一ユーザーアカウント
SSSD があれば、オフライン認証用に中央アカウントとローカルユーザーアカウントの両方を維持する必要はありません。
多くの場合、リモートユーザーは複数のユーザーアカウントを持っています。たとえば、仮想プライベートネットワーク (VPN) に接続するためには、リモートユーザーはローカルシステム用のアカウントのほか、 VPN システム用のアカウントも持っています。
キャッシングおよびオフライン認証により、リモートユーザーは自身のローカルマシンに対する認証を行うだけでネットワークリソースに接続できます。その後は SSSD がそれらのネットワーク認証情報を維持します。