Postfix
Transcription
Postfix
Postfix Introduction La gestion du courrier électronique a longtemps été un problème difficile sous Linux. Ceci principalement du fait de la complexité de paramétrage du serveur de courrier électronique Sendmail. Heureusement, des logiciels efficaces et plus simples comme Postfix sont apparus pour traiter la gestion du courrier électronique. Acheminement du courrier électronique Vous recevez et envoyer probablement des dizaines de messages électroniques par jour. Mais savez-vous ce qui se met en œuvre lorsque vous cliquez sur le bouton Envoyer de votre outils de messagerie ? 1. Celui-ci commence par contacter le serveur utilisé pour envoyer des messages (MTA, Mail Transport Agent, agent de transport du courrier électronique), à l’aide du protocole SMTP ( Simple Mail Transfer Protocol). Il s’agit d’un programme (sendmail, smail, Microsoft Exchange Server, etc.) qui accepte le contenu de votre message, ainsi que tous les en-têtes que votre outil de messagerie a pu ajouter. 2. Le serveur traite ensuite les adresses de l’émetteur et des destinataires, ainsi que les entêtes. En fonction des informations collectées, le serveur décide du traitement du message. 3. Celui-ci peut être acheminé immédiatement vers une boîte aux lettres local; il peut être placé dans une file d’attente, jusqu' à son acheminement; ou il peut être transmis à un autre serveur. Les règles présidant à l’acheminement du courrier électronique peuvent être très élaborées, et un message peut suivre un chemin complexe avant de parvenir élaborées, et un message peut suivre un chemin complexe avant de parvenir à destination. 4. Finalement, sauf si l’adresse du destinataire est incorrecte ou si un autre incident survient, un serveur distant acceptera le message pour le placer dans une boîte aux lettres locale. Les boîtes aux lettres peuvent être organisées de manières très diverses ; sous Linux, il s’agit d’un fichier (/var/spool/mail/usager) contenant tous les messages non encore lus par le destinataire. Page 1 Postfix 5. Après un certain laps de temps, le message est retiré de la boîte aux lettres par l’outil de messagerie du destinataire (MUA, Mail User Agent). Un client s’exécutant sur la même machine que le serveur peut lire directement les messages dans le fichier approprié. A travers le réseau, il est nécessaire d’utiliser un protocole, par exemple POP3 (Post Office Protocol). Vous noterez que la dernière étape diffère singulièrement des autres. Jusqu' à ce point, les messages étaient envoyés : l’émetteur est à l’origine de la transaction qui permet au message d’atteindre le relais suivant vers sa destination finale. Pour la toute dernière étape le processus est inversé : le client récupère le message dans la boîte aux lettres en interrogeant le serveur. MUA (Mail User Agent) L’agent utilisateur (MUA) est le programme dont vous vous servez pour communiquer avec le système de courrier électronique. Sous Linux l’agent utilisateur le plus simple se nomme mail. Il s’agit d’un client très limité; incapable d’utiliser le protocole POP3, il ne peut lire que les messages d’une boîte aux lettres locale. Toutefois, il suffit pour tester votre système de courrier électronique. S’il est appelé sans arguments, il vérifie la présence de nouveau messages : [root@neptune root]# mail Mail version 8.1 6/6/93. Type ? for help. "/var/spool/mail/root": 5 messages 1 new 5 unread U 1 [email protected] Thu Jan 16 02:25 39/997 "LogWatch for neptune" U 2 [email protected] Sat Jan 25 10:36 39/997 "LogWatch for neptune" U 3 [email protected] Sun Jan 26 09:39 47/1221 "LogWatch for neptune" U 4 [email protected] Mon Jan 27 20:32 39/997 "LogWatch for neptune" > L’un des agents utilisateur les plus prisés dans le monde Unix se nomme pine. Contrairement à mail, il offre une interface pleine écran. Il est aussi capable d’attacher des fichiers. Bien entendu, la plupart des utilisateurs actuels ne se servent pas d’agents fonctionnant sous Linux, même si leur serveur de courrier est un système Linux. Il est plus courant d’exploiter l’agent distribué avec un navigateur, par exemple Netscape ou Microsoft Outlook. Page 2 Postfix MTA (Mail Transfert Agent) Un agent de transport (MTA, Mail Transport Agent), aussi appelé serveur de messagerie, pour revêtir des formes très diverses. Toutefois, sendmail reste le plus utilisé sur Internet. Il existe depuis de nombreuses années, et les versions actuelles sont remarquablement stables et puissantes. Son seul défaut vient de sa popularité : il est la cible fréquente d’attaques ou tentatives de détournement de la sécurité. Protocoles Si l’on considère la quantité de MTA et de MUA disponibles, on peut légitimement se demander comment ces programmes réussissent à interagir. Le secret réside dans la standardisation. Tous les systèmes de messagerie utilisent un ensemble de protocoles commun. Tous les agents Linux se servent de répertoires, formats et mécanismes d’accès connus. En conséquence, même si un message peut être manipulé par une dizaine de programmes différents lors de son acheminement entre l’émetteur et le destinataire, le résultat final est la mise en place d’un système fiable. SMTP :le protocole de transfert des messages Simple Mail Transport Protocol Port 25 Tous les serveurs de courrier électronique reçoivent les messages à l’aide d’un mécanisme commun :SMTP, Simple Mail Transfert Protocol. Que le message soit envoyé par votre agent ou par un autre serveur, la méthode reste la même : le système émetteur se connecte au serveur à l’aide du protocole SMTP, indique l’auteur et le destinataire du message, et transfère le message proprement dit. Le terme simple, dans SMTP, n’est pas une exagération. Le protocole est tellement élémentaire que vous pouvez faire manuellement une transaction. Voici un exemple qui illustre ce point : # telnet localhost smtp Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. Page 3 Postfix 220 localhost.localdomain ESMTP Sendmail 8.11.6/8.11.6; Mon, 27 Jan 11 -0500 20:54: HELO Linux 250 localhost.localdomain Hello neptune [127.0.0.1], pleased to meet you POP3 : le protocole serveur/destinataire Post Office Protocol Port 110 Le protocole SMTP permet d’acheminer un message un message vers un serveur de messagerie (MTA). Mais il n’offre aucun moyen d’amener le message jusqu' à sa destination finale, c’est-àdire jusqu' à l’agent utilisateur (MUA) s’exécutant sur l’ordinateur du destinataire. En d’autres termes, il est possible d’envoyer un message vers un serveur, via SMTP, mais il n’est pas possible de demander un message à un serveur. La lecture d’une boite aux lettres passe par un autre protocole, qui est souvent POP3 (Post Office Protocol). POP3 est facile à comprendre. Tout comme SMTP, il peut être utilisé manuellement pour se connecter à un serveur : # telnet localhost pop3 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. +OK POP3 neptune v2001.78rh server ready USER sgill +OK User name accepted, password please PASS qwerty +OK Mailbox open, 2 messages LIST +OK Mailbox scan listing follows 1 442 2 522 . RETR 1 +OK 442 octets Path: <[email protected]> Received: from hakimb (neptune [127.0.0.1]) ……… ……… Page 4 Postfix ……… fin du message . QUIT Connection closed by foreign host. # IMAP4 Internet Message Access Protocol Port 143 IMAP signifie Interactive Mail Access Protocol. L' IMAP est plus récent que le POP et permet de gérer vos messages directement sur le serveur distant à partir de votre ordinateur connecté. Le principal avantage est la synchronisation parfaite entre votre logiciel de messagerie et le serveur. Toutes les manipulations (lecture, effacement, changement de place de vos messages) effectuées à partir de votre logiciel de messagerie seront répercutées sur le serveur et réciproquement. Vous aurez ainsi une image similaire de votre boîte aux lettres sur votre ordinateur et sur le serveur. Contrairement au POP, les messages ne sont pas rapatriés systématiquement, seules les entêtes le sont. Cela vous laisse ainsi le choix de lire ce qui vous intéresse. Lorsque vous décidez de lire un message, celui-ci est rapatrié sur votre ordinateur mais il n' est pas effacé du serveur. Si vous l' effacez sur votre PC ou Mac, alors il sera aussi effacé du serveur. Bien entendu ces manipulations doivent être faites en mode connecté afin que la synchronisation puisse être effective en temps réel. Si vous n' êtes pas connecté, cette synchronisation se fera lors de votre prochaine connexion. L' utilisation de ce protocole devient très intéressante lorsque l' on consulte sa messagerie à partir de différents ordinateurs ou terminaux, car toutes les actions effectuées seront synchronisées avec le serveur, vous retrouvez ainsi toujours le même environnement. L' IMAP est en fait une version très améliorée du POP, ce dernier devrait être peu à peu remplacer par l' autre. # telnet localhost imap Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. Page 5 Postfix * OK [CAPABILITY IMAP4REV1 LOGIN-REFERRALS STARTTLS AUTH=LOGIN] neptune IMAP4rev1 2001.315rh at Wed, 29 Jan 2003 02:05:15 -0500 (EST) Les boites aux lettres Sur un système Linux, votre boite aux lettres est un fichier situé dans le répertoire /var/spool/mail et portant votre nom de login. Chaque message, dans ce fichier, débute par une ligne From : Cette ligne respecte un format bien défini, qui permet aux programmes de reconnaître la fin d’un message et le début du suivant. Après la ligne From :, on trouve les différents en-têtes, que nous expliquerons dans la section suivante. Le dernier en-tête est suivi d’une ligne vierge, après laquelle se trouve le corps du message. Voici un exemple : $ more /var/spool/mail/pierre From [email protected] Mon Jan 27 23:44:52 2003 Return-Path: <[email protected]> Received: from localhost (root@localhost) by localhost.localdomain (8.11.6/8.11.6) with ESMTP id h0S4iqX01883; Mon, 27 Jan 2003 23:44:52 -0500 Date: Mon, 27 Jan 2003 23:44:52 -0500 (EST) From: root <[email protected]> To: [email protected] cc: [email protected] Subject: test Message-ID: <Pine.LNX.4.44.0301272344010.1877-100000@neptune> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Ceci est un test $ Installation L’installation de Postfix se fait à partir du paquetage rpm suivant : postfix-2.0 Page 6 Postfix Pour que Postfix deviennent l’agent de transport de courrier par défaut, il faut l’activer à l’aide de la commande alternatives : # chkconfig sendmail off # service sendmail stop # alternatives --config mta There are 2 programs which provide 'mta'. Selection Command ----------------------------------------------*+ 1 2 /usr/sbin/sendmail.sendmail /usr/sbin/sendmail.postfix Enter to keep the current selection[+], or type selection number: 2 # chkconfig postfix on # service postfix start Cette commande modifie les liens symboliques qui se trouve dans le répertoire /etc/alternatives. Configuration La majeure partie du travail de configuration consiste à adapter le fichier /etc/postfix/main.cf. Les modifications doivent être effectuées à partir de l’administrateur root. Avant toute modification, il est prudent de sauvegarder le fichier original : # cp /etc/postfix/main.cf /etc/postfix/main.cf.reference Éditer le fichier /etc/postfix/main.cf et modifier les lignes suivantes afin de mettre des paramètres adaptés : myhostname = mail.is-a-geek.net mydomain = is-a-geek.net myorigin = $mydomain mynetworks = 192.168.1.0/24, 127.0.0.0/8 #inet_interfaces = 192.168.1.1 mydestination = $myhostname, localhost.$mydomain, $mydomain Page 7 Postfix Le serveur DNS du domaine is-a-geek.net devra contenir l' enregistrement MX mail.is-a-geek.net. Pour plus de détail sur la configuration de Postfix consultez la documentation en ligne : http://x.guimard.free.fr/postfix/ myhostname défaut : voir la sortie de "postconf -d" Le nom de machine Internet de ce système de messagerie. Par défaut, il vaut le résultat de gethostname() au format pleinement. $myhostname est utilisé comme valeur par défaut pour beaucoup d' autres paramètres de configuration. Exemple : myhostname = host.domain.tld mydomain défaut : voir la sortie de "postconf -d" Le nom de domaine Internet de ce système de messagerie. Par défaut, ce paramètre vaut use $myhostname oté de son premier composant. $mydomain est utilisé comme valeur par défaut pour beaucoup de paramètres de configuration. Exemple : mydomain = domain.tld myorigin défaut : $myhostname Le domaine par défaut utilisé pour les messages postés localement. La valeur par défaut de $myhostname, est adéquate pour les petits sites. Si vous contrôlez un domaine avec de multiples machines, vous devrez changer celà en $mydomain et (2) mettre en place une base d' alias globale qui référencera tous les [email protected]. Exemple : Page 8 Postfix myorigin = $mydomain mynetworks défaut : voir la sortie de "postconf -d" La liste des clients SMTP "internes" qui ont plus de privilèges que les "étrangers". En particulier, ces clients SMTP internes sont autorisés à relayer du courrier via Postfix. Voyez le paragraphe du paramètre smtpd_recipient_restrictions Vous pouvez indiquer la liste des adresses réseaux autorisées à la main ou laisser Postfix le faire (valeur par défaut. Voyez la description du paramètre mynetworks_style pour plus d' information. Autrement, vous pouvez renseigner mynetworks à la main auquel cas Postfix ignore le paramètre mynetworks_style. Indiquez une liste d' expressions réseau/masque, séparé par des virgules et/ou des espaces. Continuez les lignes longues en commençant la ligne suivante par des espaces. Le masque indique le nombre de bits de la partie réseau de l' adresse. Vous pouvez également indiquer des "/noms/de/fichiers" ou des expressions "type:table". Un "/nom/de/fichier" de correspondances est remplacé par son contenu; une table de correspondances "type:table" correspond lorsqu' une de ses clefs correspond (le résultat de la consultation est ignoré). La recherche est effectuée de gauche à droite et s' arrête à la première correspondance. Indiquez "!expression" pour exclure une adresse ou un sous-réseau de la liste. Exemples : mynetworks = 168.100.189.0/28, 127.0.0.0/8 mynetworks = !192.168.0.1, 192.168.0.0/28 mynetworks = $config_directory/mynetworks mynetworks = hash:/etc/postfix/network_table inet_interfaces défaut : all Page 9 Postfix Les adresses réseau par lesquelles le système de messagerie reçoit les messages. Par défaut, le logiciel accepte toutes les interfaces de la machine. Ce parametre contrôle également la livraison des messages à utilisateur@[address.ip]. Lorsque inet_interfaces ne contient qu' une seule adresse IP qui n' est pas l' adresse de la boucle locale (réseau 127), le client SMTP de Postfix utilisera cette adresse comme adresse source pour le courrier sortant. Sur un firewall hébergement plusieurs domaines avec des instances séparées de Postfix écoutant sur les interfaces "inside" et "outside", ceci peut éviter à chaque instance d' être capable d' atteindre des serveurs de "l' autre coté" du firewall. Mettre smtp_bind_address à 0.0.0.0 évite ce problème potentiel. Une meilleure solution est de laisser inet_interfaces à la valeur par défaut et au lieu d' utiliser des adresses IP explicites dans le fichier master.cf. Ceci préserve la détection des boucles SMTP en s' assurant que chaque coté du firewall connait l' autre adresse IP de la même machine. Renseigner $inet_interfaces avec un adresse IP unique est utile pour l' hébergement virtuel de domaines sur une adresse IP secondaire, lorsque chaque adresse IP sert un domaine différent (et a une valeur $myhostname différente). Voyez aussi le paramètre proxy_interfaces, pour les adresses transférées par le biais d' un proxy ou d' un traducteur d' adresse. Note : vous devez arrêter et redémarrer Postfix lorsque ce paramètre change. mydestination défaut : $myhostname, localhost.$mydomain, localhost Liste des domaines livrés par le transporteur de messages $local_transport. Par défaut c' est l' agent local(8) de livraison qui qui recherche les destinataires dans /etc/passwd et /etc/aliases. Le serveur SMTP valide les adresses de destination avec $local_recipient_maps et rejette les destinataires inconnus. Voyez également la classe local domain dans le fichier ADDRESS_CLASS_README. La valeur de mydestination par défaut ne correspond qu' à la machine hôte. Sue une passerelle de messagerie d' un domaine, vous devrez également inclure $mydomain. Page 10 Postfix La méthode de livraison $local_transport est également sélectionnée pour le courrier adressé à utilisateur@[l.adresse.IP] du système de messagerie (toutes les adresses IP indiquées dans inet_interfaces et proxy_interfaces). Attention : N' indiquez pas les noms des domaines virtuels - ils sont indiqués ailleurs. Voyes la page VIRTUAL_README pour plus d' information. N' indiquez pas les noms des domaines dont votre machine est un MX de secours. Reportez-vous à la page STANDARD_CONFIGURATION_README pour la mise en oeuvre de secours MX. Par défaut, le serveur SMTP de Postfix rejette le courrier des destinataires non listés avec le paramètre local_recipient_maps. Pour plus d' information, consultez les paragraphes local_recipient_maps et unknown_local_recipient_reject_code. Indiquez une liste de host or noms de domaine, "/nom/de/fichier" or expressions "type:table", séparé par des virgules et/ou des espaces. Un "/nom/de/fichier" de correspondances est remplacé par son contenu; une table de correspondances "type:table" correspond lorsqu' une de ses clefs correspond au nom (le résultat de la consultation est ignoré). Continuez les lignes longues en commençant la ligne suivante par des espaces. Exemples : mydestination = $myhostname, localhost.$mydomain $mydomain mydestination = $myhostname, localhost.$mydomain www.$mydomain, ftp.$mydomain Synonymes Il est souvent nécessaire de réadresser des messages. Ainsi, un utilisateur peut être momentanément absent, et les messages qui lui sont destinés sont alors dirigés vers son ordinateur portable. Le réacheminement repose sur l’utilisation de synonymes, souvent définis dans le fichier /etc/aliases. Ce fichier contient des lignes comme : postmaster : root Celle-ci signifie que tout message destiné à postmaster sera réacheminé vers root. La destination n’est pas obligatoirement locale : Page 11 Postfix werbmaster : [email protected] Pour des raisons d' optimisation, postfix, tout comme sendmail, exige que les fichiers tels que le fichier d' alias soit traité comme une base de données au format DBM ou DB. Pour générer ces formats, on utilise l' utilitaire /usr/sbin/postalias. A noter qu' en utilisant Webmin, cette opération est effectuée automatiquement. En adoptant le format DB la commande pour générer le fichier /etc/postfix/aliases.db à partir du fichier /etc/postfix/aliases est : # postalias hash:/etc/postfix/aliases UW-IMAP UW-IMAP est le serveur imap/pop3 de l' Université de Washington fourni avec Fedora. La documentation de UW-IMAP se trouve sur le site http://www.washington.edu/imap/. Installation L’installation des serveurs imap et pop3 se fait avec les paquetages rpm se trouvant sur les CD de Fedora : imap-2002d-3 php-imap-4.3.3-6 UW-IMAP utilise le démon xinetd, qui doit être configuré pour faire appel à ipop3d et imapd. Les commandes suivantes permettent donc de démarrer pop3 et imap: chkconfig pop3 on chkconfig imap on service xinetd restart Pour tester le fonctionnement de pop3 il suffit de faire: telnet 127.0.0.1 110 et pour imap telnet 127.0.0.1 143 Page 12 Postfix Squirrelmail Un webmail est une interface web pour consulter son courrier électronique. Squirrelmail est un webmail écrit en PHP4. Il supporte les protocoles IMAP et SMTP, et toutes les pages générées le sont en pur HTML (sans aucun Javascript), ceci afin d' être compatible avec le maximum de navigateurs. L’installation se fait à l’aide du paquetage rpm: squirrelmail-1.4 Ce paquetage est disponible avec le CD de Fedora. Une fois installé, il suffit de taper l’URL suivant dans votre navigateur préféré: http://127.0.0.1/webmail. Page 13 Postfix SpamAssassin SpamAssassin est un filtre anti-spam performant avec des fonctionnalités d' auto-apprentissage. Spamassassin n’efface pas le spam, il ajoute dans le sujet du mail le mot SPAM. Lorsque postfix reçoit du courrier il utilise procmail pour le stocker dans la boite aux lettre (/var/spool/mail). Il est possible de configurer procmail de façon à filtrer le courrier électronique à l’aide de spamassassin. Postfix procmail spamassassin /var/spool/ mail Installation Spamassassin est doisponible en paquetage rpm avec la majorité des produits RedHat et Fedora. La version tar est disponible sur le site de spamassassin : http://spamassassin.apache.org/ Page 14 Postfix Démarrage La commande chkconfig permet de démarrer spamassassin au démarrage : chkconfig - - level 35 spamassasin on Pour démarrer/arrêter/repartir spamassassin la commande service peut être utilisé : service spamassassin start service spamassassin stop service spamassassin restart Configuration procmail Le fichier /etc/procmailrc est utilisé par procmail pour déterminer les logiciels qui seront utilisés pour filtrés les courriers électroniques. Par défaut ce fichier n’existe pas. Spamassassin fournis un fichier appelé /etc/mail/spamassassin/spamassassin-spamc.rc qui facilite la création du fichier procmailrc. cp /etc/mail/spamassassin/spamassassin-spamc.rc /etc/procmailrc Configuration La configuration se fait dans le fichier /etc/mail/spamassassin/local.cf. Voici un exemple de fichier : ################################################################### # See 'perldoc Mail::SpamAssassin::Conf' for # details of what can be adjusted. ################################################################### # # These values can be overridden by editing # ~/.spamassassin/user_prefs.cf (see spamassassin(1) for details) # # How many hits before a message is considered spam. The lower the Page 15 Postfix # number the more sensitive it is. required_hits 5.0 # Whether to change the subject of suspected spam (1=Yes, 0=No) rewrite_subject 1 # Text to prepend to subject if rewrite_subject is used subject_tag *****SPAM***** # Encapsulate spam in an attachment (1=Yes, 0=No) report_safe 1 # Use terse version of the spam report (1=Yes, 0=No) use_terse_report 0 # Enable the Bayes system (1=Yes, 0=No) use_bayes 1 # Enable Bayes auto-learning (1=Yes, 0=No) auto_learn 1 # Enable or disable network checks (1=Yes, 0=No) skip_rbl_checks 0 use_razor 1 use_dcc 1 use_pyzor 1 # Mail using languages used in these country codes will not be marked # as being possibly spam in a foreign language. # - english ok_languages en # Mail using locales used in these country codes will not be marked # as being possibly spam in a foreign language. ok_locales en Page 16 Postfix Vérification du fonctionnement Deux fichiers de test sont fournis avec spamassassin : • /usr/share/doc/spamassassin-2.60/sample-nonspam.txt • /usr/share/doc/spamassassin-2.60/sample-spam.txt On peut utiliser la commande suivante pour tester le fonctionnement : spamassassin –t < sample-spam.txt Anomy Sanitizer Anomy Sanitizer est un filtre mail qui corrige les messages défectueux et bloque les pièces jointes suspectes. Il peut aussi se charger d' appeler l' antivirus. http://mailtools.anomy.net. ClamAV ClamAV est un antivirus Unix sous licence GPL basé sur le projet OpenAntivirus. http://www.clamav.net/. Intégration de l'antivirus dans Anomy Sanitizer Il faut ensuite modifier la configuration dans le fichier /etc/sanitizer.cfg : Modifier les lignes : file_list_1_policy = drop file_list_1_scanner = 0 en : file_list_1_policy = accept:accept:drop:save file_list_1_scanner = 0:1:3:/usr/local/anomy/chk_virus.sh %FILENAME %REPLY_TO Avec cette configuration, les pièces jointes susceptibles de contenir des virus seront scannées. Page 17 Postfix Filtrage avec Postfix : La technique de filtrage par script présenté dans cette section est celle proposée par la documentation de Postfix. Il faut d’abord créer un répertoire temporaire: # groupadd filter # useradd filter -s /bin/false -d /var/spool/filter -g filter # rm -f /var/spool/filter/.* Voici le script dont a besoin Postfix pour effectuer le filtrage : #!/bin/sh # # filter.sh # # Simple filter to plug Anomy Sanitizer and SpamAssassin # into the Postfix MTA # # From http://advosys.ca/papers/postfix-filtering.html # Advosys Consulting Inc., Ottawa # # For use with: # Postfix 20010228 or later # Anomy Sanitizer revision 1.49 or later # SpamAssassin 2.42 or later # # Note: Modify the file locations to match your particular # server and installation of SpamAssassin. # File locations: # (CHANGE AS REQUIRED TO MATCH YOUR SERVER) INSPECT_DIR=/var/spool/filter SENDMAIL="/usr/lib/sendmail -i" ANOMY=/usr/local/anomy SANITIZER=/usr/local/anomy/bin/sanitizer.pl ANOMY_CONF=/usr/local/anomy/anomy.conf ANOMY_LOG=/dev/null Page 18 Postfix SPAMASSASSIN=/usr/local/bin/spamassassin export ANOMY # Exit codes from <sysexits.h> EX_TEMPFAIL=75 EX_UNAVAILABLE=69 cd $INSPECT_DIR || { echo $INSPECT_DIR does not exist; exit $EX_TEMPFAIL; } # Clean up when done or when aborting. trap "rm -f out.$$" 0 1 2 3 15 cat | $SPAMASSASSIN -x | $SANITIZER \ $ANOMY_CONF 2>>$ANOMY_LOG > out.$$ || \ { echo Message content rejected; exit $EX_UNAVAILABLE; } $SENDMAIL "$@" < out.$$ exit $? ajoutez à la fin de /etc/postfix/master.cf : # ============================================================= # service type private unpriv chroot wakeup # (yes) (yes) (never) (100) (yes) maxproc command # ============================================================= filter unix - n n - 10 pipe flags=Rq user=filter argv=/usr/local/anomy/filter.sh -f ${sender} -- ${recipient} Page 19
Documents pareils
Installation Serveur Mail Postfix, Amavisd, Mysql, Spamassassin
alias vers lui même sera utilisé par postfixadmin. le 4ème INSERT est lui un simple alias virtuel. Le 7ème INSERT
est un compte (boite email) virtuel, qui utilise un mot de passe encrypté en MD5. N...