Il arrive parfois que la file de courriel de qmail soit attaquée par du spam.
Pour retrouver quel script envoie du spam, il faut appliquer cette procédure.
Pour repartir sur une nouvelle file d’attente vide (le temps de travailler sur l’épuration de la file actuelle) on peux suivre cette marche à suivre
Cependant, sur le serveur actuellement, on peux recopier une file vide avec les bon droits /var/qmail/queue_good
> service qmail stop > mv /var/qmail/queue /var/qmail/queue_old > cp -p -r /var/qmail/queue_good /var/qmail/queue > service qmail start
… faire un cleanup dans la file queue_old
Puis remettre la bonne file.
Pour faire un cleanup de la file d’attente, j’ai écris un script qui permet d’effacer un courriel selon un mot clef (une adresse en particulier):
script qmail-remove.sh: le paramètre match est la ligne à rechercher
#!/bin/bash if [ ! $1 ] then echo Usage $0 match [dry]; exit fi echo Recherche des courriels contenant la chaine: "$1" echo 2e param: "$2" if [[ "$2" == "dry" ]] then echo Mode dry enable fi cd /var/qmail/queue_old/mess typeset -i TOTAL MATCH let TOTAL=0; let MATCH=0; for file in `find . -type f` ; do let TOTAL++ if grep -qi "$1" $file then #echo $file is matching if [[ "$2" == "dry" ]] then grep -iH "$1" $file else rm -f $file; rm -f ../info/$file; rm -f ../remote/$file; echo $file is deleted fi let MATCH++; fi done echo Total fichiers: $((TOTAL)) echo Total match: $((MATCH))
Une page très intéressante sur la recherche de spam autour de plesk: ici