Postfix Recipient BCC Maps

Hace poco revisando y retomando algo de configuración de un servidor de correo (con postfix), estaba probando la forma de poder realizar un forward de un correo pero dejado una copia del correo al usuario origen.  Todos sabemos que para realizar este proceso se necesita de un usuario origen y un destino básicamente. Actualmente se trabaja con mysql para almacenar a los usuarios y dominios; ademas de una tabla en donde se configura el forward, pero resulta que cuando se realiza este proceso (forward) nunca queda el correo para el usuario origen o por lo menos no he logrado configurar eso hasta el día de hoy en donde estuve revisando información acerca de la propiedad recipient_bcc_maps que provee postfix.

Básicamente tiene la misma estructura que para un forward; para eso crearemos un archivo al cual llamaremos recipient_bcc dentro de la ruta /etc/postfix (esto dependera de casa uno) y dentro de este colocaremos lo siguiente:

# recipient_bcc - nachxs
usuario_01@dominio01.com  usuario_02@dominio02.com
...

En donde usuario_01 seria el origen y usuario_02 el destino, es decir que cada vez que le llegue un correo al usuario usuario_01, automáticamente se enviara un copia al usuario usuario_02.

Una vez creado el archivo con el contenido que ustedes definan utilizaremos el siguiente comando para poder generar un archivo que pueda ser leido por postfix:

postmap /etc/postfix/recipient_bcc

Este comando debería devolver el archivo recipient_bcc.db, entonces ahora solo nos quedaria leerlo desde postfix y para esto agregaremos lo siguiente en el archivo de configuración main.cf, en mi caso en la ruta /etc/postfix/main.cf

...
recipient_bcc_maps = hash:/etc/postfix/recipient_bcc
...

y listo, ahora solo nos quedaría reiniciar el servicio y probar. Si alguien puede compartir alguna otra manera de poder realizar un forward dejando una copia en el origen seria genial.

Anuncios

mb2md: Mailbox a Maildir

Hace poco realize la migracion de algunas cuentas de usuario de correo, que se validaban en el sistema a una base de datos, en este caso mysql. Los buzones que manejaban estos usuarios eran del tipo mailbox y resulta que en el transcurso de este proceso me fue necesario migrar estos buzones al tipo maildir; me puse ha buscar algunas herrramientas que permitan realizar este proceso de manera optima y me tope con mb2md una pequeña aplicación que realiza el cambio de forma rápida y eficiente y la verdad me fue de mucha utilidad. La forma básica de usarla es:

$ mb2md -s path_mailbox -d path_maildir

donde: s = origen y d = destino

Ahora, para realizar yo este trabajo de manera mas rapida y no estar realizando este proceso para cada buzon realize un pequeño script en python el cual lee los usuarios desde el archivo /etc/passwd y luego verifica si existe el mailbox de este. Aqui lo propongo espero les sea de utilidad para alguno.

mb2md

Eliminar la cola de correos (mailq)

Hace poco revisando algunas opciones en mi server de correo, me acorde de un comando que ya habia olvidado el cual sirve para poder mostrar toda la cola de correos y asi poder revisar los que no sirven o no y de ser necesarios eliminarlos. El comando es mailq, el cual es un comando que justamenete sirve para la administracion de toda la lista de mensajes almacenas en la cola del servidor de correo. Por ejemplo para poder mostrar todos lo mensajes que se encuentran en la cola en un momento dado:
mailq_1.png
En este caso me esta mostrando un mensaje que no ha sido enviado por el “tiempo de conexion agodato” hacia el receptor. Si vemos que este mensaje no sirve solo tendriamos que eliminarlo. Para poder eliminar un mensaje especifico tendriamos que tener en cuenta el Id del mensaje (Queue ID) y con el comando “postsuper -d ID” estariamos eliminandolo de la cola. Ahora, si nosotros quisieramos eliminar todos lo mensajes de la cola solo hariamos “postsuper -d ALL”. Como veran, el uso de esta herramienta puede ser de mucha utilidad para la administracion de tu servidor de correo.