Inhaltsverzeichnis

stunnel4

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.

Server-Mode

Installation:

apt install stunnel4

Start in /etc/default/stunnel4 aktivieren (Konfiguration anlegen!):

ENABLED=1
systemctl enable stunnel4
systemctl start stunnel4

server-mode

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

client-mode

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