Mam Dovecot v2.0.11 zainstalowany na serwerze FreeBSD i wyszukiwanie użytkowników dla przychodzących adresów e-mail kończy się niepowodzeniem, ale wyszukiwanie użytkowników systemu zakończyło się powodzeniem.
Dovecot jest skonfigurowany do używania użytkowników systemu, więc mój dovecot.conf ma
userdb {
driver = passwd
}
i
passdb {
driver = passwd
}
Mam włączoną funkcję debugowania autoryzacji.
Na przykład mam użytkownika o nazwie webmaster, a używanie doveadm dla „webmaster” działa w następujący sposób:
#doveadm user webmaster
userdb: webmaster
system_groups_user: webmaster
uid : 1020
gid : 1020
home : /home/webmaster
Jednak użycie użytkownika doveadm do wyszukiwania webmaster@myregisteredname.com kończy się niepowodzeniem w następujący sposób:
# doveadm user webmaster@myregisteredname.com
userdb lookup: user webmaster@myregisteredname.com doesn't exist
Powoduje to, że poczta przychodząca na adres webmaster@myregisteredname.com jest odsyłana z błędem „nieznanego użytkownika”.
Oto błąd zalogowany w / var / log / maillog:
Apr 16 20:13:35 www dovecot: auth: passwd(webmaster@myregisteredname.com): unknown user
Oto błąd zalogowany w /var/log/debug.log:
Apr 16 20:13:35 www dovecot: auth: Debug: master in: USER 1 webmaster@myregisteredname.com service=doveadm
Apr 16 20:13:35 www dovecot: auth: Debug: passwd(webmaster@myregisteredname.com): lookup
Apr 16 20:13:35 www dovecot: auth: Debug: master out: NOTFOUND 1
Użytkownicy i ich katalogi domowe zostały zaimportowane z innego serwera, a użytkowników skonfigurowano za pomocą narzędzia vipw. Jestem pewien, że w imporcie brakuje czegoś, co nie „łączy” użytkownika systemu z wyszukiwaniem dovecot.
Wszelkie pomysły na temat tego, co to może być?
EDYCJA: Korzystając z porady BillThor, zaktualizowałem plik dovecot.conf w następujący sposób:
#doveconf -n passdb userdb
passdb {
args = username_format=%n
driver = passwd
}
userdb {
args = username_format=%n
driver = passwd
}
Jednak teraz użytkownik doveadm nie działa w inny sposób:
#doveadm user webmaster@pantronx.com
doveadm(root): Error: userdb lookup(webmaster@myregisteredname.com): Disconnected unexpectedly
doveadm(root): Fatal: userdb lookup failed for webmaster@myregisteredname.com
I nie działa już dla użytkowników bez domeny:
#doveadm user webmaster
doveadm(root): Error: userdb lookup(webmaster): Disconnected unexpectedly
doveadm(root): Fatal: userdb lookup failed for webmaster
Kiedy otrzymuję powyższe komunikaty, w / var / log / 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