Mensagem de erro de leitura de erro do Dovecot: Não é possível expandir ~ / para raiz de correio

1

Eu quero configurar o dovecot para usar o mysql como banco de dados de usuários. Esta é minha configuração:

# Authentication for SQL users. Included from 10-auth.conf.
#
# <doc/wiki/AuthDatabase.SQL.txt>

passdb {
  driver = sql

  # Path for SQL configuration file, see example-config/dovecot-sql.conf.ext
  args = /etc/dovecot/dovecot-sql.conf.ext
}

# "prefetch" user database means that the passdb already provided the
# needed information and there's no need to do a separate userdb lookup.
# <doc/wiki/UserDatabase.Prefetch.txt>
userdb {
  driver = prefetch
}

O Dovecot tem mail_gid e mail_uid definidos como usuário de email (usuário exim). E esta é a configuração do sql:

driver = mysql
connect = host=/var/run/mysqld/mysqld.sock dbname=system user=dovecot password=mypass
default_pass_scheme = PLAIN
password_query = SELECT password, '/var/mail/%d/%n' AS userdb_home FROM user WHERE username = '%n' AND domain = '%d'

E este é o erro depois de um bom login:

dovecot: pop3-login: Login: user=<test@user>, method=PLAIN, rip=xxx, lip=xxx, mpid=24372, session=<dwTdGT8n0QBf9La9>
dovecot: pop3(test@user): Error: user test@user: Initialization failed: Namespace '': Home directory not set for user. Can't expand ~/ for mail root dir in: ~/mail:INBOX=/var/mail/domain/test@user
dovecot: pop3(test@user): Error: Invalid user settings. Refer to server log for more information.

Eu verifiquei o log do mysql e encontrei uma resposta correta com a senha e o home. O que pode ser? Posso adicionar o usuário dovecot ao grupo de correio?

    
por Tobia 19.12.2015 / 13:18

1 resposta

0

Houve dois erros:

  • O formato de e-mail do Exim não correspondia ao formato de e-mail dovecot, o exim estava usando o maildir , o dovecot foi configurado com mbox . Eu tive que mudar a configuração do dvecot para maildir.
  • A configuração do maidir do Dovecot usou o endereço completo como pasta do usuário, o exim escreveu sua pasta de usuário apenas com a parte do usuário do endereço. Exemplo: /var/mail/mydomain.com/[email protected] em vez de /var/mail/mydomain.com/myuser

Eu tive que mudar essa linha de configuração no dovecot De:

mail_location = mbox:~/mail:INBOX=/var/mail/%d/%u

para

mail_location = maildir:/var/mail/%d/%n

(Eu sublinho o prefixo "maildir" em vez de "mbox" e o marcador% n em vez de% u)

    
por 21.12.2015 / 07:34

Tags