3
« : 14 Февраль 2016, 11:44:42 »
Настраивал LDAP + Kerberos. Вначале настроил их раздельно: завёл пользователя testuser, id testuser говорит, что есть такой. Добавил principle в Kerberos - могу авторизоваться. Использовался sssd.
Начал интегрировать Kerberos с LDAP, теперь авторизация никак не работает. Вернул настройки, вроде как, к первоначальному варианту, но недавно заведённый testuser4 не видится системой (id testuser4 - нет такого пользователя), а пользователь testuser получил бессмертие - id testuser говорит, что он есть и позволяет авторизоваться, даже если: удалить его из дерева LDAP, остановить slapd и krb5kdc
В чём может быть дело?
UPD: протестировал на SSH модуль pam_ldap.so. Что-то непонятное: очевидно, пользователи LDAP видятся, но: я смог войти под пользователем testuser, но переименовав его в testuser55 уже войти не смог. Переименовал обратно - опять заработало.
В базе Kerberos этого пользователя нет. Кэш sss_cache -U чистил. Торможу sssd - и чертовщина прекращается, но и pam_ldap перестаёт работать (в /var/log/security - Failed password for invalid user testuser, хотя в LDAP он есть).
UPD2: затёр все файлы в /var/lib/sss/db, в конфиге /etc/sssd/sssd.conf указал cache_credentials = False. Призраков больше нет, но всплыла другая проблема - пользователи из LDAP не подтягиваются.
UPD3: отключил/запретил SSL, SSS подтягивает пользователей из LDAP. Но всё равно кэширует! Но теперь, хотя бы, sss_cache -U работает.
Вои и "дыра" нашлась - если LDAP сервер недоступен, SSS будет авторизовывать из своего кэша. Несколько дней точно.
UPD4: Заработало, наверное, после выполнения команды /etc/pki/tls/misc/c_hash /etc/openldap/certs/ca-bundle.crt
Как я понимаю, создалась symlink на ca-bundle.crt. Вопрос - после перезагрузки оно останется, или необходимо добавить команду в автозагрузку?