В чем ошибка смены пароля в roundcube?
Добрый день! Имеется связка Openldap + dovecot + postfix + roundcube на Centos7. Авторизацию dovecot + postfix + roundcube я все настроил через Openldap. Я без проблем логинюсь в roundcube, аутлук, почта отправляется и приходит. Но вот встала задача сделать так чтобы производилась смена пароля в roundcube. Попробовал сменить пароль в текущей конфигурации получил ошибку «Не могу сохранить новый пароль. Ошибка соединения.»
И дальше начались пляски с бубном.
Первое что пришло в голову это отсутствие прав записи у учетных записей служб в опенлдап, добавил возможность записывать и видеть пароли — резутат тот же(
Менял тип шифрования пароля через «phpldapadmin»,
менял значения в файле (/usr/share/roundcubemail/plugins/password/config.inc.php ) "$config['password_ldap_encodage'] = 'ssha';" (было и clear и md5 и crypt),
пробовал добавлять «default_pass_scheme = CRYPT» в файл "/etc/dovecot/dovecot-ldap.conf.ext"
пробовал добавлять «cram-md5» в файле "/etc/dovecot/conf.d/10-auth.conf" в строке «auth_mechanisms = plain login», но тогда авторизация ломается, тк пытается авторизовываться через cram-md5.
В логах тоже ничего полезного не пишут (смотрел /var/log/maillog)
Помогите разобраться в чем проблема?!
немного конфигов
подключение довкот /etc/dovecot/dovecot-ldap.conf.ext
hosts = server.com:389 auth_bind = yes dn = uid=dovecot,ou=services,dc=server,dc=com dnpass = pass ldap_version = 3 base = dc=server,dc=com deref = never scope = subtree user_attrs = mailHomeDirectory=home,uidNumber=uid,gidNumber=gid user_filter = (&(objectClass=PostfixBookMailAccount)(mail=%u)) pass_attrs = mail=user,userPassword=password pass_filter = (&(objectClass=PostfixBookMailAccount)(mail=%u))
/usr/share/roundcubemail/plugins/password/config.inc.php
$config['password_driver'] = 'ldap'; $config['password_confirm_current'] = true; $config['password_minimum_length'] = 6; $config['password_require_nonalpha'] = false; $config['password_log'] = false; $config['password_login_exceptions'] = null; $config['password_hosts'] = null; $config['password_force_save'] = false; $config['password_force_new_user'] = false; $config['password_db_dsn'] = ''; $config['password_query'] = 'SELECT update_passwd(%c, %u)'; $config['password_crypt_hash'] = 'md5'; $config['password_idn_ascii'] = false; $config['password_dovecotpw_method'] = ''; $config['password_dovecotpw_with_method'] = false; $config['password_hash_algorithm'] = 'sha1'; $config['password_hash_base64'] = false; $config['password_blowfish_cost'] = 12; $config['password_pop_host'] = 'localhost'; $config['password_pop_port'] = 106; $config['password_saslpasswd_args'] = ''; $config['password_ldap_host'] = 'server.com'; $config['password_ldap_port'] = '389'; $config['password_ldap_starttls'] = false; $config['password_ldap_version'] = '3'; $config['password_ldap_basedn'] = 'dc=server,dc=com'; $config['password_ldap_method'] = 'user'; $config['password_ldap_adminDN'] = null; $config['password_ldap_adminPW'] = null; $config['password_ldap_userDN_mask'] = 'mail=%login'; $config['password_ldap_searchDN'] = 'uid=roundcube,ou=services,dc=server,dc=com'; $config['password_ldap_searchPW'] = 'pass'; $config['password_ldap_search_base'] = 'dc=server,dc=com'; $config['password_ldap_search_filter'] = '(mail=%login)'; $config['password_ldap_encodage'] = 'crypt'; $config['password_ldap_pwattr'] = 'userPassword'; $config['password_ldap_force_replace'] = true; $config['password_ldap_lchattr'] = 'shadowLastChange';
запись в лдап
Запись 1: cn=Олег Михайлов,ou=auto LLC,dc=server,dc=com dn:: cn=Олег Михайлов,ou=auto LLC,dc=server,dc=com cn:: Олег Михайлов givenname:: Олег mail: o.mihailov@server.com objectclass: inetOrgPerson objectclass: top objectclass: PostfixBookMailAccount sn:: Михайлов userpassword: {SSHA}iLzSGGk7PALysN+Ax+fAXxN6U2agQDje
И дальше начались пляски с бубном.
Первое что пришло в голову это отсутствие прав записи у учетных записей служб в опенлдап, добавил возможность записывать и видеть пароли — резутат тот же(
Менял тип шифрования пароля через «phpldapadmin»,
менял значения в файле (/usr/share/roundcubemail/plugins/password/config.inc.php ) "$config['password_ldap_encodage'] = 'ssha';" (было и clear и md5 и crypt),
пробовал добавлять «default_pass_scheme = CRYPT» в файл "/etc/dovecot/dovecot-ldap.conf.ext"
пробовал добавлять «cram-md5» в файле "/etc/dovecot/conf.d/10-auth.conf" в строке «auth_mechanisms = plain login», но тогда авторизация ломается, тк пытается авторизовываться через cram-md5.
В логах тоже ничего полезного не пишут (смотрел /var/log/maillog)
Помогите разобраться в чем проблема?!
немного конфигов
подключение довкот /etc/dovecot/dovecot-ldap.conf.ext
hosts = server.com:389 auth_bind = yes dn = uid=dovecot,ou=services,dc=server,dc=com dnpass = pass ldap_version = 3 base = dc=server,dc=com deref = never scope = subtree user_attrs = mailHomeDirectory=home,uidNumber=uid,gidNumber=gid user_filter = (&(objectClass=PostfixBookMailAccount)(mail=%u)) pass_attrs = mail=user,userPassword=password pass_filter = (&(objectClass=PostfixBookMailAccount)(mail=%u))
/usr/share/roundcubemail/plugins/password/config.inc.php
$config['password_driver'] = 'ldap'; $config['password_confirm_current'] = true; $config['password_minimum_length'] = 6; $config['password_require_nonalpha'] = false; $config['password_log'] = false; $config['password_login_exceptions'] = null; $config['password_hosts'] = null; $config['password_force_save'] = false; $config['password_force_new_user'] = false; $config['password_db_dsn'] = ''; $config['password_query'] = 'SELECT update_passwd(%c, %u)'; $config['password_crypt_hash'] = 'md5'; $config['password_idn_ascii'] = false; $config['password_dovecotpw_method'] = ''; $config['password_dovecotpw_with_method'] = false; $config['password_hash_algorithm'] = 'sha1'; $config['password_hash_base64'] = false; $config['password_blowfish_cost'] = 12; $config['password_pop_host'] = 'localhost'; $config['password_pop_port'] = 106; $config['password_saslpasswd_args'] = ''; $config['password_ldap_host'] = 'server.com'; $config['password_ldap_port'] = '389'; $config['password_ldap_starttls'] = false; $config['password_ldap_version'] = '3'; $config['password_ldap_basedn'] = 'dc=server,dc=com'; $config['password_ldap_method'] = 'user'; $config['password_ldap_adminDN'] = null; $config['password_ldap_adminPW'] = null; $config['password_ldap_userDN_mask'] = 'mail=%login'; $config['password_ldap_searchDN'] = 'uid=roundcube,ou=services,dc=server,dc=com'; $config['password_ldap_searchPW'] = 'pass'; $config['password_ldap_search_base'] = 'dc=server,dc=com'; $config['password_ldap_search_filter'] = '(mail=%login)'; $config['password_ldap_encodage'] = 'crypt'; $config['password_ldap_pwattr'] = 'userPassword'; $config['password_ldap_force_replace'] = true; $config['password_ldap_lchattr'] = 'shadowLastChange';
запись в лдап
Запись 1: cn=Олег Михайлов,ou=auto LLC,dc=server,dc=com dn:: cn=Олег Михайлов,ou=auto LLC,dc=server,dc=com cn:: Олег Михайлов givenname:: Олег mail: o.mihailov@server.com objectclass: inetOrgPerson objectclass: top objectclass: PostfixBookMailAccount sn:: Михайлов userpassword: {SSHA}iLzSGGk7PALysN+Ax+fAXxN6U2agQDje
Похожие публикации
Нет комментариев