Retour : Page Principale > sommaire aide > sommaire aide-mémos

Mémo dépannage en cas de surcharge du serveur email / spam


Symptomes

Les emails adressés aux boîtes @tela-botanica.org n'arrivent plus depuis quelques dizaines de minutes / heures

Causes possibles

  • attaque de spam
  • pièce jointe de 400 tonnes qui bouche les toyo
  • plantage du serveur de messagerie (n'est jamais arrivĂ© pour l'instant)

Diagnostic

Utiliser la sonde Spamassassin de Munin pour visualiser le graphique d'activité. Il fournit une indication sur la charge du serveur. Traduction : s'il y a un gros pic c'est qu'on se fait bombarder de spam.

Obtenir quelques infos rapidement
  • Afficher le nombre de message en file d'attente : qmail-qstat
  • Afficher des infos sur ce que traite actuellement Qmail. Permet de repĂ©rer du spam s'il y a de nombreuses adresses hors de France (.ru...) : qmail-qread | less

Qmail trouver les pièces jointes trop importantes
Pour vérifier, si le problème provient de courriel avec des pièces jointes trop importantes :
  • se rendre dans le dossier des mails en cours de traitement : cd /var/qmail/queue
  • lancer le listage des fichiers rĂ©cursivement triĂ© par taille dĂ©croissante : find . -type f | xargs ls -laShrs | grep -v "4.0K"
  • en cas de fichier trop gros, il est possible de les supprimer avec l'outil qmailhandle

Qmailhandle
L'application qmailhandle est disponible dans le dossier /root/qmhandle-1.3.2/qmHandle et permet de gérer la suppression des messages en file d'attente.
ATTENTION : il faut impérativement stopper qmail complètement avant d'utiliser qmHandle. voir ici pour les détails de cette opération.

Pour l'utiliser :
  • cd /root/qmhandle-1.3.2
  • Pour obtenir l'aide : ./qmHandle -h
  • Commande utiles :
    • lister les messages en traitement : ./qmHandle -l | less
    • supprimer un message de la file (ex. message n°12345) : ./qmHandle -d12345
    • supprimer tous les messages contenant un mot clef dans les entĂŞtes (notamment expĂ©diteur et destinataire) : ./qmHandle -h'motclef'

Le problème des failure-notice lors d'attaques de SPAM

Des bombardements de spam arrivent régulièrement (visibles sur Munin à travers l'activité de Spamassassin). Ces messages visent des adresses @tela-botanica.org (forcément sinon notre serveur ne les recevrait pas), mais pas forcément des adresses existantes : souvent les SPAM sont adressés à des boîtes au hasard, genre service-client@tela-botanica.org ou newletter-info@tela-botanica.org. L'ennui dans ce cas, c'est que qmail génère des failure-notice (ou bounce) : il renvoie un message à l'expéditeur en l'avertissant que la livraison a échoué. Or, ce sont ces failure-notice qui engorgent la file d'attente de traitement des emails : notre serveur s'auto-étouffe.

Solution
Le catchall bien sûr ! Il s'agit de mettre en place un boîte email "poubelle" (actuellement devnull@) et de régler qmail pour qu'il transmette à cette boîte tous les messages adressés à un compte inexistant.
Activer ou désactiver ce système revient à changer le contenu du fichier /home/vpopmail/domains/ledomaineconcerne/.qmail-default , en suivant cette syntaxe. Il n'est pas nécessaire de stopper qmail pour faire ça. Par contre il ne faut pas se planter quand on écrit dans ce fichier !

  • avantages :
    • plus de failure-notice qui engorgent le serveur
  • inconvĂ©nients :
    • cette boĂ®te se remplit de SPAM au fur et Ă  mesure, il faut penser Ă  la vider
    • si quelqu'un fait une erreur en Ă©crivant de bonne foi Ă  un membre de l'Ă©quipe (ex: "jenifer@" au lieu de "jennifer@"), il ne recevra pas de notification d'erreur et pensera que son message est bien arrivĂ©... il faut penser Ă  regarder dans devnull@ de temps en temps (procĂ©dure dĂ©sactivĂ©e au profit d'un renvoi pur et simple des mails arrivant dans la boite @devnull vers /dev/null grâce au fichier .qmail contenant simplement "|cat /dev/null" prĂ©sent Ă  la racine du dossier du compte (voir ici