J'ai DOVECOT V2.0.11 installé sur un serveur FreeBSD et les recherches de l'utilisateur pour les adresses électroniques entrantes sont échouées, mais les recherches pour les utilisateurs du système réussissent.
Dovecot est configuré pour utiliser les utilisateurs du système, donc mon dovecot.conf a
userdb {
driver = passwd
}
et
passdb {
driver = passwd
}
J'ai activé Auth Déboguable.
Par exemple, j'ai un utilisateur appelé Webmaster et utiliser l'utilisateur DOVERDM pour "webmaster" fonctionne comme suit:
#doveadm user webmaster
userdb: webmaster
system_groups_user: webmaster
uid : 1020
gid : 1020
home : /home/webmaster
Toutefois, en utilisant l'utilisateur DOVERDM à rechercher [email protected] échoue comme suit:
# doveadm user [email protected]
userdb lookup: user [email protected] doesn't exist
Cela entraîne un courrier entrant pour [email protected] pour rebondir avec une erreur "utilisateur inconnu".
Voici l'échec Connecté/Var/Log/Maillog:
Apr 16 20:13:35 www dovecot: auth: passwd([email protected]): unknown user
Voici l'échec connecté /var/log/debug.log:
Apr 16 20:13:35 www dovecot: auth: Debug: master in: USER 1 [email protected] service=doveadm
Apr 16 20:13:35 www dovecot: auth: Debug: passwd([email protected]): lookup
Apr 16 20:13:35 www dovecot: auth: Debug: master out: NOTFOUND 1
Les utilisateurs et leurs annuaires de maison ont été importés à partir d'un autre serveur et les utilisateurs ont été configurés à l'aide de l'outil VIPW. Je suis sûr qu'il y a quelque chose que j'ai manqué à l'importation qui ne "lie" pas l'utilisateur du système avec la recherche Dovecot.
Des idées sur ce que quelque chose peut être?
Edit: Utilisation des conseils de Billthor, j'ai mis à jour DOVECOT.CONF comme suit:
#doveconf -n passdb userdb
passdb {
args = username_format=%n
driver = passwd
}
userdb {
args = username_format=%n
driver = passwd
}
Cependant, maintenant, l'utilisateur DOVERDM échoue de manière différente:
#doveadm user [email protected]
doveadm(root): Error: userdb lookup([email protected]): Disconnected unexpectedly
doveadm(root): Fatal: userdb lookup failed for [email protected]
Et cela ne fonctionne plus pour les utilisateurs sans domaine:
#doveadm user webmaster
doveadm(root): Error: userdb lookup(webmaster): Disconnected unexpectedly
doveadm(root): Fatal: userdb lookup failed for webmaster
Lorsque je reçois les messages ci-dessus, ce qui suit est dans/var/journal/maillog:
Apr 17 17:30:02 www dovecot: auth: Fatal: passdb passwd: Unknown setting: username_format=%u
Apr 17 17:30:02 www dovecot: master: Error: service(auth): command startup failed, throttling
Les Iserids in dovecot à l'aide de PASSDB n'incluent pas le domaine. L'UserID L'utilisateur doit utiliser est la partie locale, pas l'adresse électronique complète.
Les chèques qui passent et échouent fonctionnent comme prévu. Réglage auth_username_format=%n
Avant la définition de mot de passe DB fonctionne. Le domaine n'est pas validé cependant.
J'utilise Ubuntu Server 12.04 et j'ai essayé les solutions ci-dessus. Cependant, j'ai trouvé que le moyen le plus simple et le plus simple était dans 10-auth.conf à définir
auth_username_format = %n
J'utilise PAM pour l'authentification qui est la valeur par défaut dans Ubuntu 12.04.
Je soupçonne que DOVecot 2.1 a cassé cette solution ou a changé le comportement attendu.
J'ai suivi la même erreur d'autorisation à la MertickDB:
userdb {
driver = passwd
}
Lorsqu'un utilisateur local (non virtuel) reçoit un email via ExIM-> LMTP, il inclut le domaine. Définir auth_username_format =% ln réalise la livraison locale, mais il enfreint les livraisons virtuelles. La solution proposée de l'ajout args = USERNAME_FORMAT semble être ignorée:
userdb {
driver = passwd
args = username_format=%n
}
et les journaux incluent un avertissement
Apr 4 11:24:57 moe dovecot: auth: Warning: userdb passwd: Move templates args to override_fields setting
Fait intéressant, à l'aide de PASSWD-File fonctionne, mais Auth est en colère que le fichier PASSWD appartient à la racine.
userdb {
driver = passwd-file
args = username_format=%n /etc/passwd
}
Apr 4 11:26:12 moe dovecot: auth: Error: passwd-file /etc/passwd: User root has invalid UID '0'
Apr 4 11:26:12 moe dovecot: auth-worker(6855): Error: passwd-file /etc/passwd: User root has invalid UID '0'