2009-04-16 29 views
5

Tengo un servidor de correo postfijo y hay un problema que quiero depurar. ¿Cómo puedo configurarlo para enviar una copia de cada correo electrónico a mi correo electrónico (además de entregar el correo electrónico a los destinatarios previstos).postfix: envíe una copia de cada correo electrónico a una dirección de correo electrónico dada

+0

http://serverfault.com/questions/407302/how-can-i-configure-postfix-to-retain-copies-of-all-email-sent-through-it tiene una respuesta mucho mejor, ya que utiliza funciones proporcionado por postfix. –

Respuesta

8

recientemente conseguí este trabajo, por lo que a pesar de que me gustaría compartir:

Envío de todo el correo saliente en carpetas enviados con el sufijo e IMAP Cyrus.

Resumen

que Postfix enviar copias BCC de todos los correos electrónicos salientes a un especial "enviado" cuenta de correo. Use tamiz en esta cuenta especial para redireccionar todos los correos electrónicos a la carpeta Enviada asociada con la cuenta.

  1. crear la cuenta de usuario de correo electrónico para enviar

    La forma más sencilla de hacer esto es crear una nueva cuenta de UNIX para envió, establecimiento de la cáscara de/bin/false para evitar que alguien sea capaz de log en:

    host$ sudo useradd sent 
    host$ sudo chsh -s /bin/false sent 
    
  2. Configurar IMAP para el usuario enviado

    Usando cyradm creamos un ne w buzón (es decir, el usuario) y dar a ese usuario anexar acceso a toda nuestra IMAP "Enviado" carpetas:

    host$ $ cyradm -user cyrus localhost 
    Password: <enter you cyrus user admin password here> 
    localhost> createmailbox user.sent 
    localhost> setaclmailbox user.%.Sent sent append 
    Setting ACL on user.userx.Sent...OK. 
    Setting ACL on user.usery.Sent...OK. 
    . . . 
    Setting ACL on user.userz.Sent...OK. 
    localhost> exit 
    
  3. crear una secuencia de tamiz para la cuenta enviada

    Este script redirigir todo el correo entrante a la cuenta enviada, a la carpeta Enviados en la bandeja de entrada de los remitentes.

    Mi script se llama sent.sieve y se ve algo como esto:

    # Sieve script for sent. If outgoing email is bcc'ed to this account, 
    # this sieve script will redirect it to the sender's Sent folder 
    require ["fileinto"]; 
    
    if address :is :localpart "From" "userx" { 
        fileinto "user.userx.Sent"; 
    } 
    elsif address :is :localpart "From" "usery" { 
        fileinto "user.usery.Sent"; 
    } 
    elsif address :is :localpart "From" "userz" { 
        fileinto "user.userz.Sent"; 
    } 
    

    Usted tendrá que poner en una entrada para cada uno de sus usuarios (usuariox, Usery, UserZ en el ejemplo anterior). No he podido encontrar una manera mejor de hacer esto. Las sugerencias son bienvenidos a [email protected]

    Instala el guión de tamiz así:

    host$ sieveshell localhost -user=sent -a=cyrus 
    Password: <enter you cyrus user admin password here> 
    > put sent.sieve 
    > activate sent.sieve 
    > quit 
    
  4. Configure la asignación de BCC para postfix

    En el directorio de sufijo (/ etc/postfix en debian) crear un archivo llamado bcc_map que tiene este aspecto:

    # copy all locally sent mail to the sent account 
    @yourdomain.com  [email protected] 
    

    compilar este en un hash de sufijo archivo usando:

    host$ sudo postmap bcc_map 
    

    Agregue la siguiente línea al postfijo principal.cf fichero de configuración:

    sender_bcc_maps = hash:/etc/postfix/bcc_map 
    

    Y hacer postfix recargar su configuración:

    anfitrión $ sudo /etc/init.d/postfix recargar

  5. probar y depurar

    enviar a algunos de correo electrónico y Verifique que esté copiado en su carpeta Enviada.

    En caso de problemas, debe consultar los registros de cyrus y postfix (todos registrados en /var/log/syslog en mi host de Debian). Typos y permisos de acceso incorrectos generalmente darán lugar a que se envíe alguna pista a los registros .

2

Sólo tiene que añadir [email protected] en /etc/postfix/main.cf y reiniciar el servidor de sufijo. He agregado esta línea en la parte inferior.

Parece que realmente funciona. Más acerca de always_bcc here

No olvide hacer una copia de seguridad de este archivo primero.

Cuestiones relacionadas