Estou tentando fazer com que o Postfix entregue e-mails locais via LMTP da Dovecot (entre outras coisas para substituir o procmail por peneira). Até agora, eu tenho usado mailbox_command = procmail - a "$EXTENSION"
, entregando para ~/Maildir
s locais .
Após http://wiki2.dovecot.org/HowTo/PostfixDovecotLMTP , eu configurei (o postfix está em chroot) em/etc/dovecot/conf.d/10-master.conf
service lmtp {
unix_listener /var/spool/postfix/private/dovecot-lmtp {
group=postfix
user=postfix
mode=0600
}
e adicionado a /etc/postfix/main.cf
mailbox_transport = lmtp:unix:private/dovecot-lmtp
Agora, isso quase funciona (o Postfix fala com o soquete LMTP), mas o LMTP está confuso sobre o "usuário" que eudoxos@mydomain.eu
contém o domínio:
Jan 11 08:22:17 s18015955 postfix/lmtp[7374]: 3D84E19B0290E: to=<eudoxos@mydomain.eu>, orig_to=<fristname.lastname@mydomain.eu>, relay=iota.mydomain.eu[private/dovecot-lmtp], delay=0.01, delays=0/0/0/0, dsn=5.1.1, status=bounced (host iota.mydomain.eu[private/dovecot-lmtp] said: 550 5.1.1 <eudoxos@mydomain.eu> User doesn't exist: eudoxos@mydomain.eu (in reply to RCPT TO command))
O LMTP deve procurar apenas eudoxos
(no LDAP) em vez de eudoxos@mydomain.eu
. Como posso conseguir isso?
Se eu estava usando o programa de entrega (LDA), o nome de usuário do destinatário é especificado como argumento (como mailbox_command = /usr/lib/dovecot/deliver -f "$SENDER" -a "$RECIPIENT"
), mas tive problemas com as permissões de log usando o LDA (o wiki da Dovecot desencoraja o uso do LDA por esse motivo).