Problem:
Aus irgendeinem Grund sammeln sich Mails in der Queue. Meist ausgelöst durch eingehende/ausgehende Spam-Mails, eingehende Bounces, oder Mail-Loops, etc.
Diese Mails will man aus der Queue löschen, andere hingegen bevorzugt abarbeiten lassen.
Lösung:
Dazu gibt es inzwischen drei Lösungen:
- Webmin: die aktuelle Webmin-Version bringt eine komfortable Weboberfläche, mit der man die gesamte Mail-Queue (auch von Qmail) ansehen und einzelne Mails löschen kann.
- qmHandle: ein in Perl geschriebenes OpenSource-Programm ohne große Installation für die Commandozeile.
- mailqueuemng: seit Plesk 9.irgendwas liefert Parallels eine modifizierte Version von qmHandle mit aus.
Da man zu Webmin nicht viel erklären muß, widme ich mich jetzt nur noch qmHandle / mailqueuemng:
Installation von qmHandle:
Die aktuelle Version auf sourceforge.net kontrollieren!
cd /usr/local/src wget http://heanet.dl.sourceforge.net/sourceforge/qmhandle/qmhandle-1.3.2.tar.gz tar xzf qmhandle-1.3.2.tar.gz cp qmhandle-1.3.2/qmHandle /var/qmail/bin/. chmod 700 /var/qmail/bin/qmHandle
Nun laden wir die Datei nochmal in einem Texteditor und suchen nach <code>$stopqmailcode>. Dieser steht auf den <code>svccode>. Für Plesk stimmt diese Angabe nicht und muss auf <code>/etc/init.d/qmailcode> stehen. Also ändern wir die Kommentarzeichen so ab, dass <code>qmHandlecode> die richtigen Start-/Stop-Scripte nutzt.
Aufruf und Parameter:
Lediglich ein kurzer Auszug. Die vollständige Hilfe erhält man mit einem Aufruf ohne Parametern.
Hilfe | <code>qmHandlecode> |
local Queue-Liste | <code>qmHandle -Lcode> |
remote Queue-Liste | <code>qmHandle -Rcode> |
Mail anzeigen | <code>qmHandle -m[MessageNumber]code> |
Mail löschen | <code>qmHandle -d[MessageNumber]code> |
mailqueuemng
Die Plesk-Version basiert auf qmHandle-1.2.0. Sie wurde von Parallels aber optimiert und besser auf deren Plesk-Eigenschaften abgerichtet. Der Aufruf findet sich unter <code>/usr/local/psa/admin/bin/mailqueuemngcode>. Die Grund-Parameter sind identisch es wurden allerdings einige nützliche Parameter hinzugefügt die nicht im Hilfe-Text auftauchen:
<code>--start-date:Zahlcode> <code>--end-date:Zahlcode> |
Der Queue-Eintrag soll älter/jünger als Zahl sein. Zahl Angabe in Unix-Sekunden. |
<code>--min-size:Zahlcode> <code>--max-size:Zahlcode> |
Der Queue-Eintrag soll kleiner/größer als Zahl sein. Zahl Angabe in Bytes. |
<code>--min-age:Zahlcode> <code>--max-age:Zahlcode> |
Der Queue-Eintrag soll älter/jünger als Heute-Zahl sein. Zahl: Angabe in Sekunden. |
<code>--sender:Stringcode> <code>--recipient:Stringcode> |
Der Queue-Eintrag ist an/von String. String: muss in der Adresse enthalten sein. |
<code>--sort:Stringcode> <code>--rsort:Stringcode> |
Sortierung der Queue. String: subject|sender|recipients|date|size|age. |
<code>--removecode> | Die so selektierte Liste kann dann mit diesem zusätzlichen Parameter gelöscht werden. |