7.2. ユーザーへの証明書の追加
証明書ベースの認証を設定すると、認証に使用される証明書がユーザーの userCertificate
バイナリー属性に格納されている証明書と一致する必要があるようにサーバーを設定できます。この機能を有効にした場合は、影響を受けるユーザーの証明書をディレクトリーエントリーに追加する必要があります。
前提条件
- Directory Server で証明書ベースの認証を有効にした。
- サーバーによって信頼されている認証局 (CA) によって発行されたクライアント証明書がある。
- クライアント証明書は識別符号化規則 (DER) 形式である。
-
クライアント証明書は、サーバーの
/etc/dirsrv/slapd-instance_name/certmap.conf
で設定された要件を満たしている。
手順
証明書が DER 形式でない場合は、変換します。たとえば、証明書を Privacy Enhanced Mail (PEM) から DER に変換するには、次のように入力します。
# openssl x509 -in /home/user_name/certificate.pem -out /home/user_name/certificate.der -outform DER
ユーザーの
userCertificate
属性に証明書を追加します。# ldapmodify -D "cn=Directory Manager" -W -H ldaps://server.example.com -x dn: uid=user_name,ou=People,dc=example,dc=com changetype: modify add: userCertificate userCertificate:< file:///home/user_name/example.der
検証
証明書ベースの認証を使用してユーザーとして認証します。
CA 証明書、ユーザーキー、およびユーザー証明書の対応するパスに、以下の環境変数を設定します。
LDAPTLS_CACERT=/home/user_name/CA.crt LDAPTLS_KEY=/home/user_name/user.key LDAPTLS_CERT=/home/user_name/user.der
または、現在のユーザーの
~/.ldaprc
ファイルでTLS_CACERT
、TLS_KEY
、およびTLS_CERT
パラメーターを設定します。サーバーに接続します。
# ldapwhoami -H ldaps://server.example.com -Y EXTERNAL dn: uid=example,ou=people,dc=example,dc=com
関連情報
-
ldap.conf(5)
man ページのTLS OPTIONS
セクション