Hamster ist ein Open-Source News- und Mailserver für 32-Bit Windows.
Nähere Informationen findest du auf folgenden Seiten:
Seit Version 2.0.0.0 unterstützt der Hamster SSL (Secure Socket Layer) und TLS (Transport Layer Security). Diese Protokolle ermöglichen es, TCP-Verbindungen zwischen zwei verschiedenen Rechnern zu verschlüsseln.
Wie man SSL/TLS bei allen älteren Hamster-Versionen mit Skripten verwenden kann, beschreibt die Anleitung Hamster und Stunnel.
Danke an Thomas Liesner für die Übernahme des Codes in die Classic-Version!
Die Implementierung von SSL/TLS verwendet die hervorragenden
Verschlüsselungsbibliotheken des OpenSSL-Projekts. Folgende Verfahren werden
zur Zeit unterstützt:
Um die SSL-Verschlüsselung im Hamster zu aktivieren, brauchst du die OpenSSL Kryptographiebibliotheken. Du kannst sie entweder selbst auf Deinem Computer kompilieren (eine kurze Anleitung findest du weiter unten) oder als Binärdateien von dieser Seite herunterladen.
Die beiden Dateien libssl32.dll und libeay32.dll solltest du in das Hamster-Hauptverzeichnis veschieben. Wenn du dann den Hamster neu startest, sollte im Protokoll die Meldung "OpenSSL Bibliotheken erfolgreich initialisiert" auftauchen.
Um die SSL-Funktionen zu konfigurieren, mußt Du im Menu "Einstellungen" die erweiterten Einstellungen aktivieren. Jetzt kannst Du unter folgenden Punkten die Feinabstimmung vornehmen:
Die Hamster-SSL-FAQ von Philipp Wendler enthält ausführliche Informationen über die Verwendung von SSL mit Hamster, die entsprechenden Skriptbefehle und den Nutzen von Zertifikaten.
An dieser Stelle möchte ich nochmals alle, denen Sicherheit wichtig ist,
dazu ermuntern, OpenSSL auf dem eigenen Rechner zu kompilieren. Denn
Binärdateien aus fremder Hand könnten kompromittiert sein, ohne daß dies
auffallen würde. Veränderungen am Quelltext sind dagegen leicht
nachweisbar. Mit meiner Kurzanleitung zum
Kompilieren von OpenSSL ist die Prozedur auch nicht schwierig.
Für diejenigen, die immer noch nicht überzeugt sind, stelle ich hier
einige Binaries aus dem OpenSSL Toolkit für die Windows-Plattform bereit.
Alle Dateien sind mit meinem
PGP-Schlüssel
signiert.
Die OpenSSL-Bibliotheken libssl32.dll und libeay32.dll werden in jeden Fall benötigt, um SSL/TLS mit dem Hamster nutzen zu können.
Mit dem Programm openssl.exe kann man unter Windows die verschiedene kryptographischen Funktionen von der Kommandozeile aus verwenden, beispielsweise SSL/TLS Server und Clients testen oder X.509 Zertifikate erstellen. Das Zip-Archiv enthält außerdem die umfangreiche Original-Dokumentation im HTML-Format.
| Datei: | Signatur: | |
| OpenSSL 0.9.7m DLLs (550 kB) | openssl-0.9.7m_dlls.zip | openssl-0.9.7m_dlls.zip.asc |
| openssl.exe 0.9.7m mit Doku (671 kB) | openssl-0.9.7m_exe.zip | openssl-0.9.7m_exe.zip.asc |
 
