Dies ist eine alte Version des Dokuments!


Baustelle

Stunnel

STunnel (sprich: S-Tunnel) arbeitet als universaler SSL-Tunnel zwischen dem Win32-Client und dem Server und ermöglicht somit auf einfache Weise verschlüsselte Sitzungen auch bei Programmen, die nativ keine Verschlüsselungsmethode beherrschen.

Mit STunnel lassen sich Clients (z.B. Eudora oder Pegasus), die SSL nicht beherrschen, über verschlüsselte Verbindungen betreiben, sofern der Server den entsprechenden Dienst über SSL zulässt.

Somit kann dieses Programm unter Windows als angenehmere Alternative zu dem bisher propagierten SSH mit „port forwarding“ herangezogen werden, sofern kein Terminal-Dialog gewünscht ist.

Wichtiger Hinweis: 
Es ist grundsätzlich nicht möglich, eine FTP-Sitzung über STunnel zu betreiben. 
Die grundlegenden Eigenschaften des FTP-Protokolls verhindern dies.

Download und Installation

Invalid Link




Download der Installationsdatei stunnel.exe auf Ihren PC.

Speichern Sie die Datei und starten Sie die Installation durch Doppelklick auf stunnel.exe.





Nach einigen Hinweisen, die Sie mit „Weiter“ quittieren, erscheint folgendes Fenster:

Invalid Link








Wählen Sie auf jeden Fall die rot markiert Option!
Damit starten Sie ein kleines Hilfsprogramm, mit dem Sie Ihre Mail-Domain (der Name zwischen @ und .uni-freiburg.de in Ihrer Mailadresse) in Kommandodateien einbauen können. Näheres dazu sehen Sie in den folgenden Abschnitten.










Diese Option hat den Start eines DOS-Eingabefensters zur Folge. Das sieht etwa so aus:

Gelb markiert ist dabei der Teil, den Sie einzugeben haben. Hier müssen Sie natürlich den Beispieltext „meinedomain“ durch Ihre tatsächliche Domain ersetzen. Nach dem Drücken der Eingabetaste (RETURN) verschwindet das Fenster sang- und klanglos. Danach finden Sie in dem Installationsverzeichnis von STunnel zwei Dateien (imap.bat und pop3.bat), die Ihren zuständigen Mailserver als Adresse für den STunnel-Verbindungsaufbau enthalten (s. weiter unten!).

Dieses Programm (SETDOM.EXE) ist übrigens jederzeit über das Programm-Menü von STunnel zu erreichen.

Nun können Sie einen der mitgelieferten Tunnels über das Startmenü aktivieren. Eine Kennworteingabe ist bei SSL-Tunnels nicht erforderlich.

Manueller Start

Suchen Sie über das Startmenü das installierte Programm auf. Sie finden dort die als Beispiele beigefügen bzw. von Ihnen bei der Installation bereits angepassten Tunnel-Scripts vor (es handelt sich um Verweise auf .BAT-Dateien). Mit dem Programm „Maildomain festlegen“ können Sie auch nachträglich noch die „STunnel to…“-Dateien an Ihre Domain anpassen.



Das gestartete Programm ist am Eintrag in der Task-Leiste zu erkennen.

Wenn Sie den Tunnel immer manuell starten wollen, erstellen Sie eine Verknüpfung und legen sie auf den Desktop.

Automatischer Start

Falls Sie einen Tunnel automatisch starten lassen möchten, damit er jedesmal installiert wird, sobald Windows hochfährt, fügen Sie dem Autostart-Ordner einen Verweis auf das entsprechende Programm hinzu (über Eigenschaften der Taskleiste).

Beim nächsten Neustart von Windows wird der gewählte SSL-Tunnel automatisch eingerichtet.

Client-Konfiguration

Bei Internet-Verbindungen werden sogenannte Ports zur Unterscheidung verschiedener Dienste zwischen zwei Kommunikationspartnern (Server und Client) verwendet. Auf diese Weise kann über ein und dieselbe Verbindung z.B. Mail und WWW gleichzeitig betrieben werden. Die Portnummern von Quelle und Ziel sind Attribute der Datenpakete (Bestandteil des TCP header) und weisen sie den entsprechenden Diensten über die Transport Service Access Points (TSAP) zu.

Portnummern können im Bereich von 0 bis 65535 liegen (216 Werte). Der Bereich unterhalb 256 ist reserviert (well known ports) und kann nicht frei für selbstdefinierte Dienste genutzt werden. Aber auch oberhalb dieser Schranke sind bereits viele Nummern zu Standards geworden, wie man in der folgenden Tabelle sehen kann.

