« Altermime » : différence entre les versions
Ligne 27 : | Ligne 27 : | ||
== Configuration pour Postfix == | == Configuration pour Postfix == | ||
=== | {{ Box Attention | objet=Cette configuration est valable uniquement si '''Postfix''' fonctionne sans la plateforme de filtrage '''Amavis'''. Le cas échéant, il faudra se reporter à la seconde partie expliquant comment intégrer '''Altermime''' dans '''Amavis'''. }} | ||
=== Routage des mails === | |||
* Dans le fichier '''/etc/postfix/master.cf''', remplacer : | * Dans le fichier '''/etc/postfix/master.cf''', remplacer : | ||
Ligne 37 : | Ligne 39 : | ||
smtp inet n - n - - smtpd | smtp inet n - n - - smtpd | ||
-o content_filter=dfilt: | -o content_filter=dfilt: | ||
* Ajouter à la fin du fichier '''/etc/postfix/master.cf''' : | * Ajouter à la fin du fichier '''/etc/postfix/master.cf''' : | ||
Ligne 45 : | Ligne 45 : | ||
flags=Rq user=altermime argv=/etc/postfix/disclaimer -f ${sender} -- ${recipient} | flags=Rq user=altermime argv=/etc/postfix/disclaimer -f ${sender} -- ${recipient} | ||
=== | === Script d'exécution === | ||
* | * Le script d'exécution '''disclaimer''' sera appelé par '''Postfix''' pour ajouter le '''disclaimer''' à la fin de chaque message sortant. Le script d'origine est enregistré dans le fichier '''/usr/share/doc/altermime/examples/postfix_filter.sh'''. Ce fichier sera déplacé dans '''/etc/postfix''' : | ||
{{ Box_Console | objet=sudo cp /usr/share/doc/altermime/examples/postfix_filter.sh /etc/postfix/disclaimer<br /> | {{ Box_Console | objet=sudo cp /usr/share/doc/altermime/examples/postfix_filter.sh /etc/postfix/disclaimer<br /> | ||
Ligne 53 : | Ligne 53 : | ||
sudo chmod 750 /etc/postfix/disclaimer}} | sudo chmod 750 /etc/postfix/disclaimer}} | ||
* | * Nous allons également copié le fichier contenant le message par défaut qui sera ajouté à la fin de chaque mail sortant. Son contenu pourra être personnalisé par la suite : | ||
{{ Box_Console | objet=sudo cp /usr/share/doc/altermime/examples/disclaimer.txt /etc/postfix/disclaimer.txt<br /> | {{ Box_Console | objet=sudo cp /usr/share/doc/altermime/examples/disclaimer.txt /etc/postfix/disclaimer.txt<br /> |
Version du 13 février 2014 à 13:18
.:[ Serveur de Messagerie ]:.
Filtrage anti-spam : Anti-Spam SpamAssassin | Anti-Virus Clamav
Filtrage anti-virus : Plateforme de filtrage Amavis >> Amavis avec MySQL
Plus de fonctions : Ajouter un Disclaimer | Signature DKIM | Mailman | Maildrop
Clients de messagerie : Configurer Thundirbird | Configurer Roundcube
Pour aller plus loin : Commandes messagerie | DNSBL | MX Backup
|
Une révision de cette article est planifiée suite à la mise à jour de l'article principale sur Postfix. |
Installation
- Installation du paquet altermime :
|
|
- Création de l'utilisateur altermime :
|
|
- Création du répertoire d'altermime avec les permissions adéquates :
|
|
- ! :
|
|
Configuration pour Postfix
|
Cette configuration est valable uniquement si Postfix fonctionne sans la plateforme de filtrage Amavis. Le cas échéant, il faudra se reporter à la seconde partie expliquant comment intégrer Altermime dans Amavis. |
Routage des mails
- Dans le fichier /etc/postfix/master.cf, remplacer :
smtp inet n - n - - smtpd
- Par :
smtp inet n - n - - smtpd -o content_filter=dfilt:
- Ajouter à la fin du fichier /etc/postfix/master.cf :
dfilt unix - n n - - pipe flags=Rq user=altermime argv=/etc/postfix/disclaimer -f ${sender} -- ${recipient}
Script d'exécution
- Le script d'exécution disclaimer sera appelé par Postfix pour ajouter le disclaimer à la fin de chaque message sortant. Le script d'origine est enregistré dans le fichier /usr/share/doc/altermime/examples/postfix_filter.sh. Ce fichier sera déplacé dans /etc/postfix :
|
|
- Nous allons également copié le fichier contenant le message par défaut qui sera ajouté à la fin de chaque mail sortant. Son contenu pourra être personnalisé par la suite :
|
|
|
Le contenu du fichier disclaimer.txt sera ajouté en fin des mails aussi à l’émission qu'à la réception. |
Configuration pour Amavis
Patch
#!/bin/sh INSPECT_DIR=/var/spool/filter SENDMAIL=/usr/sbin/sendmail LOCAL_DOMAIN1=domain1.com LOCAL_DOMAIN2=domain2.com RECIP=`echo $* | awk '{print $NF}'| tr [A-Z] [a-z]` RECIP_DOMAIN=`echo $RECIP | awk -F"@" '{print $2}'` SENDER=`echo $* | awk '{print $2}'| tr [A-Z] [a-z]` SEND_DOMAIN=`echo $SENDER | awk -F"@" '{print $2}'` # 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; } if [ "$RECIP_DOMAIN" = "$SEND_DOMAIN" ]; then /usr/bin/altermime --input=in.$$ \ --disclaimer=/etc/postfix/disclaimers.txt \ --disclaimer-html=/etc/postfix/disclaimers.txt \ --xheader="X-Copyrighted-Material:" || \ { echo Message content rejected; exit $EX_UNAVAILABLE; } elif [ "$SEND_DOMAIN" = "$LOCAL_DOMAIN2" ]; then /usr/bin/altermime --input=in.$$ \ --disclaimer=/etc/postfix/domain2.txt \ --disclaimer-html=/etc/postfix/domain2.txt \ --xheader="X-Copyrighted-Material: Please visit http://www.domain2.com/privacy.htm" || \ { echo Message content rejected; exit $EX_UNAVAILABLE; } elif [ "$SEND_DOMAIN" = "$LOCAL_DOMAIN1" ]; then /usr/bin/altermime --input=in.$$ \ --disclaimer=/etc/postfix/domain1.txt \ --disclaimer-html=/etc/postfix/domain1.txt \ --xheader="X-Copyrighted-Material: Please visit http://www.domain1.com/privacy.htm" || \ { echo Message content rejected; exit $EX_UNAVAILABLE; } else /usr/bin/altermime --input=in.$$ \ --disclaimer=/opt/zimbra/postfix/conf/disclaimers/emptydisclaimer.txt \ --disclaimer-html=/opt/zimbra/postfix/conf/disclaimers/emptydisclaimer.txt \ --xheader="X-Copyrighted-Material: " || \ { echo Message content rejected; exit $EX_UNAVAILABLE; } fi $SENDMAIL -i "$@" <in.$$ exit $?