Major changes between OpenSSL 0.9.7l and OpenSSL 0.9.7m:
o FIPS 1.1.1 module linking.
o Various ciphersuite selection fixes.
Vor dem Download bitte unbedingt rechtliche Hinweise zu OpenSSL lesen!
Im folgenden beschreibe ich kurz, wie ich das OpenSSL-Toolkit unter Windows kompiliert habe. Selbstverständlich ist dies nicht die einzig mögliche Methode, man kann insbesondere auch den MSVC-Compiler oder GCC unter Cygwin verwenden.
Benötigte Software:
Zuerst muß Perl und MinGW installiert werden. Das Paket MSYS wird nicht benötigt.
Nach dem Entpacken des OpenSSL-Quellcodes ist das meiste schon geschafft: das Kompilieren geht ganz von selbst - man sollte nur bei älteren Rechnern genügend Zeit mitbringen. Am besten verschiebst du dazu die Datei mingw32.bat aus dem ms-Unterordner in das OpenSSL-Hauptverzeichnis und startet das Programm durch einen Doppelklick. Weiterführende Information zur Installation von OpenSSL enthält die Datei Install.w32. Nach dem Kompilieren finden sich die OpenSSL-DLLs im Hauptverzeichnis, die übrigen Programme im Unterverzeichnis out.
Um die Dokumentation zu OpenSSL ins HTML-Format zu konvertieren, kannst du mein Perl-Skript verwenden. Das Skript einfach ins doc Unterverzeichnis legen und ausführen. Im Ordner doc/apps befindet sich die Dokumentation zu openssl.exe, in doc/crypto und doc/ssl werden die Funktionen der Kryptographie-Bibliotheken beschrieben.
Kompilieren mit Visual C++: Gehe so vor wie in Install.w32 beschrieben. Zur Verwendung mit Hamster Classic muß die Datei ssleay32.dll in libssl32.dll umbenannt werden.
Hamster Playground und SSL: Der hervorragende Hamster Playground von Jürgen Haible basiert auf den Indy Komponenten. Leider benötigt Indy modifizierte präparierte OpenSSL-Bibliotheken, für die ich keine Unterstützung anbiete. Nähere Informationen sollten auf der Indy SSL Seite zu finden sein.
Das folgende Paket erleichtert die Erstellung eines selbstsignierten
X.509-Zertifikats, wie es für den Betrieb der lokalen Hamster-Server mit
TLS benötigt wird. Hierzu benötigst Du außerdem das Programm
openssl.exe (siehe auch Binaries aus
dem OpenSSL-Toolkit).
Anwendung: Kopiere die beiden Dateien aus dem Ziparchiv in das Verzeichnis
von openssl.exe, führe MakeCert.bat aus und folge den
Anweisungen. Der öffentliche Schlüssel (= Zertifikat) und ein dazugehöriger
privater Schlüssel werden dann in der Datei certificate.pem
gespeichert.
Download: MakeCert.zip (2 KB)
Außerdem findest du hier ein kleines Skript in der
Hamster-Skriptsprache, das dazu dient, Zertifikate in "Rohformat" in eine
andere Form (mit dem sog. Hash als Dateinamen) umzuwandeln. Dieses Format
wird benötigt, wenn ein Verzeichnis als Zertifikatsspeicher verwendet wird
(im Hamster unter Einstellungen - Grundeinstellungen - SSL). Zusätzlich
wird eine Textdatei erzeugt, die alle Informationen über das Zertifikat in
lesbarer Form enthält. Das Skript braucht vor der Verwendung nicht
bearbeitet zu werden, alle benötigten Informationen werden direkt abgefragt
und gespeichert.
Download: SSL-Cert-Hash.hsc (7
KB)
Wenn du mit dem Programm openssl s_client eine Verbindung zu
einem Server herstellen willst, der NNTP, SMTP, POP3 oder IMAP über TLS auf
dem Standardport unterstützt [nach RFC 2487, 2595 bzw. 2595], so wird die
SSL/TLS-Verschlüsselung erst auf Verlangen der Clientsoftware gestartet.
Leider unterstützt openssl diese Protokollaushandlung bis jetzt
noch nicht vollständig. Daher stelle ich hier einen einfachen Wrapper zur
Verfügung, der dies übernimmt.
Download: SSL_Tool.zip (186 kB)
Mit diesem Programm kannst du die verschlüsselten Benutzernamen und
Paßwörter von Hamster anzeigen und bearbeiten. Außerdem ist es möglich, die
"Verschlüsselung-Basis" zu ändern, ohne alle Paßwörter zu verlieren. Bitte
vorher in der Hamsterhilfe den Abschnitt "Menü: Einstellungen /
Benutzerverwaltung / Passworte" lesen.
Download: HamPassEdit.zip (219
kB)
|
|
|