GNU/Linux >> Tutoriales Linux >  >> Debian

Cómo agregar automáticamente un descargo de responsabilidad a los correos electrónicos salientes con alterMIME (Postfix en Debian Squeeze)

Este tutorial muestra cómo instalar y usar alterMIME. alterMIME es una herramienta que puede agregar automáticamente un descargo de responsabilidad a los correos electrónicos. En este artículo explicaré cómo instalarlo como filtro Postfix en Debian Squeeze.

1 nota preliminar

Supongo que Postfix ya está instalado y es completamente funcional. No explicaré cómo instalar Postfix y configurar cuentas de correo electrónico en este tutorial.

2 Instalación de alterMIME

alterMIME se puede instalar de la siguiente manera:

apt-get install altermime

A continuación, creamos el filtro de usuario con el directorio de inicio /var/spool/filter filter - alterMIME se ejecutará como ese usuario:

useradd -r -c "Postfix Filters" -d /var/spool/filter filter
mkdir /var/spool/filter
chown filter:filter /var/spool/filter
chmod 750 /var/spool/filter

Luego creamos el script /etc/postfix/disclaimer que ejecuta alterMIME. El paquete alterMIME de Debian viene con un script de muestra que simplemente podemos copiar a /etc/postfix/disclaimer:

cp /usr/share/doc/altermime/examples/postfix_filter.sh /etc/postfix/disclaimer
chgrp filter /etc/postfix/disclaimer
chmod 750 /etc/postfix/disclaimer

Ahora, el problema con este script es que no distingue entre los correos electrónicos entrantes y salientes, simplemente agrega un descargo de responsabilidad a todos los correos. Por lo general, desea descargos de responsabilidad solo para los correos electrónicos salientes, e incluso entonces no para todas las direcciones de los remitentes. Por lo tanto, modifiqué un poco el script /etc/postfix/disclaimer; llegaremos a eso en un minuto.

En este momento, creamos el archivo /etc/postfix/disclaimer_addresses que contiene todas las direcciones de correo electrónico del remitente (una por línea) para las cuales alterMIME debe agregar un descargo de responsabilidad:

vi /etc/postfix/disclaimer_addresses

Ahora abrimos /etc/postfix/disclaimer y lo modificamos de la siguiente manera (he marcado las partes que he cambiado):

vi /etc/postfix/disclaimer
[email protected]
[email protected]
[email protected]

A continuación, necesitamos el archivo de texto /etc/postfix/disclaimer.txt que contiene nuestro texto de exención de responsabilidad. El paquete alterMIME de Debian viene con un texto de muestra que podemos usar por ahora (por supuesto, puede modificarlo si lo desea):

cp /usr/share/doc/altermime/examples/disclaimer.txt /etc/postfix/disclaimer.txt

Finalmente, debemos decirle a Postfix que debe usar el script /etc/postfix/disclaimer para agregar renuncias a los correos electrónicos salientes. Abra /etc/postfix/master.cf y agregue -o content_filter=dfilt:a la línea smtp:

vi /etc/postfix/master.cf
#!/bin/sh
# Localize these.
INSPECT_DIR=/var/spool/filter
SENDMAIL=/usr/sbin/sendmail

####### Changed From Original Script #######
DISCLAIMER_ADDRESSES=/etc/postfix/disclaimer_addresses
####### Changed From Original Script END #######

# Exit codes from <sysexits.h>
EX_TEMPFAIL=75
EX_UNAVAILABLE=69

# Clean up when done or when aborting.
trap "rm -f in.$$" 0 1 2 3 15

# Start processing.
cd $INSPECT_DIR || { echo $INSPECT_DIR does not exist; exit
$EX_TEMPFAIL; }

cat >in.$$ || { echo Cannot save mail to file; exit $EX_TEMPFAIL; }

####### Changed From Original Script #######
# obtain From address
from_address=`grep -m 1 "From:" in.$$ | cut -d "<" -f 2 | cut -d ">" -f 1`

if [ `grep -wi ^${from_address}$ ${DISCLAIMER_ADDRESSES}` ]; then
  /usr/bin/altermime --input=in.$$ \
                   --disclaimer=/etc/postfix/disclaimer.txt \
                   --disclaimer-html=/etc/postfix/disclaimer.txt \
                   --xheader="X-Copyrighted-Material: Please visit http://www.company.com/privacy.htm" || \
                    { echo Message content rejected; exit $EX_UNAVAILABLE; }
fi
####### Changed From Original Script END #######

$SENDMAIL "[email protected]" <in.$$

exit $?

Al final del mismo archivo, agregue las siguientes dos líneas:

#
# Postfix master process configuration file.  For details on the format
# of the file, see the master(5) manual page (command: "man 5 master").
#
# Do not forget to execute "postfix reload" after editing this file.
#
# ==========================================================================
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
# ==========================================================================
smtp      inet  n       -       -       -       -       smtpd
   -o content_filter=dfilt:
[...]

Reinicie Postfix después:

/etc/init.d/postfix restart

¡Eso es todo! Ahora se debe agregar un descargo de responsabilidad a los correos electrónicos salientes enviados desde las direcciones enumeradas en /etc/postfix/disclaimer_addresses.

3 Enlaces

  • alterMIME:http://pldaniels.com/altermime/
  • Postfijo:http://www.postfix.org/
  • Debian:http://www.debian.org/

Debian
  1. Uso de Postfix para entregar correo mediante la autenticación SMTP

  2. ¿Cómo maneja Linux múltiples separadores de rutas consecutivas (/home////username///file)?

  3. Debian – ¿Mover /var, /home a una partición separada?

  4. ¿Cómo se actualiza /etc/motd?

  5. Cómo instalar Spamassassin con Postfix y Dovecot en Ubuntu/Debian Server

Cómo ejecutar OpenVPN automáticamente en Debian con una dirección IP estática

Usuarios virtuales y dominios con Postfix, Courier, MySQL y SquirrelMail (Debian Wheezy)

Cómo cifrar directorios/particiones con eCryptfs en Debian 8 (Jessie)

Cómo instalar y configurar Postfix en Debian

Cómo configurar Postfix SMTP Relay en Debian con Mailjet

CentOS / RHEL:cómo recuperarse de un archivo /etc/passwd eliminado

    [...]
    dfilt     unix    -       n       n       -       -       pipe
        flags=Rq user=filter argv=/etc/postfix/disclaimer -f ${sender} -- ${recipient}