У нас есть рабочая структура для нашего хадопа, в которой openldap использовался для аутентификации со структурой ниже, вместе с ranger и knox.
корень openldap: -
dn: dc=abchadoop,dc=com,dc=za
Поддерево внутри openldap, как показано ниже: -
dn: ou=people,dc=abchadoop,dc=com,dc=za
dn: ou=groups,dc=abchadoop,dc=com,dc=za
dn: ou=services,dc=abchadoop,dc=com,dc=za
dn: cn=ud_devtest,ou=people,dc=abchadoop,dc=com,dc=za
dn: cn=hcat,ou=services,dc=abchadoop,dc=com,dc=za
dn: cn=hive_dev,ou=groups,dc=abchadoop,dc=com,dc=za
Теперь мы интегрировали Kerberos с openldap в качестве бэкэнда (того же сервера) в качестве бэкэнда, и затем картина стала грязной из-за множества недоразумений. После добавления kerberos новые записи в openldap выглядят следующим образом: -
openldap root:-
dn: dc=abchadoop,dc=com,dc=za
Subtree inside openldap like below:-
dn: ou=people,dc=abchadoop,dc=com,dc=za
dn: ou=groups,dc=abchadoop,dc=com,dc=za
dn: ou=services,dc=abchadoop,dc=com,dc=za
dn: cn=ud_devtest,ou=people,dc=abchadoop,dc=com,dc=za
dn: cn=hcat,ou=services,dc=abchadoop,dc=com,dc=za
dn: cn=hive_dev,ou=groups,dc=abchadoop,dc=com,dc=za
kerberos:-
dn: cn=kerberos,dc=abchadoop,dc=com,dc=za
dn: cn=ABCHDP.COM,cn=kerberos,dc=abchadoop,dc=com,dc=za
--
Hadoop kerberos principals
--
dn: krbPrincipalName=ud_dvjones@ABCHDP.COM,cn=ABCHDP.COM,cn=kerberos,dc=abchadoop,dc=com,dc=za
dn: krbPrincipalName=ud_devtest@ABCHDP.COM,cn=ABCHDP.COM,cn=kerberos,dc=abchadoop,dc=com,dc=za
теперь у меня есть еще некоторые замешательства: -
У меня есть имя области как ABCHDP.COM вместо abchadoop.com.sa, как в большинстве примеров использования Интернета (example.com как имя домена и EXAMPLE.COM как имя области), обязательно иметь то же самое, что и для корня openldap а керберос царство ??
ud_devtest уже существовал с паролем 1, когда был создан openldap, и после установки Kerberos мы создали еще один принципал с тем же именем, но здесь мы указали другой пароль (пароль 2), есть ли способ синхронизировать пароль ??
Забегая вперед, где мне создавать пользователей, ldap или kerberos?
Может кто-нибудь помочь мне понять.
Существует соглашение, что область Kerberos будет такой же, как и домен, но с заглавной буквы. Это не требование, но помогает избежать путаницы.
У принципала Kerberos может быть только один пароль.
Ldap dn может иметь несколько записей userPassword, каждая из которых указывает на другого принципала kerberos для сквозной аутентификации SASL. Однако я бы не рекомендовал это делать.
Если вы имеете в виду, что атрибут userPassword ldap dn в настоящее время не установлен для sasl passthough, например userPassword: {SASL}ud_devtest@ABCHDP.COM
, тогда это следует изменить. Убедитесь, что ваш saslauthd
сначала настроен правильно.
В дальнейшем вы должны создать пользователя, который является одновременно ldap и kerberos. Вы можете хранить их в двух отдельных DNS или комбинировать. Какой из вариантов вам больше всего подходит. Комбинирование, вероятно, будет использовать kdb5_ldap_util modify -subtress ou=people,dc=abchadoop,dc=com,dc=za -r ABCHDP.COM
и objectClass: krbPrincipalAux
.