SSL ist ein Protokoll zur Verschlüsselung von Daten in einer TCP-Verbindung, während sie über das Netzwerk übertragen wird. Es wurde ursprünglich entwickelt, um den Verkehr zwischen Webbrowsern und Servern zu schützen, kann jedoch verwendet werden, um jede Art von Datenstrom zu verschlüsseln, der normalerweise über das TCP-Protokoll gesendet wird.

Das SSL-Protokoll ermöglicht es Clients und Servern, sich gegenseitig zu authentifizieren, sodass ein Client sicher sein kann, dass er wirklich mit dem Host verbindet, mit dem er glaubt, es zu tun. Dies geschieht mit Zertifikaten, die von einer Zertifizierungsstelle ausgestellt werden, die vom Client anerkannt wird (damit sie verifiziert werden können) und mit einem bestimmten Hostnamen verbunden sind. Ohne Zertifikate könnte ein Angreifer eine SSL-Verbindung zu seinem eigenen Server umleiten und sensible Informationen von einem Client abfangen, der denkt, er spricht mit dem echten Server.

Alle Daten, die unverschlüsselt über das Internet übertragen werden, können von einem Angreifer abgefangen und gelesen werden, der Zugang zu einem der Netzwerke hat, durch die sie hindurchgehen. Sogar Daten, die zwischen einem Client und einem Server-System in einem LAN übertragen werden, können leicht abgehört werden. Wenn Sie sich mit einem Telnet-, FTP- oder POP3-Server verbinden, wird Ihr Passwort über das Netzwerk gesendet und kann somit von einem Angreifer abgefangen werden.

SSL kann verwendet werden, um Daten in solchen Situationen zu schützen, jedoch nur, wenn sowohl der Client als auch der Server es unterstützen. Die meisten Webbrowser und Mail-Clients können SSL-verschlüsselte HTTP-, POP3- und IMAP-Verbindungen herstellen, aber nicht alle Web- und POP3-Server können diese akzeptieren. Besonders POP3 ist schwer zu schützen, da der Standardserver, der mit den meisten Unix-Systemen geliefert wird, SSL überhaupt nicht unterstützt. Glücklicherweise gibt es jedoch eine Lösung - STunnel.

STunnel ist ein einfaches Programm, das eine unverschlüsselte Verbindung in eine SSL-verschlüsselte Verbindung umwandelt. Es wird typischerweise so eingerichtet, dass es von einem Super-Server wie inetd oder xinetd ausgeführt wird und dann ein anderes Programm wie den POP3-Server startet, der SSL nicht unterstützt. Dieses Design ermöglicht es, jeden Server zu schützen, der normalerweise von inetd ausgeführt wird, wie z.B. Telnet-, NNTP- und IMAP-Server.

Es können jedoch nicht alle Server sinnvoll mit Verschlüsselung geschützt werden, weil kein Client existiert, der sie im SSL-Modus verwenden kann. Zum Beispiel habe ich noch nie von einem Telnet- oder FTP-Client gehört, der SSL verwenden kann, da das gängige SSH-Paket bereits verschlüsselte Remote-Logins und Dateiübertragungen ermöglicht.

Dieses Webmin-Modul erleichtert das Einrichten von Super-Server-Diensten, die STunnel ausführen, um ein Serverprogramm zu starten. Auch wenn dies manuell mit dem Modul Internet-Dienste durchgeführt werden kann, wurde dieses speziell zum Einrichten und Konfigurieren von STunnel entwickelt. Es erkennt automatisch, ob inetd und/oder xinetd installiert sind, liest deren Konfigurationen, um bestehende SSL-Tunnel zu überprüfen, und fügt ihnen neue Tunnel hinzu, wenn Sie einen neuen Tunnel erstellen. Wenn beide installiert sind, werden neue SSL-Tunnel zur xinetd-Konfiguration hinzugefügt, da es meiner Meinung nach das überlegene der beiden ist.