en cours de rédaction...
Une excellente traduction de la documentation officiel maintenu par X.guimard@ existe déja à l'adresse http://postfix.traduc.org. Je vous conseille de vous y référer, en particulier, la page de référence de tous les paramètres qu'il est possible d'utiliser dans Postfix : http://postfix.traduc.org/index.php/postconf.5.html.
[root@linux /]$ find /var/spool/postfix/active -type f | wc -l [root@linux /]$ find /var/spool/postfix/active /var/spool/postfix/deferred -type f | wc -l
Queue des mails en cours de traitement. Le répertoire de stockage est en général /var/spool/postfix/active
Queue des mails en attente de re-traitement. Une ou plusieurs tentatives de livraisons ont échoués. Postfix y place le mail pour gérer en priorité les mails que la queue ACTIVE. Le répertoire de stockage est en général /var/spool/postfix/deferred
Queue des mails dont le traitement est désactivé. Seul une intervention de l'administrateur peut sortir le mail de cette queue à l'aide de la commande '''postconf -H''' Le répertoire de stockage est en général /var/spool/postfix/hold
Commande de gestion de la configuration. Principalement des paramètres de main.cf
[root@linux /]$ postconf | sort | less
[root@linux /]$ postconf -n
[root@linux /]$ postconf -d | sort | less
[root@linux /]$ postconf mynetworks
[root@linux /]$ postconf -d mynetworks
[root@linux /]$ postconf -e 'mynetworks = 127.0.0.1' [root@linux /]$ postfix reload
[root@linux /]$ postconf -m
[root@linux /]$ postconf -t
[root@linux /]$ postconf -t > /etc/postfix/bounce_template.cf [root@linux /]$ postconf -e 'bounce_template_file = /etc/postfix/bounce_template.cf' [root@linux /]$ postfix reload
[root@linux /]$ postconf -b
[root@linux /]$ postcat -q 75062179A8 | more
Commande de gestion des files d'attente. S'utilise avec un numéro d'ID de queue ou avec le mot clé ALL
[root@linux /]$ postsuper -d 75062179A8
[root@linux /]$ postsuper -d ALL
[root@linux /]$ postsuper -h 75062179A8
[root@linux /]$ postsuper -H 75062179A8 [root@linux /]$ postfix flush
[root@linux /]$ postfix reload
[root@linux /]$ postfix flush
[root@linux /]$ mailq
* : Le mail est dans la queue ACTIVE ! : Le mail est dans la queue HOLD Aucun : Le mail est dans la queue DEFERRED
- Affichage du QUEUE_ID de chaque mail
for QUEUE_ID in `mailq | grep -E '^[0-9A-F].* ' | awk '{ print $1}' | cut -d '*' -f1`; do echo $QUEUE_ID; done
- Destruction définitive des mails de notification avec expéditeur MAILER-DAEMON :
for QUEUE_ID in `mailq | grep -E '^[0-9A-F].* ' | grep ' MAILER-DAEMON' | awk '{ print $1}' | cut -d '*' -f1`; do
postsuper -d $QUEUE_ID
done
ATTENTION rédaction en cours : Ces règles doivent encore être testés avant d'être utilisé en production !!'''''
Les exemples ci-après, ont les mêmes pré-requis :
La configuration décrite dans ce chapitre, permet de fournir une méthode qui devrait s'adapter à la majorité des besoins.
Scénario et architecture d'exemple :
# Commentez la tâche SMTPD d'origine avec le signe dièse comme ci-dessous : #smtp inet n - n - - smtpd # ETH0 : Interface dédié au WAN (internet) 192.168.1.1:smtp inet n - n - - smtpd # ETH1 : Interface dédié au LAN 192.168.1.55:smtp inet n - n - - smtpd -o cleanup_service_name=cleanup-lan -o mynetworks=hash:/etc/postfix/local-mynetworks -o smtpd_reject_unlisted_sender=yes -o smtpd_reject_unlisted_recipient=no -o smtpd_client_restrictions=permit_mynetworks,reject -o smtpd_helo_restrictions= -o smtpd_sender_restrictions=reject_non_fqdn_sender,hash:/etc/postfix/local-relays,reject -o smtpd_recipient_restrictions=reject_non_fqdn_recipient,permit_mynetworks,reject # Localhost 127.0.0.1:smtp inet n - n - - smtpd -o mynetworks=127.0.0.1 -o relay_recipient_maps= -o smtpd_client_restrictions=permit_mynetworks,permit -o smtpd_helo_restrictions= -o smtpd_sender_restrictions=permit_mynetworks,permit -o smtpd_recipient_restrictions=permit_mynetworks,reject_unauth_destination,permit -o smtpd_end_of_data_restrictions= cleanup-lan unix n - n - 0 cleanup -o header_checks=regexp:/etc/postfix/local-header-checks-lan
192.168.1.50 # Serveur de messagerie Domino1
exemple.net OK
exemple.net REJECT ANTI-SPOOFING
/^Received:/ IGNORE /^X-Mailer:/ IGNORE /^X-MIMETrack:/ IGNORE
Attention ce fichier peut se trouver à des endroits différents selon l'OS, utilisez la commande postconf | grep -E '(alias_database|alias_maps)' pour savoir lequel Postfix utilise vraiment. La seule ligne importante de ce fichier est celle commençant par root: Elle est souvent en commentaires avec un dièse : #root: .... root: notify-postfix@exemple.net
transport_maps = hash:/etc/postfix/local-transport relay_domains = $mydestination, hash:/etc/postfix/local-relays relay_recipient_maps = hash:/etc/postfix/local-directory smtpd_client_restrictions = permit_mynetworks, check_client_access hash:/etc/postfix/local-whitelist-clients, check_client_access hash:/etc/postfix/local-blacklist-clients, reject_rbl_client sbl-xbl.spamhaus.org, reject_rbl_client list.dsbl.org, reject_rbl_client dnsbl.njabl.org smtpd_helo_restrictions = check_helo_access hash:/etc/postfix/local-exceptions-helo, check_helo_access hash:/etc/postfix/local-blacklist-helo, check_helo_access hash:/etc/postfix/local-spoofing smtpd_recipient_restrictions = check_recipient_access hash:/etc/postfix/local-blacklist-recipients, reject_non_fqdn_recipient, reject_unauth_destination, check_policy_service inet:127.0.0.1:10023, reject_unlisted_recipient, check_recipient_access hash:/etc/postfix/local-filters smtpd_sender_restrictions = permit_mynetworks, check_sender_access hash:/etc/postfix/local-specifics-senders, reject_non_fqdn_sender, check_sender_access hash:/etc/postfix/local-spoofing, check_sender_access hash:/etc/postfix/local-blacklist-senders smtpd_reject_unlisted_recipient = yes smtpd_reject_unlisted_sender = no smtpd_delay_reject = yes smtpd_helo_required = yes mynetworks = 127.0.0.0/8