Я пытаюсь запустить kerberos с серверной частью ldap на Centos 6.3 После создания Realm с помощью:
kdb5_ldap_util -D "cn=admin,dc=example,dc=com" create -sscope sub -sf /var/kerberos/krb5kdc/example_stash.keyfile -r EXAMPLE.COM -s
Я пытаюсь бежать kdc
и получил:
Starting Kerberos 5 KDC: krb5kdc: cannot initialize realm EXAMPLE.COM - see log file for details
Журналы показывают такую ошибку:
krb5kdc: Error reading password from stash: Bind DN entry missing in stash file - while initializing database for realm EXAMPLE.COM
krb5.conf
файл:
[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log
[libdefaults]
default_realm = EXAMPLE.COM
dns_lookup_realm = false
dns_lookup_kdc = false
ticket_lifetime = 24h
renew_lifetime = 7d
forwardable = true
[realms]
EXAMPLE.COM = {
kdc = kerberos.example.com
admin_server = kerberos.example.com
master_kdc = kerberos.example.com
default_domain = example.com
database_module = ldap_example
}
[domain_realm]
.example.com = EXAMPLE.COM
example.com = EXAMPLE.COM
kerberos.example.com = EXAMPLE.COM
[appdefaults]
pam = {
debug = true
ticket_lifetime = 36000
renew_lifetime = 36000
forwardable = true
krb4_convert = false
}
[dbmodules]
ldap_example = {
db_library = kldap
## DN for the global Kerberos container entry
ldap_kerberos_container_dn = ou=kerberos,ou=Services,dc=example,dc=com
ldap_kdc_dn = cn=krbadmin,ou=Services,dc=example,dc=com ## this object needs to have READ rights on the realm container, principal container and realm sub-trees
ldap_kadmind_dn = "cn=krbadmin,ou=Services,dc=example,dc=com" ## this object needs to have READ and WRITE rights on the realm container, principal container and realm sub-trees
ldap_service_password_file = /var/kerberos/krb5kdc/example_stash.keyfile
ldap_servers = ldap://kerberos.example.com
ldap_conns_per_server = 5
}
Обе ou=kerberos,ou=Services,dc=example,dc=com
и cn=krbadmin,ou=Services,dc=example,dc=com
существуют. Царство находится под ou=kerberos
. kdb5_ldap_util
могу перечислить это:
kdb5_ldap_util -D cn=admin,dc=example,dc=com list -r EXAMPLE.COM
Password for "cn=admin,dc=example,dc=com":
EXAMPLE.COM
Файл хранилища создан только что, его не было до создания области. Я уже пытался спросить дядю, но безуспешно.
Файл тайника, созданный вместе с областью, бесполезен при использовании серверной части OpenLDAP, так как он не содержит DN. Похоже на отдельный файл тайника.
Вам нужно создать файл тайника с:
kdb5_ldap_util -D "cn=admin,dc=example,dc=com" stashsrvpw -f /var/kerberos/krb5kdc/example_stash.keyfile "cn=krbadmin,ou=Services,dc=example,dc=com"
Другое дело, что krb5.conf не поддерживает встроенные комментарии.