Beispiele für reservierte Portnummern: Port Protokoll (Verwendungszweck) 21 FTP (Dateitransfer) 22 SSH (Verschlüsselte Terminalsitzung) 23 Telnet (Internet Terminal) 25 SMTP (Mail versenden) 80 HTTP (World Wide Web) 443 HTTPS: HTTP mit SSL

Port Protokoll (Verwendungszweck) 110 POP3 (Mail herunterladen) 119 NNTP (Network News) 143 IMAP (Mail lesen/Ordner verwalten) 993 IMAP mit SSL 995 POP3 mit SSL

Unter port forwarding versteht man das Weiterleiten („tunneln“) von Datenpaketen mit einer ausgewählten Portnummer über die mit STunnel aufgebaute Verbindung. Dadurch wird der gesamte Datenverkehr des zur Portnummer gehörenden Internet-Dienstes verschlüsselt.

Zu diesem Zweck installiert STunnel einen lokalen TSAP (mit zugehöriger Portnummer) der über eine verschlüsselte Verbindung mit einem entfernten (remote) TSAP verknüpft wird. Der remote Port wird vom gewünschten Dienst (z.B. POP3) festgelegt, der lokale Port kann prinzipiell frei gewählt werden, sollte aus Gründen der Übersichtlichkeit aber normalerweise identisch mit dem remote Port sein.

Dem Vorteil dieses Verfahrens (verschlüsselte Verbindung) stehen allerdings folgende Nachteile gegenüber:

  • Bevor ein Dienst auf diese Weise verschlüsselt werden kann, muß zum Zielrechner eine STunnel-Verbindung aufgebaut werden.
  • Der Zugang zu einem Dienst via STunnel muss mit dem Administrator des Servers vereinbart werden, da solche Zugänge nicht von vornherein eingerichtet sind bzw. nicht zum Standard gehören.

In den folgenden Abbildung sehen Sie als Beispiele…

…die Illustration einer unverschlüsselten POP3-Sitzung, sowie… kein_tunnel.gif

…die Illustration einer getunnelten POP3-Sitzung: stunnel_forward.gif

Beispiel für den POP3-Zugang (E-Mail via Pegasus oder Eudora vor Version 5.1)

Betrifft E-Mail:

Es wird nur das Protokoll POP3 weitergeleitet, das für das Lesen der Mails zuständig ist und deshalb mit der Login/Passwort-Authentifizierung arbeitet.

Das Protokoll zum Verschicken von Mails (SMTP) muss derzeit nicht verschlüsselt werden, da es sich dem Server gegenüber nicht authentifizieren muss.

Das Protokoll IMAP kann bei Netscape und Outlook Express / Outlook 98 mit der Verschlüsselungstechnik SSL kombiniert werden. Dann ist ein Weiterleiten mit port forwarding nicht erforderlich.

Wenn Sie nun über eine verschlüsselte Strecke eine POP3-Sitzung aufbauen wollen, müssen Sie dem Mail-Client (z.B. Eudora oder Pegasus) als Zielrechner Ihren lokalen PC nennen. Der symbolische Name dafür ist localhost (=127.0.0.1).

Eudora teilen Sie das mit, indem Sie als Mail-Account login@localhost angeben. „login“ steht hier als Stellvertreter für Ihren Login-Namen am Mailserver. Bei Pegasus und anderen Mail-Clients geben Sie einfach localhost als Server für die eingehende Mail an.

Damit wird erreicht, daß der lokale Mail-Client unter Verwendung des Local Port an das lokale Ende des SSL-Tunnels gebunden wird. Dabei übernimmt die lokale Seite des SSL-Tunnels (der lokale TSAP) formal die Rolle des Servers. Auf der Gegenseite sorgt der SSL-Server des Hosts dafür, daß die getunnelte Sitzung an den zum Remote Port gehörenden Dienst (hier POP3) weitergereicht wird.

Das STunnel-Kommando im DOS-Fenster (oder in einer Batch-Datei): @echo off REM pop3-Tunnel zu MEINEDOMAIN.uni-freiburg.de REM Bedeutung der Argumente: REM STunnel -c -r mailserver:mailserverport -d PCport start /min STunnel -c -r MEINEDOMAIN.uni-freiburg.de:995 -d 110 exit

Der angegebene Text stammt aus dem Beispiel-Skript pop3.bat.

Beispiel für die Konfiguration in Eudora: eudora_localhost.gif

