Ich versuche, Wireshark SSL-Debugging einzurichten, und dazu versuche ich, die Anweisungen inDieser Artikel.
Ich bin derzeit bei stunnel
einem Teil und versuche,
sudo stunnel -p ps.pem -d 443 -r 8080
Die Ausgabe davon ist
Clients allowed=500
stunnel 4.53 on i686-pc-linux-gnu platform
Compiled/running with OpenSSL 0.9.8k 25 Mar 2009
Threading:PTHREAD SSL:ENGINE Auth:LIBWRAP Sockets:POLL,IPv6
Reading configuration from file -p
-p: No such file or directory (2)
Cannot read configuration
Syntax:
stunnel [<filename>] ] -fd <n> | -help | -version | -sockets
<filename> - use specified config file
-fd <n> - read the config file from a file descriptor
-help - get config file help
-version - display version and defaults
-sockets - display default socket options
str_stats: 1 block(s), 3 data byte(s), 34 control byte(s)
Dies ist in diesem Fall wahrscheinlich nicht das, was man erwartet.
Wie verwende ich Stunnel richtig mit dem bereitgestellten Zertifikat?
Antwort1
stunnel hat seit Version 4 auf eine neue Schnittstelle umgestellt, die nicht abwärtskompatibel ist. Debian liefert jedoch ein Wrapper-Skript mit, /usr/bin/stunnel
das sich wie stunnel-3.x verhält, um mit Legacy-Installationen zusammenzuarbeiten. Dieses Wrapper-Skript kann die richtigen Dinge tun, wenn Sie der alten Methode folgen, aber wenn ein kleiner Fehler auftritt, verarbeitet das Wrapper-Skript ihn nicht und Fehlermeldungen der echten Binärdatei werden /usr/bin/stunnel4
angezeigt und verwirren Sie.
Verwenden Sie das also nie mehr. Sie sollten man stunnel4
die Binärdatei explizit ausführen /usr/bin/stunnel4
und die neue Syntax verwenden.
um kurz darauf hinzuweisen, was sich in Stunnel 4.x und höher geändert hat: Sie können in der Befehlszeile nichts mehr angeben. Alles, was Sie tun können und müssen, ist, eine Konfigurationsdatei zu schreiben und den Dateinamen als einziges Argument anzugeben.
Lassen Sie mich Ihnen nun zeigen, wie Sie eine solche Konfigurationsdatei schreiben.
## this is an INI'ish file
##
foreground = yes
sslVersion = all
pid = ## in most cases it is okay to leave pid empty
##
## above are global options
##
[ service_A ] ## you can have as many as you want service sections
## to listen on different ports , have different keys
## and forward to different destinations
##
client = no ##"client" set to "no" , mean stunnel speaks ssl on
## listening port , and plaintext on the remote side
## while "yes" is the reverse
verify = 0 ## do not check peer certification
cert = /etc/ssl/certs/stunnel.pem
accept = 443
connect = 80
[ another_section ]
...
ich rate Ihnen jedoch dringend davon ab, Stunnel in einfachen Situationen wie dieser zu verwenden. Socat ist ein weitaus niedlicheres Hilfsprogramm.
socat openssl-listen:443,certificate=a.pem,fork tcp:localhost:80
außerdem ist Socat sehr süß und scharfsinnig und kann noch jede Menge anderer toller Dinge. Sie werden es auf jeden Fall lieben, wenn Sie es ausprobieren.