twitter
    Sigueme en el Twitter :-)

23 mayo 2012

Copia oculta de correos en Zimbra

Luego de mucho tiempo que no implementaba una "solución" de correo electrónico, así que para un proyecto nuevo en el cual participé decidí usar EXIM (como mailgateway) y ZIMBRA (como BACKEND). Ha cambiado mucho desde aquella version 5.X la cual mucha veces había probado y testeado, pero ya hablaré en otro post sobre su instalación y configuración. Lo que compartiré es un requerimiento que me solicitaron para este proyecto. Bueno, quería que todo correo entrante/saliente llege con copia a la cuenta "auditoria@empresa.com". Legalmente esto no es valido, por las leyes peruanas que protegen los datos de las personas, PERO!, si uno firma un contrato donde se estitule que toda información y medios de la empresa que use el trabajador, serán monitoreados ya es diferente (no soy abogado pero creo que muchas empresas asi evitan problemas legales). Bueno acontinuación explicaré lo que use para este requerimiento, valido tanto para Postfix como Zimbra Primero que nada, ZIMBRA usa como MTA a Postfix, así que, todas las "artimañas" que funcionan para el, tambien funcionan en Zimbra (al menos el 99%), los parametros que se usé para esto fueron los siguientes:

always_bcc =
Se utiliza para crear siempre una Copia de Carbón Oculta (del inglés: BCC Blind Carbon Copy, CCO en español), tanto para el correo entrante, como para el saliente. Lo que sigue al signo igual, es el correo a donde queremos hacer la Copia de Carbón.

always_bcc = auditoria@empresa.com

sender_bcc_maps =
recipient_bcc_maps =

Son muy parecidas, es para hacer Copias de Carbón a un correo saliente (sender), a un correo entante (recipient). Ambas líneas se una con una tabla tipo hash, por lo que hay que crear 2 tablas las cuales quedarías así:

1- /opt/zimbra/postfix/conf/sender_bcc (ZIMBRA) o /etc/postfix/sender_bcc (POSTFIX)
2- /opt/zimbra/postfix/confrecipient_bcc (ZIMBRA) o /etc/postfix/recipient_bcc (POSTFIX)

En ambas se pone el correo a hacer Copia de Carbón y seguido de un espacio, que por lo general es tabular, a donde queremos que llegue este correo copia. Siguiendo el ejemplo de mandar el correo copia a: usuario@empresa.com, sería así:

Si queremos hacer copia de todo lo que salga de usuario@empresa.com, hay que usar en el /etc/postfix/main.cf la siguiente línea:

sender_bcc_maps = hash:/opt/zimbra/postfix/conf/sender_bcc
sender_bcc_maps = hash:/etc/postfix/sender_bcc


En la tabla: /etc/postfix/sender_bcc y/o /opt/zimbra/postfix/conf/sender_bcc, agregar lo siguiente:

usuario@empresa.com auditoria@empresa.com
usuario2@empresa.com auditoria@empresa.com
usuario3@empresa.com auditoria@empresa.com
....

Al terminar con la tabla "sender_bcc", generamos la tabla con el comando:

# postmap /etc/postfix/sender_bcc
# postmap /opt/zimbra/postfix/conf/sender_bcc

Y hacemos surtir efecto de los cambios en postfix reiniciando el demonio

# /etc/init.d/postfix restart
# zimbra@localhost:> zmmtactl restart

Si queremos hacer copia de todo lo que entre para usuario@empresa.com, hay que usar en el /etc/postfix/main.cf y/o /opt/zimbra/postfic/conf/main.cf la siguiente línea:

#recipient_bcc_maps = hash:/etc/postfix/recipient_bcc
#recipient_bcc_maps = hash:/opt/zimbra/postfix/conf/recipient_bcc

En la tabla: /etc/postfix/recipient_bcc y/o /opt/zimbra/postfix/conf/recipient_bcc, agregar lo siguiente:

usuario@empresa.com auditoria@empresa.com
usuario2@empesa.com auditoria@empresa.com
....

Al terminar con la tabla "recipient_bcc", generamos la tabla con el comando:

# postmap /etc/postfix/recipient_bcc
# postmap /opt/zimbra/postfix/conf/recipient_bcc

Y hacemos surtir efecto de los cambios en postfix reiniciando el demonio

# /etc/init.d/postfix restart
# zimbra@localhost:> zmmtactl restart

En resumen:
sender_bcc_maps =
recipient_bcc_maps =

