stunnel ist ein universeller SSL-Tunnel für Netzwerk-Dienste. Einige Dienst können von Haus aus kein SSL oder man benötigt Querverbindungen. Soweit nichts auf Applikationsebene umgeschrieben werden soll (was einen Reverse-Proxy etc. benötigt) ist stunnel für viele Aufgaben ausreichend.
Installation:
apt install stunnel4
Start in /etc/default/stunnel4 aktivieren (Konfiguration anlegen!):
ENABLED=1
systemctl enable stunnel4
systemctl start stunnel4
Im Servermode werden Verbindungungen von Clients angenommen und an den (lokalen) Server weitergeleitet.
Beispiel: HTTPS-Port 443 auf lokale Anwendung (Port 8443) tunneln:
cert = /etc/letsencrypt/live/DOMAIN.TLD/cert.pem key = /etc/letsencrypt/live/DOMAIN.TLD/privkey.pem CAfile = /etc/letsencrypt/live/DOMAIN.TLD/fullchain.pem sslVersion = TLSv1.2 ciphers = ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256 [java-appserver] accept = 443 connect = 8443
Der Client-Mode bindet entfernte Systeme über SSL an:
Beispiel: Gmail
[gmail-smtp] client = yes accept = 127.0.0.1:25 connect = smtp.gmail.com:465 verifyChain = yes CApath = @sysconfdir/ssl/certs checkHost = smtp.gmail.com