{{tag>Brouillon Postfix SMTP Perl}}
= Notes Postfix
Voir http://linuxserverworld.com/how-to-flush-and-delete-postfix-mail-queue-and-its-various-operations/
[[https://blog.valouille.fr/2014/09/mettre-en-place-une-limite-sur-le-nombre-de-mails-envoyes-par-ip-sur-postfix/|Mettre en place une limite sur le nombre de mails envoyés par IP sur Postfix]]
Source : http://www.cyberciti.biz/tips/howto-postfix-flush-mail-queue.html
Voir la file d'attente
mailq
Vérif syntax
postfix check
Sortir les mails de la file attentes (essaye de les ré-envoyer)
postfix flush
Effacer tous les courriels de la file d'attente
postsuper -d ALL
Effacer tous les mails de la "deferred queue"
postsuper -d ALL deferred
Source : http://www.cyberciti.biz/tips/howto-postfix-flush-mail-queue.html
''postfix-delete.pl''
#!/usr/bin/perl
$REGEXP = shift || die "no email-adress given (regexp-style, e.g. bl.*\@yahoo.com)!";
@data = qx;
for (@data) {
if (/^(\w+)(\*|\!)?\s/) {
$queue_id = $1;
}
if($queue_id) {
if (/$REGEXP/i) {
$Q{$queue_id} = 1;
$queue_id = "";
}
}
}
#open(POSTSUPER,"|cat") || die "couldn't open postsuper" ;
open(POSTSUPER,"|postsuper -d -") || die "couldn't open postsuper" ;
foreach (keys %Q) {
print POSTSUPER "$_\n";
};
close(POSTSUPER);
Efface de la file d'attente tous les message provenant ou en destination du domain fackspamdomain.com
./postfix-delete.pl fackspamdomain.com
Efface tous les courriel contenant le mot "xyz"
./postfix-delete.pl xyz
http://www.system-linux.eu/index.php?post/2009/01/27/Traitement-de-Queue-mail-Postfix
Supprimer un message de la file d'attente
postsuper -d E795D42A16
Mettre un messages en attente (hold) :
postsuper -h E795D42A16
Remettre en file d'attente un message :
postsuper -r E795D42A16
Afficher le contenu d'un message :
postcat -q E795D42A16
Pour forcer l'envoie de messages spécifique à un domaine non présent dans les paramètres relay_domains de la configuration Postfix :
Ajouter cette ligne dans le fichier main.cf :
''main.cf''
fast_flush_domains = $relay_domains mondomain.fr
Puis :
postqueue -s mondomain.fr
== Autre
=== Exemple de config
''/etc/aliases''
plop: plop@localhost.acme.fr
postalias /etc/aliases
''/etc/postfix/main.cf''
myorigin = localhost.acme.fr
mydestination = $myhostname, localhost.$mydomain, localhost, $myorigin,
transport_maps = hash:/etc/postfix/transport
mydomain = acme.fr
myhostname = myhostname
relayhost = 192.168.6.28
default_transport = smtp
relay_transport = smtp
#inet_interfaces = localhost
inet_interfaces = loopback-only
inet_protocols = ipv4
systemctl reload postfix
''/etc/postfix/transport''
laposte.fr :
acme.fr :
localhost.acme.fr local:
* error: domaine non autorise
postmap /etc/postfix/transport
/usr/sbin/postdrop -r
== Conf sur Debian
Serveur de référence
apt-get install debconf-utils
debconf-get-selections |grep -e '^postfix
Nouveau serveur
LANG=C dpkg-reconfigure postfix
Serveur de référence
postconf -n
Nouveau serveur
# Exemple
postconf -e relayhost=
postconf -e myorigin=/etc/mailname
FQDN ici ''/etc/mailname''
== Pb
=== Pb FQDN
Erreur :
* Helo command rejected: need fully-qualified hostname;
* Sender address rejected: Domain not found (in reply to RCPT TO command))
''/var/log/mail''
Helo command rejected: need fully-qualified hostname;
''/etc/mailname''
smtp.acme.fr
postconf -e myhostname=smtp.belaris.fr
postfix check
service postfix reload
== Test Question
What is the function of this Postfix configuration ?
relayhost =
relay_transport = relay
relay_domains = static:ALL
smtpd_end_of_data_restrictions = check_client_access static:discard