Rechercher efficacement des e-mails dans Postfix

Lorsque l’on utilise Postfix, on est à la fois en présence d’un outil extrêmement puissant et d’une nasse insondable de possibles qui peuvent nous faciliter grandement la vie…pour peu qu’on soit initié. C’est pourquoi la vocation de cet article est de partir de quelques commandes intelligibles qui vous feront gagner un temps précieux et tirer immédiatement parti de votre serveur de messagerie.

Obtenir plus d’informations sur un e-mail identifié par son ID

Si vous désirez connaître la vie complète d’un e-mail qui transite via votre serveur de messagerie, utilisez la commande tail pour lire les dernières lignes du fichier courant mail.log et filtrer sur l’ID du mail. L’option -10000 indique que l’on désire remonter 10000 lignes avant la fin du fichier. Vous pouvez bien sûr ajuster cette commande comme bon vous semble.

root@srv-mail:/var/log# tail -10000 /var/log/mail.log | egrep ': 00CE025A260: '
 Jan 6 10:23:05 srv-mail postfix/smtpd[28680]: 00CE025A260:
 client=srv-exchange.domaine.com[192.168.100.6]
 Jan 6 10:23:05 srv-mail postfix/cleanup[29953]: 00CE025A260:
 message-id=<AB74FB167D7D5E40BE45E3DA6CCEBBD01AF8B3@srv-exchange.domaine.com>
 Jan 6 10:23:06 srv-mail postfix/qmgr[25146]: 00CE025A260:
 from=<source@domaine.com>, size=3349, nrcpt=1 (queue active)
 Jan 6 10:23:07 srv-mail postfix/smtp[29697]: 00CE025A260:
 to=<destination@domaine.com>, relay=mta.domaine2.com[93.101.255.110]:25,
 delay=1.3, delays=0.01/0/0.67/0.62, dsn=2.0.0,
 status=sent (250 ok 1242116587 qp 21061 server-119.tomer-170.domaine2.com!12421165)
 Jan 6 10:23:07 srv-mail postfix/qmgr[25146]: 00CE025A260: removed

Pour faire un peu de littérature sur l’output de cette commande, on peut indiquer que le mail ainsi filtré arrive d’un serveur Exchange sur le serveur Postfix via le daemon smtpd puis reçoit immédiatement un message-id via le daemon cleanup. Le mail à présent déplacé vers le dossier incoming est pris en charge par le daemon queue manager (qmgr) qui organise la livraison du fichier grâce aux informations de routage renseignées dans le fichier /etc/postfix/main.cf.

Chercher les logs récents concernant un domaine ou une adresse e-mail

Il est souvent intéressant de chercher les logs récents concernant des messages appartenant à un domaine ou une adresse de messagerie donnée. Une utilisation possible consisterait à identifier un domaine de messagerie qui arrive en grand nombre sur le serveur et à lui appliquer une politique (de rétention, par exemple) via script.

Dans l’exemple suivant, on filtre tous les messages envoyés vers le domaine gmail.com (to). Notez l’argument -i qui permet d’ignorer la casse et  le .* qui permet de ne pas spécifier de nom d’utilisateur sur le domaine, le tout redirigé dans un fichier navigable grâce à la commande less. Enfin, vous pouvez échapper votre commande avec un antislash avant l’extension du domaine recherché.

root@srv-mail:# tail -10000 /var/log/mail.log | egrep -i ': to=<.*@gmail.com>,'
Jan  6 16:25:08 srv-mail postfix/qmgr[28907]: 302AC25A247:
from=<john.doe@gmail.com>, size=2933, nrcpt=1 (queue active)
Jan  6 16:27:03 srv-mail postfix/qmgr[28907]: D6AB425A247:
from=<james.nugent@gmail.com>, size=64081, nrcpt=1 (queue active)
Jan  6 16:29:22 srv-mail postfix/qmgr[28907]: EF4BC25A247:
from=<bo897wyoming@gmail.com>, size=4975, nrcpt=1 (queue active)
Jan  6 16:29:57 srv-mail postfix/qmgr[28907]: 7AA0125A247:
from=<madakrf789@gmail.com>, size=6943, nrcpt=1 (queue active)

Même exemple avec une adresse de messagerie spécifique, cette-fois ci en réception (from). Ici, on n’est pas sûr de l’adresse de messagerie en question alors on utilise l’astérisque comme wildcard.

root@srv-mail:# tail -10000 /var/log/mail.log | egrep -i ': from=<john.*@gmail.com>,'
Jan  6 16:25:08 srv-mail postfix/qmgr[28907]: 302AC25A247:
from=<john.doe@gmail.com>, size=2933, nrcpt=1 (queue active)
Publicités

,

  1. Poster un commentaire

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s

%d blogueurs aiment cette page :