Kerberos は認証時に使用するプロトコルですが、 LDAP は認可と識別を行うためのプロトコルです。両方を組み合わせて使用することもできます。 LDAP に関する詳細は 第5章 「389 Directory Server を利用した LDAP サービス」 を、 Kerberos に関する詳細は 第6章 「Kerberos を利用したネットワーク認証」 をそれぞれお読みください。
YaST では、下記のようなモジュールを利用して、クライアントに対する認証を設定することができます:
識別情報提供サービス (通常は LDAP) とユーザ認証サービス (通常は Kerberos) の 両方を併用して設定を行います。この設定機能は SSSD をベースにした仕組みで、 Active Directory ドメインへの参加を行う場合には最適な選択肢となります。 :
このモジュールについては 7.3.2項 「 で説明しています。 を利用した Active Directory への参加」
Kerberos と LDAP をそれぞれ利用して Active Directory ドメインへの参加を行います。
この設定機能は : winbind
をベースにした仕組みで、
NTLM での認証が必要な Active Directory ドメインに参加する必要がある場合や、フォレストを
跨いだ認証が必要な場合に最適な選択肢となります。
このモジュールについては 7.3.3項 「 で説明しています。 を利用した Active Directory ドメインへの参加」
YaST では、 2 種類のモジュールで SSSD を使用しています。それぞれ
と です。SSSD は System Security Services Daemon の略であり、ネットワーク上離れた場所に存在するディレクトリサービスにアクセスして、ユーザデータの提供や様々な認証方式 (LDAP, Kerberos, Active Directory (AD) など) の提供を受けることができるデーモンです。このデーモンには NSS (Name Service Switch) と PAM (Pluggable Authentication Module) の各インターフェイスも用意されています。
SSSD はユーザデータをローカルにキャッシュ (一時記憶) してデータを提供しています。そのため、実際のディレクトリサービスに対して、一時的にアクセスができない状況に陥った場合も、 SSSD はサービスを続けることができます。
YaST の認証モジュールで設定を行ったあとは、下記のように実行することで、 SSSD が動作しているかどうかを確認することができます:
#
systemctl status sssd
sssd.service - System Security Services Daemon Loaded: loaded (/usr/lib/systemd/system/sssd.service; enabled) Active: active (running) since Thu 2015-10-23 11:03:43 CEST; 5s ago [...]
認証用のバックエンドが利用できなくなってしまっている状態でもログインができるようにするため、 SSSD はキャッシュの有効期限が切れてもキャッシュを使用するようになっています。これはバックエンドが再度利用できるようになるまで動作します。
キャッシュの内容を消去したい場合は、 sss_cache -E
(sss_cache
コマンドは sssd-tools パッケージに含まれています) を実行します。
SSSD キャッシュを削除したい場合は、下記を実行します:
>
sudo
systemctl stop sssd
>
sudo
rm -f /var/lib/sss/db/*
>
sudo
systemctl start sssd