SSH debuggen

Fr, 17. März 2023, Lioh Möller

Falls es bei einem Versuch eine SSH-Verbindung aufzubauen zu Fehlern kommen sollte, gibt es verschiedene Möglichkeiten zur Analyse. Einerseits kann der SSH-Client mit dem Parameter -v gestartet werden. Die Angabe von -vvv erhöht die Debug-Ausgabe.



Serverseitig besteht die Möglichkeit, eine weitere sshd Instanz zu starten. Dabei bietet sich die Nutzung eines alternativen Ports an, damit bestehende SSH-Verbindungen nicht beeinflusst werden. Zuvor sollte allerdings sichergestellt werden, dass ein Zugriff über den gewählten Port in einer aktiven Firewall gestattet wird.

Daraufhin kann auf der Serverseite der SSH Daemon im interaktiven Debug Modus gestartet werden, mithilfe von tee wird die Ausgabe darüber hinaus in eine Datei im lokalen Verzeichnis umgeleitet:

/usr/sbin/sshd -ddd -D -p 222 2>&1 | awk '{ print strftime("%D %T: "), $0; fflush(); }' | tee sshd_debug.log

Auf Clientseite kann die Verbindung wie folgt aufgebaut werden:

ssh -p 222 $ZIELSYSTEM

Alternativ kann die folgende Option zur sshd Konfiguration hinzugefügt werden:

vi /etc/ssh/sshd_config

LogLevel DEBUG3

Damit diese aktiviert wird, muss der Dienst neu gestartet werden, was Auswirkungen auf bereits bestehende aktive SSH-Verbindungen haben kann:

systemctl restart sshd

Logo: Jessie Kirk, CC BY 4.0, via Wikimedia Commons

Tags

SSH, Debuggen