¿Existe una manera fácil (-ish) de obtener un flujo de trabajo similar, haciendo que el Servidor recupere los correos electrónicos y los agregue al servidor IMAP local?
La clave es usar el programa dovecot-lda
( lda para Local Deliver Agent), que puede escribir mensajes en el servidor IMAP.
Por ejemplo, si usa getmail
, podría proporcionar una sección [destination]
que invoque dovecot-lda
:
[destination]
type = MDA_external
path = /Applications/Server.app/Contents/ServerRoot/usr/libexec/dovecot/dovecot-lda
arguments = ("-d", "USERNAME")
allow_root_commands = True
Tenga en cuenta que se requiere allow_root_commands
porque getmail
tendrá que ejecutarse como root para invocar dovecot-lda
.
Aparte: la ruta para dovecot-lda
se especifica en el archivo de configuración postfix /Library/Server/Mail/Config/postfix/master.cf
:
dovecot unix - n n - 25 pipe
flags=DRhu user=_dovecot:mail argv=/Applications/Server.app/Contents/ServerRoot/usr/libexec/dovecot/dovecot-lda -d ${user}
¿Qué pasa con el filtrado del lado del servidor? ¿Cómo se puede configurar?
Dovecot está configurado para usar Sieve ( /Library/Server/Mail/Config/dovecot/conf.d/90-sieve.conf
). Las reglas del tamiz se almacenan en /Library/Server/Mail/Data/rules/%u/dovecot.sieve
(vea /Library/Server/Mail/Config/dovecot/conf.d/90-sieve.conf
), que desafortunadamente no es fácil de escribir.
Para instalar reglas de Tamiz adicionales, use un editor de Tamices, por ejemplo, Clientes de tamices . Tenga en cuenta que necesita usar el puerto correcto (Server.app utiliza por defecto el puerto 4190; consulte /Library/Server/Mail/Config/dovecot/conf.d/20-managesieve.conf
).
Desafortunadamente, después de pasar demasiado tiempo tratando de hacer que esto funcione, he dejado de usar un cliente Sieve.
Si eres root, crea un archivo .sieve
(verifica la sintaxis con sievec
), luego copia a /Library/Server/Mail/Data/rules/%u/dovecot.sieve
. Nota: %u
es el GUID del usuario, no su nombre de usuario (es decir, debe existir /Library/Server/Mail/Data/mail/%u
), y /Library/Server/Mail/Data/rules/%u
debe tener permisos 775 (que el usuario mail
pueda escribir).
Si no eres root ... obtén root y ve arriba.
Cuando las reglas del Tamiz están en su lugar, /Library/Logs/Mail/mail-info.log
contendrá una línea similar a:
mail-info.log:Feb 13 17:14:52 lda(pid 6108 user USERNAME-NOT-GUID): Info: sieve: msgid=<whatever...>: ...