Beispiel für die Konfiguration in Pegasus: pegasus_localhost.gif

Übrigens: Pegasus hat ein Problem beim Verschicken von mails, wenn als pop3-Host localhost eingetragen ist; es hilft ein Update und/oder aktivieren der smtp option „always use this email address for smtp envelope“ in den erweiterten Netzwerk-Einstellungen. Unter Pegasus 3.1 für Win32 konnte das Verhalten nicht reproduziert werden.

Grundsätzlich: Sie müssen immer vor dem Aufruf des Mail-Programmes einen SSL-Tunnel zum entsprechenden Zielrechner eröffnen.

Ein konkretes Beispiel aus der Praxis:

Problem: Eine hochschulnahe Einrichtung kommt via ISDN und unseren PPP-Knoten ins Internet. Als einzigen passwortgeschützten Dienst nutzt man den POP3-Server mit Eudora unter Windows 95 und will auch nach Möglichkeit nicht davon abgehen. Durch die Schließung der unverschlüsselten Zugänge ist der Mailserver nicht mehr erreichbar.

Lösung: Installation des STunnel-Programmes. Um der Angestellten den Verbindungsaufbau so angenehm wie möglich zu machen, wurde das beim STunnel mitgelieferte Script pop3.bat in folgender Weise erweitert (grün, Anmerkungen rot, Achtung: biologie ist hier nur ein Beispiel):

@echo off REM POP3-Tunnel zu biologie.uni-freiburg.de rundll32 rnaui.dll,RnaDial FUN [1] start /min STunnel -c -r biologie.uni-freiburg.de:995 -d 110 start c:\eudora\eudora.exe [2] exit

Anmerkung 1: Das oben angegebene Beispiel gilt für Windows 9x. Hier wird die DFÜ-Verbindung hergestellt. Dazu musste das Icon im Ordner Arbeitsplatz/DFÜ-Netzwerk einen Namen ohne Leerzeichen erhalten; im vorliegenden Beispiel FUN. Falls Sie diese Zeile übernehmen wollen, müssen Sie exakt die Schreibweise beachten (z.B. keine Leerzeichen beim Komma, Groß/kleinschreibung) und als letztes Argument (hier: FUN) den Namen Ihrer DFÜ-Verbindung angeben, der wie gesagt kein Leerzeichen enthalten darf. Falls der Wählvorgang vom Start des STunnel-Programmes überholt wird, sollte nach dem rundll-Kommando eine Zwangspause eingefügt werden. Unter Windows NT setzen Sie stattdessen rasphone -d fun ein ('fun' ist hier wieder nur ein Beispiel).

Anmerkung 2: In dieser Zeile startet Eudora. Hier kann auch der Start einer anderen Internetanwendung stehen.

STunnel beenden

systray.gifUm einen STunnel zu beenden („abzubauen“), öffnen Sie einfach das Fenster, indem Sie in der Taskleiste auf sein Symbol klicken und im dann geöffneten Fenster (es handelt sich ja um eine DOS-Anwendung) die Tastenkombination STRG+C (Programmabbruch) eingeben.

Anmerkungen zu Windows NT und Windows 2000

Wenn Sie vorhaben, STunnel unabhängig von der Anmeldung eines Benutzers im Hintergrund als Service zu starten, hilft Ihnen der folgende Tip: neuen Link Setzen:

Starten eines beliebigen Programmes als Service unter Windows NT, 2000 und XP

Programme, die nicht für den Service-Betrieb geschrieben sind (dazu gehört auch STunnel), können mit Hilfe und sozusagen „unter den Fittichen“ eines zusätzlichen Programmes, das selbst als Service programmiert ist, dennoch als solcher ablaufen. Microsoft stellt im Rahmen des NT Resource Kit ein entsprechendes Werkzeug zur Verfügung.

Alles, was Sie an Information für die Anwendung des obigen Tips benötigen, sind die Aufruf-Parameter für STunnel: Zugang zum Server: Protokoll Parameter für STunnel MEINEDOMAIN.uni-freiburg.de POP3 -c -r MEINEDOMAIN.uni-freiburg.de:995 -d 110 MEINEDOMAIN.uni-freiburg.de IMAP -c -r MEINEDOMAIN.uni-freiburg.de:993 -d 143

Wie oben schon erwähnt, können Sie mit dem mitgelieferten Programm domain.exe die BAT-Dateien anpassen.

—- Letzte inhaltliche Änderung: 21.10.2008 (B. Bußhardt)

QR-Code
QR-Code stunnel (erstellt für aktuelle Seite)