Espero que les sirva....... Sls


10 comentarios:

Anónimo dijo...

Perfecto amigo!! funiconó a la primero.

Anónimo dijo...

Muy buen aporte !!!

jmasters dijo...

muy bueno gracias, era lo que necesitaba

jmasters dijo...

perfecto me sirvio

jmasters dijo...

muy bueno gracias, era lo que necesitaba

jmasters dijo...

muy bueno gracias, era lo que necesitaba

jmasters dijo...

muy bueno gracias, era lo que necesitaba

Ramon Gonzalez dijo...

amigazo que pasa si quiero las copias de algunas cuentas en particular, como hago? gracias desde ya

George Luna dijo...

Buen dia, Gracias por tu conocimiento.
Tengo una pregunta, si quiero que toas las cuenta creadas en zimbra, me envien una copia e carbon a una cuenta en especifico, como e haria in tener que crear cuenta por cuenta, hay una manera de hacerlo como e hace con always_bcc ?

Gracias de antemano

Anónimo dijo...

Buenos días

Instalé zimbra sobre CentOS en una máquina virtual

[root@mailtest3 ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
[root@mailtest3 ~]#
[zimbra@mailtest3 ~]$ zmcontrol -v
Release 8.8.7_GA_1964.RHEL7_64_20180223145016 RHEL7_64 FOSS edition.


Al crear una cuenta desde Zimbra, veo en la pantalla de Administración de Zimbra que la hora de creación está adelantado con 5 horas a la fecha de mi servidor CentOS

[root@mailtest3 ~]# date
vie jun 1 09:03:07 -05 2018
[root@mailtest3 ~]# hwclock
vie 01 jun 2018 09:03:38 -05 -0.975899 segundos
[root@mailtest3 ~]#


Por si acaso actualicé y reinstalé tzdata y reinicié el servidor y nada
[root@mailtest3 ~]# yum update tzdata
[root@mailtest3 ~]# yum reinstall tzdata


En la carpeta de log de Zimbra hay varios logs, pero no está la misma hora en el contenido del archivo log de todos los logs

[root@mailtest3 ~]# ll /opt/zimbra/log
total 51552
-rw-r----- 1 zimbra zimbra 91477 jun 1 09:07 access_log.2018-06-01
-rw-r----- 1 zimbra zimbra 200701 jun 1 09:08 mailbox.log


Por ejemplo

En el archivo access_log.2018-06-01 está las 14:13, pero son recién las 09:13am!!!
192.168.248.129 - - [01/Jun/2018:14:13:57 +0000] "POST https://mailtest3.localdomain:7071/service/admin/soap/NoOpRequest HTTP/1.1" 200 199 "https://mailtest3.localdomain:7071/zimbraAdmin/" "Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Firefox/52.0" 5

En cambio en el archivo mailbox.log sí está correcta la hora:
2018-06-01 09:13:57,808 INFO [qtp998351292-5917:https:https://mailtest3.localdomain:7071/service/admin/soap/NoOpRequest] [name=admin@localdomain;mid=1;ip=192.168.248.129;port=35076;ua=ZimbraWebClient - FF52 (Linux);soapId=524de1ac;] soap - NoOpRequest elapsed=1



Al crear una cuenta, se ve en la pantalla de administración que la hora de la creación de la cuenta está adelantado con 5 horas, es decir, en realidad son las 9:13 am, pero aparece que fue creado a las 14:13


¿Qué debo hacer? ¿Vuelvo a instalar Zimbra?


Será que debo configurar el JAVA_HOME?
[root@mailtest3 ~]# whereis java
java: /usr/bin/java /usr/lib/java /etc/java /usr/share/java /usr/share/man/man1/java.1.gz
[root@mailtest3 ~]# ls -l /usr/bin/java
lrwxrwxrwx 1 root root 22 may 31 14:08 /usr/bin/java -> /etc/alternatives/java
[root@mailtest3 ~]# ls -l /etc/alternatives/java
lrwxrwxrwx 1 root root 73 may 31 14:08 /etc/alternatives/java -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64/jre/bin/java
[root@mailtest3 ~]# echo $JAVA_HOME

[root@mailtest3 ~]#


[root@mailtest3 ~]# locate mysql_tzinfo_to_sql
/opt/zimbra/common/bin/mysql_tzinfo_to_sql
/opt/zimbra/common/share/man/man1/mysql_tzinfo_to_sql.1


Ayúdenme por favor, alguna idea?