© Thomas Max Müller, Pixelio.de
Perl-Skript tunnelt Mailverkehr auf Zuruf
Schöner schicken
von Michael Schilli
Erschienen im Linux-Magazin
2010/07
Eigentlich brauchen lokale Mailclients nur während des Sendens einen sicheren Weg zum SMTP-Server. Ein in Perl selbst gebauter Daemon bohrt darum nur temporär einen SSH-Tunnel.
Das Hin- und Herschaufeln von Datenpaketen erledigt mein Internetprovider normalerweise zufriedenstellend. Fällt allerdings etwas aus, dann sehe ich mich in der Hotline oft mit Text-ablesenden Nichtswissern konfrontiert, die unter Umgehung elementarer logischer Prinzipien die Schuld auf den Anwender zu schieben versuchen. Sie sollten lieber den in dem Höllenladen ebenfalls arbeitenden geschulten Systemadministratoren Bescheid sagen, damit sie die offensichtlich auf ihrer Seite liegenden Probleme beheben.
Als ich einmal anrief, um die Trägheit des DNS-Servers zu bemängeln, fragte mich der freundliche Herr am anderen Ende der Leitung doch tatsächlich, ob mein DSL-Modem auf dem Boden oder im Regal stünde.
Im Spam-Zeitalter
Kürzlich hatte ich Probleme mit dem SMTP-Server und wollte mir einen erneuten Anruf ersparen. Viel E-Mail sendet mein heimischer Desktop-Rechner zwar nicht, aber wenn, dann sollte sie schon ankommen. Fällt etwa der Strom aus, springt meine USV an, was Nagios bemerkt und mir schnell noch eine E-Mail schickt.
Ich könnte natürlich den SMTP-Server meines relativ zuverlässigen Hostingproviders nutzen, doch nimmt der im Spam-Zeitalter natürlich keine Mails von wildfremden IPs an. Aber da der Hoster einen SSH-Zugang anbietet, ließe sich zum Beispiel mit
ssh -L 1025:localhost:25 mschilli@host.U
provider.com
ein Tunnel vom lokalen Port 1025 zum SMTP-Port 25 des gehosteten Rechners bohren. Für den beim Hoster stationierten Rechner sähe es dann so aus, als käme der Request vom gemieteten Shared-Host-Webserver.
Dynamisch bohren
Da ein Billighoster eventuell nicht möchte, dass irgendwelche Geizhälse Tag und Nacht SSH-Tunnel offenhalten, ohne auf ihren gemieteten Webseiten herumzutippen, bietet sich eine dynamische Lösung an: Ein in Perl selbst gebauter Daemon »minimail« lauscht auf dem lokalen SMTP-Port 25 auf Anfragen lokaler Mailclients, die nichts von der dahinter steckenden Komplexität ahnen.
Der Daemon nimmt den Request entgegen, baut den Tunnel zum Hoster auf und trödelt anschließend so lange herum, bis die Verbindung steht. Für den lokalen Mailclient sieht dass so aus, als hätte er nur einen etwas langsameren Mailserver vor sich. Der Daemon schaufelt dann die Request-Zeilen des Clients (lokaler Port 25) auf den lokalen Port 1025 weiter, also den Eingang des Tunnels, an dessen anderem Ende Port 25 beim Hoster liegt (Abbildung 1). Aus dem Tunnel zurückkommende Protokollzeilen gibt der Daemon weiter an den lokalen Client, für den es so aussieht, als spräche er mit einem lokalen SMTP-Server.
Kommen mehrere Requests zum E-Mail-Senden schnell hintereinander, wäre ein Ab- und wieder Aufbauen des Tunnels wenig effizient, und so lässt der Daemon den Tunnel nach dem Abkoppeln des letzten Clients noch 10 Sekunden bestehen. Damit das Ganze in den Hosterlogs menschlich aussieht, addiert das Skript zur Wartezeit in Sekunden eine Zufallszahl zwischen 0 und 25.
| Whitepaper |
|
Daten Migration - Eine Publikation von Bloor Research
Datenmigrationsprojekte überschreiten häufig das Budget, neigen zu Verzögerung und werden unter Umständen komplett abgebrochen. Bloor Research ist eines der weltweit führenden IT-Forschungs-, Analyse- und Beratungsunternehmen und wird in dem vorliegenden White Paper die wichtigsten Aspekte dieser Problematik näher beleuchten. Ferner werden praktische Empfehlungen für erfolgreiche Migrationsprojekte gegeben, die Sie auf Ihr nächstes Projekt übertragen können.
Download PDF (Registrierung erforderlich)
|
|
Open Source Datenintegration in der Praxis: Fallstudien und Anwendungsbeispiele
Über die letzten Jahre hinweg haben sich Open Source Lösungen als fester Bestandteil des gesamten Datenintegrationsmarktes etabliert. Viele Unternehmen haben bereits das Open Source Modell für Ihre Datenintegrationsprojekte aufgegriffen. Das vorliegende White Paper illustriert anhand ausgewählter Fallstudien und Anwendungsbeispiele die Implementierung von Open Source Datenintegration in der Praxis und benennt die daraus resultierenden Vorteile.
Download PDF (Registrierung erforderlich)
|
Dieser Online-Artikel kann Links enthalten, die auf nicht mehr vorhandene Seiten verweisen. Wir ändern solche "broken links"
nur in wenigen Ausnahmefällen. Der Online-Artikel soll möglichst unverändert der gedrucken Fassung entsprechen.
|