O Dovecot não busca mensagens de / var / spool / mail / $ user para mail_location

1

Como pode ser visto no / var / log / maillog quando o e-mail é recebido ou enviado, envie mensagens de e-mail para / var / spool / mail / $ user e registre-as como stat = Sent

Quando um usuário tenta enviar ou receber mensagens via imap, ele não é mostrado em ~ $ user / mail /

/etc/dovecot/conf.d/10-mail.conf

mail_location = maildir:~/mail:INBOX=~/mail/.INBOX

As permissões de diretório e arquivo estão corretas.

[root@mail ~]# ll -d /home/$user/mail
drwx------. 7 $user $user 4096 Oct 25 14:04 /home/$user/mail

Não há log sobre este problema em / var / log / maillog. Eu estou querendo saber que como enviar o arquivo de mensagens para o diretório de email do usuário?

    
por efesaid 25.10.2013 / 13:49

5 respostas

0

Meu problema é que o caminho do arquivo INBOX estava errado. Depois de alterar mail_location de maildir para mbox e o arquivo INBOX para / var / spool / mail /% u ele deu alguns erros de permissão.

[root]# vim /etc/dovecot/conf.d/10-mail.conf    
mail_location = mbox:~/:INBOX=/var/spool/mail/%u

Erros:

failed: Operation not permitted (egid=500)

E, em seguida, definir as permissões

[root]# chmod 0600 /var/mail*

[root]# service dovecot restart

Funciona bem.

    
por 25.10.2013 / 15:47
3

O comentário de Andrzej acima está correto; o dovecot não deve fazer isso automaticamente. Você precisará dizer ao sendmail para colocar o e-mail onde o dovecot está esperando (ou pelo menos dizer ao seu agente de entrega local para fazer isso), ou dizer ao dovecot para esperar onde o sendmail o coloca.

No meu caso, eu faço o último; meu dovecot.conf inclui a linha

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

Editar : seu sendmail é configurado como o meu, usando procmail como o MDA local. A página man do procmail sugere que /var/spool/mail/$user é o local padrão pelo qual o procmail enviará as mensagens recebidas, se nenhuma outra for fornecida:

   /var/spool/mail/$LOGNAME
                          system mailbox; both the system mailbox and the immediate directory it is in will be created  every
                          time procmail starts and either one is not present

então eu repito o meu ponto: você pode configurar o MDA do sendmail, o procmail, colocar emails de entrada em /home/$user/mail/.INBOX , ou você pode configurar o dovecot para procurar em /var/spool/mail/$user . Mas você terá que fazer uma dessas coisas, isso não vai acontecer por mágica.

    
por 25.10.2013 / 14:29
2

Reconfiguração do Sendmail para integração com o dovecot

link

Para usar o dovecot para entrega na conta de uso do sistema operacional existente, considere adicionar as seguintes linhas ao arquivo sendmail,mc [ sendmail.mc requer compilação em sendmail.cf ]

FEATURE('local_procmail', '/usr/local/libexec/dovecot/dovecot-lda','/usr/local/libexec/dovecot/dovecot-lda -d $u')
MODIFY_MAILER_FLAGS('LOCAL', '-f')

Outras possíveis opções de reconfiguração do sendmail

  • fazendo uso de sendmail dovecot apenas para UIDs com no mínimo 1000 [entrega clássica para usuários / contas do sistema, dovecot para usuários normais]
  • fazendo entregas de suporte do sendmail para usuários dovecot virtuais existentes [reconfiguração baseada em local_procmail NÃO É compatível]
por 25.10.2013 / 18:24
0

Dovecot: INBOX como mbox em / var / mail / username e o restante das caixas de correio no Maildir

Se você não se importa com a filtragem de peneiras, configure o dovecot para usar / var / mail / username como caixa de entrada e mantenha o resto dos mailoxes do usuário no formato Maildir.

Isso fará com que o dovecot "veja" as mensagens entregues pelo MTA / sendmail para o local padrão - nenhuma reconfiguração do MTA / sendmail será necessária.

link

    
por 25.10.2013 / 20:02
0

Você precisa editar o arquivo: / etc / procmailrc

# file: /etc/procmailrc
# system-wide settings for procmail
SHELL="/bin/bash"
SENDMAIL="/usr/sbin/sendmail -oi -t"
LOGFILE="/var/log/procmail.log"
DEFAULT="$HOME/Maildir/"
MAILDIR="$HOME/Maildir/"
:0
* ^X-Spam-Status: Yes
.spam/
    
por 05.01.2017 / 02:45