Dovecot: autorizzazioni di socket di autorizzazioni

Dalla mia installazione di postfix sto eseguendo consegnare come nessuno: nessuno e non può connettersi al soccorso autore-lavoratore di colombaio. Quello è il mio wherecot config:

# 2.0.13: /etc/wherecot/wherecot.conf # OS: Linux 2.6.32-lts x86_64 auth_mechanisms = plain login auth_username_format = %Lu disable_plaintext_auth = no first_valid_gid = 65534 mail_location = maildir:/var/spool/vmail/%d/%u/ mail_privileged_group = postfix passdb { args = /etc/wherecot/wherecot-sql.conf driver = sql } protocols = imap pop3 service auth { user = nobody unix_listener login/auth-master { mode = 0666 } unix_listener login/auth { group = postfix user = postfix mode = 0660 } } ssl = no userdb { args = /etc/wherecot/wherecot-sql.conf driver = sql } verbose_proctitle = yes protocol imap { imap_client_workarounds = delay-newmail tb-extra-mailbox-sep } protocol pop3 { pop3_client_workarounds = outlook-no-nuls oe-ns-eoh pop3_uidl_format = %08Xu%08Xv } protocol lda { postmaster_address = postmaster@mydomain.com sendmail_path = /usr/sbin/sendmail } 

Quello che ho nei tronchi:

 Aug 5 10:10:21 localhost wherecot: lda: Error: userdb lookup: connect(/var/run/wherecot/auth-userdb) failed: Permission denied (euid=99(nobody) egid=99(nobody) missing +r perm: /var/run/wherecot/auth-userdb, euid is not dir owner) Aug 5 10:10:21 localhost wherecot: lda: Fatal: Internal error occurred. Refer to server log for more information. 

Ho cercato di fare

 unix_listener auth-worker { user = nobody } 

nella sezione service auth , ma wherecot non riesce a funzionare con questo messaggio: whereconf: Fatal: Error in configuration file /etc/wherecot/wherecot.conf: duplicate listener: /var/run/wherecot/auth-worker

Come posso risolvere questo problema?

Grazie.

2 Solutions collect form web for “Dovecot: autorizzazioni di socket di autorizzazioni”

Il problema con le autorizzazioni auth-userdb e la properties; è risolto in questo modo:

 service auth { unix_listener auth-userdb { mode = 0660 # socket access mode user = nobody # set uid to nobody group = nobody # set gid to nobody } } 

Il problema con le autorizzazioni autorizzate e la properties; era molto più complicato e ho scoperto come risolverlo solo dopo aver letto le fonti di colombaio. Forse ci sono alcune pagine che descrivono questo problema, ma non ho trovato alcuna. Come ho scoperto che l'autore-operaio è un servizio e la sua authorization di socket può essere impostata come questa:

 service auth-worker { unix_listener auth-worker { user = nobody # same as above, mode and group are supported too } } 

Secondo il messaggio di errore hai proprietario errato per la directory /var/run/wherecot/ . Correggerlo e felice.

Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.