Sun Java System Directory Server Enterprise Edition 6.2 管理指南

目录服务器计算机:创建目录服务器密钥表

如前面所述,要通过 GSSAPI 验证 Kerberos 用户,目录服务器在 KDC 中必须具有自身的主体。要使验证正常工作,主体信息必须包含在目录服务器计算机上的 Kerberos 密钥表中。用于运行目录服务器的用户帐户必须能够读取包含此信息的文件。

使用以下一系列命令通过正确的属性创建密钥表文件:


$ /usr/sbin/kadmin -p kws/admin
Enter Password: secret
kadmin:  ktadd -k //local/ds/config/ldap.keytab ldap/directory.example.com
Entry for principal ldap/directory.example.com with kvno 3, encryption type
 DES-CBC-CRC added to keytab
 WRFILE:/local/ds/config/ldap.keytab.
kadmin:  quit
$

在此自定义密钥表上更改权限和所有权。使得用于运行目录服务器的用户帐户成为此密钥表的所有者,并且只有该用户可以读取此密钥表:


$ chown unixuser:unixgroup /local/ds/config /ldap.keytab
$ chmod 600 /local/ds/config/ldap.keytab
$

默认情况下,目录服务器会尝试使用文件 /etc/kerb5/krb5.keytab 中的标准 Kerberos 密钥表。但是,允许目录服务器用户读取此文件可能会构成安全威胁,因此为目录服务器创建了自定义密钥表。

将目录服务器配置为使用新的自定义密钥表。可以通过设置 KRB5_KTNAME 环境变量完成此操作。

最后,重新启动目录服务器以使更改生效:


$ KRB5_KTNAME=/etc/krb5/ldap.keytab dsadm restart /local/ds