Cómo guardar copia de todos correos enviados y recibidos con Sendmail.
A continuación describo un breve instructivo para configurar Sendmail para que guarde una copia de cada mensaje que sea enviado y recibido en el servidor. Esto es particularmente útil en corporaciones donde se requiera un control de la información que entra y sale del servidor de correo electrónico. Está de más decir que requiere disponer de una enorme cantidad de espacio libre en disco duro o unidad de almacenamiento.
Procedimientos.
1) Crear la cuenta de usuario (copyuser) para el archivo de correo electrónico:
useradd -s /sbin/nologin copyuser |
2) Cambiar al directorio de macros de función de Sendmail y descargar msgidruleset.m4 (creado por Robert Harker, sitio original despareció hace algunos años):
cd /usr/share/sendmail-cf/feature/ |
3) Editar el archivo de macros de Sendmail:
vim /etc/mail/sendmail.mc |
Debajo de (que está casi hasta abajo):
MAILER(smtp)dnl |
Colocar:
FEATURE(msgidruleset)dnl |
De modo que quede así:
MAILER(smtp)dnl |
4) Crear el archivo /etc/mail/sendmail.cf a partir de /etc/mail/sendmail.mc:
m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf |
NOTA: Debido a la antigüedad de msgidruleset.m4 (1998), es normal que devuelva un error que indica que FEATURE debe ir antes de mailer(SMTP). De cualquier forma funcionará.
5) Reiniciar sendmail:
service sendmail restart |
Para complementar, es importante que cualquier correo electrónico enviado directamente a la cuenta copyuser se elimine automáticamente, ya que de otra forma habría un bucle infinito. Para lograr este fin, se edita o crea el archivo /etc/procmailrc y se añade lo siguiente:
# Eliminar correo que va directo a copyuser |
Para guardar una copia de cada mensaje recibido en el servidor, se añade al archivo /etc/procmailrc lo siguiente.
# Guardar copia de cada mensaje de correo recibido |
Lo mismo con Postfix.
El mismo efecto, con muchas menos complicaciones, se logra en Postfix utilizando el parámetro always_bcc indicando como valor una cuenta de correo local o remota.
postconf -e 'always_bcc = copyuser@domino.com' |
Comentarios finales.
Es importante enfatizar que se debe tratar de depurar a diario la cuenta copyuser, porque puede saturarse rápidamente el espacio disponible y, en algunos casos, ésto puede ocurrir en un mismo día. Por lo tanto, es imperativo disponer de mucho espacio de almacenamiento.












