Eu estava tentando configurar isso e estava encontrando snippets aqui e
lá, mas não uma receita completa. Veja como eu fiz isso.
Estou executando o FreeBSD 10.3-RELEASE, o sendmail 8.15.2 e o dovecot 2.2.29.
Você precisa de um usuário para os arquivos do usuário virtual:
# passwd
vmail:*:2025:2025:Dovecot Virtual Mail:/var/empty:/usr/sbin/nologin
# group
vmail:*:2025:
O pombal é simples, então vamos fazer isso primeiro. Assumindo um pombal de trabalho
config você já terá pelo menos uma configuração userdb. Adicione um novo
para usuários virtuais:
# Virtual users
userdb {
driver = static
args = uid=vmail gid=vmail home=/var/vmail/%u
}
Se você não tiver um, adicione uma configuração de passdb para credenciais estáticas:
passdb {
args = scheme=plain-md5 username_format=%u /usr/local/etc/dovecot/imap-passwd
driver = passwd-file
}
Crie / var / vmail:
mkdir /var/vmail
chown vmail:vmail /var/vmail
e a menos que você queira criar diretórios manualmente para cada novo
usuários, adicione:
# Virtual users config
lda_mailbox_autocreate = yes
para dovecot.conf (o sintoma de não ativar o lda_mailbox_autocreate e os diretórios não existentes são erros EX_TEMPFAIL e mensagens presas na fila local do sendmail).
Use "doveadm pw -s PLAIN-MD5" e adicione uma linha para o novo usuário virtual:
vfred:{PLAIN-MD5}912ec803b2ce49e4a541068d495ab570
Reinicie o pombo para pegar a nova configuração:
service dovecot restart
Agora vamos para o sendmail. Se você não tem um mailertable você precisa adicionar um:
FEATURE('mailertable')dnl
para sendmail.mc e:
vmail dovecot:dummy
para mailertable. Isso está dizendo ao sendmail para usar o local do pombal
agente de entrega para * @ vmail.
No final do seu sendmail.mc, você provavelmente tem algo como:
MAILER(local)dnl
MAILER(smtp)dnl
Anexe algo nos seguintes termos:
dnl
dnl Dovecot virtual user delivery agent
dnl
LOCAL_CONFIG
Mdovecot,
P=/usr/local/libexec/dovecot/dovecot-lda,
F=l59DFMPhnu,
S=EnvFromL/HdrFromL,
R=EnvToL/HdrToL,
M=51200000,
U=vmail:vmail,
T=DNS/RFC822/X-Unix,
A=/usr/local/libexec/dovecot/dovecot-lda -d $u
gere um novo sendmail.cf e reinicie o sendmail:
service sendmail stop ; sleep 1 ; service sendmail start
("service sendmail restart" é um pouco engraçado no FreeBSD)
Por fim, adicione seu usuário virtual ao arquivo de aliases:
vfred: vfred@vmail
Executar novas pesquisas e testar.