Titel: Dimke POP3-Check
Bild: Dimke POP3-Check
Erklärung: Dimke POP3-Check ist ein universelles Perl-Skript für Linux- / Unix- Server zur Filterung bzw. bedingten Weiterleitung von Nachrichten in einem POP3- Postfach. Durch die vielen Kommentare ist es ein gutes Lehrobjekt und hervorragender Ausgangspunkt für eigene Experimente und Projekte.

Es war ursprünglich dazu gedacht, innerhalb eines Fax-zu-Mail- Systemes den Spam- Anteil zu beseitigen und Nutzinformationen, in diesem Falle Nachrichten mit Fax- Datei als Dateianhang, an ein bestimmtes Postfach weiterzuleiten.

Funktionsweise: Dimke POP3-Check erfordert Perl Version 5.0 oder höher und setzt auf dem Perlmodul Net::Pop3 auf. Der Aufruf erfolgt zweckmäßigerweise zyklisch über die Unix- Crontab.

Wie den Kommentaren zu entnehmen, wird im ersten Schritt ein POP3- Objekt angelegt, welches sich wie ein dem POP3- Standard folgendes Nachrichtenprogramm verhält. Es wird hierbei eine Verbindung zu einem POP3- Server aufgebaut, welcher in der Konfigurationsdatei pop3chk.cfg, neben Anmeldenamen und Kennwort, angegeben werden kann.
Nachdem die Zahl der neuen Nachrichten ermittelt wurde, erfolgt die weitere Verarbeitung innerhalb einer Hauptschleife, die, bei mindestens einer neuen Nachricht, genau einmal durchlaufen wird.
Es erfolgt nun anhand eines innerhalb der Konfigurationsdatei definierbaren Suchmusters die Unterscheidung, ob es sich bei der aktuellen Nachricht, deren Nachrichtenkopf mittels des POP3- Kommandos top geladen wird, um Spam oder Nutzinformation handelt. Im letzteren Fall wird dieselbe Nachricht nun als Ganzes mittels des POP3- Kommandos get geladen und in deren Nachrichtenkopf das Adreßfeld durch das in der Konfigurationsdatei festgelegte ausgetauscht.
Ein anschließender Aufruf des Unix- Systemkommandos Sendmail, welchem die dergestalt präparierte Nachrichtendatei übergeben wird, sorgt nun dafür, daß die Nachricht eine erneute SMTP- Aussendung mit geändertem Empfänger erfährt, was eine Nachrichtenweiterleitung darstellt.
Im letzten Schritt nun wird die entweder unerwünschte Nachricht ohne, oder eine erwünschte Nachricht nach deren Weiterleitung zum Löschen freigegeben und im Anschluß an die Hauptschleife mittels des POP3- Kommandos quit endgültig gelöscht. Das Programm beendet sich im Anschluß daran selbständig.

Einsatz: Empfohlenes Vorgehen: Erstellen eines vom Apache- Prozeß nicht erreichbaren Unterverzeichnisses und Entpacken der Zip- Datei dorthin. Mittels des Unix- Systemkommandos chmod u+x pop3chk.pl ausführbarmachen des Perlskriptes und konfigurieren der Datei pop3chk.cfg. Anschließend Eintrag in der Crontab, wobei sich in der Praxis Intervalle von 15Min - 1 Stunde bewährt haben.
Abschließender Hinweis:
Dieses Skript kann auch sehr gut als Verteiler eingesetzt werden, indem in der neuen To:- Information statt nur einer Adresse beliebig viele, jeweils durch Komma getrennte, Adressen eingetragen werden.
Paket herunterladen: pop3chk.zip
[Developer Root] [Main Page]