diff --git a/target/dovecot/dovecot-ldap.conf.ext b/target/dovecot/dovecot-ldap.conf.ext index aa4e10cc..b8ccf1ac 100644 --- a/target/dovecot/dovecot-ldap.conf.ext +++ b/target/dovecot/dovecot-ldap.conf.ext @@ -5,6 +5,6 @@ dnpass = admin hosts = mail.domain.com ldap_version = 3 pass_attrs = uniqueIdentifier=user,userPassword=password -pass_filter = (&(objectClass=PostfixBookMailAccount)(uniqueIdentifier=%n)) +pass_filter = (&(objectClass=PostfixBookMailAccount)(|(uniqueIdentifier=%n)(mail=%u))) user_attrs = mailHomeDirectory=home,mailUidNumber=uid,mailGidNumber=gid,mailStorageDirectory=mail -user_filter = (&(objectClass=PostfixBookMailAccount)(uniqueIdentifier=%n)) +user_filter = (&(objectClass=PostfixBookMailAccount)(|(uniqueIdentifier=%n)(mail=%u))) diff --git a/target/start-mailserver.sh b/target/start-mailserver.sh index 56a7ac6c..4175cf14 100644 --- a/target/start-mailserver.sh +++ b/target/start-mailserver.sh @@ -644,7 +644,7 @@ function _setup_saslauthd() { [ -z "$SASLAUTHD_MECHANISMS" ] && SASLAUTHD_MECHANISMS=pam [ "$SASLAUTHD_MECHANISMS" = ldap -a -z "$SASLAUTHD_LDAP_SEARCH_BASE" ] && SASLAUTHD_MECHANISMS=pam [ -z "$SASLAUTHD_LDAP_SERVER" ] && SASLAUTHD_LDAP_SERVER=localhost - [ -z "$SASLAUTHD_LDAP_FILTER" ] && SASLAUTHD_LDAP_FILTER='(&(uniqueIdentifier=%u)(mailEnabled=TRUE))' + [ -z "$SASLAUTHD_LDAP_FILTER" ] && SASLAUTHD_LDAP_FILTER='(&(|(uniqueIdentifier=%n)(mail=%u))(mailEnabled=TRUE))' ([ -z "$SASLAUTHD_LDAP_SSL" ] || [ $SASLAUTHD_LDAP_SSL == 0 ]) && SASLAUTHD_LDAP_PROTO='ldap://' || SASLAUTHD_LDAP_PROTO='ldaps://' if [ ! -f /etc/saslauthd.conf ]; then