Сломанная аутентификация на Openldap SyncRepl slave.
Настраивая OpenLDAP столкнулся с такой проблемой: создал аккаунт в каталоге, задал пароль, попытался пройти аутентификацию в master сервере - попытка прошла успешно. Попытался аутентифицироваться на slave сервере - неудача.Вываливается ошибка ldap_bind: Invalid credentials (49)
Первым делом проверил репликацию - contextCSN совпадают, репликация работает. ACL списки на master и slave одинаковые, конфигурация slapd тоже одинаковая за исключением секции syncrepl. Долгие поиски привели к странному решению: нужно сделать дамп на master и восстановить его на slave:
master # /etc/init.d/slapd stop
master # slapcat -l backup.ldif
master # /etc/init.d/slapd start
slave # scp root@master:/root/backup.ldif ./
slave # /etc/init.d/slapd stop
slave # rm -rf /var/lib/openldap/thislinux.org/*
slave # cp /var/lib/openldap-data/DB_CONFIG.example /var/lib/openldap-data/thislinux.org/DB_CONFIG
slave # slapadd -l ./backup.ldif
.#################### 100.00% eta none elapsed none fast!
Closing DB...
chown ldap:ldap /var/lib/openldap-data/thislinux.org/ -R
slave # /etc/init.d/slapd start
После чего снова проверяю репликацию - все хорошо. Проверяю аутентификацию на slave - работает. Вроде все починилось, но осадок остался...
На главную "Virtualizing Linux"
Можно полечить на уровне acl, разрешив пользователю от чьего имени работает репликация читать атрибут userPassword
ОтветитьУдалитьaccess to attrs=userPassword
by dn.base="cn=admin,ou=accounts,ou=people,dc=domain,dc=com" read
о Кирилл, привет! Как там у ваc LDAP, всех туда загнали?
УдалитьПривет. Ну %80 на ldap, работает стабильно))
УдалитьЭтот комментарий был удален автором.
ОтветитьУдалить