Добрый день.Прошу помочь в поиске информации. Хочу разобраться как работает Kerberos, LDAP и PAM в этой связке на Linux сервер/клиент по ssh. Те статьи которые нашел никак не раскрывают картину, либо относятся к какому-то уже готовому продукту типа астры. Мне удалось запустить kdc и зайти в систему-клиент с помощью учетки настроенной в kdc на сервере. Но тепреь у меня появилось еще больше вопросов. Как оказалось на клиент по ssh зайти могу только если эта учетка уже есть на клиенте, заранее создана, если она не создана на клиенте локально, то зайти нельзя, в логах ругается, что мол нет uid/guid. У учетки которая есть локально появляется два выбора пароля - можно ввести локальный, а можно от кербероса. Но я не знаю как сделать так, чтобы можно было контролировать создание удаление учеток. Чтобы home был у всех свой локальный безо всяких samba. Что-бы Guid/Uid указывал я при создании как админ, а не автоматом как захотелось системе. Чтобы требовало смену пароля у пользователя. Я думаю, что это может сделать LDAP, но не нашел еще норм статьи разжовывающей, как оно работает и надо ли его вообще прикручивать к kerberos. Еще не понял как правильно и безопасно организовать вход в систему-клиент и локальных учеток и kerberos через PAM. И в дальнейшем закрыть вход локальных, либо оставить только специальный учетки для входа локально, а всем остальным разрешить вход только через kerberos пароль. Одни вопросы, а ответов пока нет. realm - может ли быть любым словом или обязательно быть доменом? Как сделать дублирование kerberos на случай падения первого узла? итд. Прошу помочь.
vi /var/lib/kerberos/krb5kdc/kdc.conf
[kdcdefaults]
kdc_ports = 750,88
default_realm = OAO.SSS
[realms]
OAO.SSS = {
database_name = /var/lib/kerberos/krb5kdc/principal
admin_keytab = FILE:/var/lib/kerberos/krb5kdc/kadm5.keytab
acl_file = /var/lib/kerberos/krb5kdc/kadm5.acl
dict_file = /var/lib/kerberos/krb5kdc/kadm5.dict
key_stash_file = /var/lib/kerberos/krb5kdc/.k5.OAO.SSS
kdc_ports = 750,88
max_life = 10h 0m 0s
max_renewable_life = 7d 0h 0m 0s
}
[logging]
kdc = FILE:/var/log/krb5/krb5kdc.log
admin_server = FILE:/var/log/krb5/kadmind.log
vi /etc/krb5.conf
[libdefaults]
default_realm = OAO.SSS
default_ccache_name = FILE:/tmp/krb5cc_%{uid}
[realms]
OAO.SSS = {
kdc = kvm-kdc01.OAO.SSS
}
[domain_realm]
.oao.sss = OAO.SSS
oao.sss = OAO.SSS
[logging]
kdc = FILE:/var/log/krb5/krb5kdc.log
admin_server = FILE:/var/log/krb5/kadmind.log
default = SYSLOG:NOTICE:DAEMON