Ich habe einen Tunnel über Autossh eingerichtet.
Das funktioniert:
autossh -M 33201 -N -i myIdFile -R 33101:localhost:22 [email protected]
Ich möchte autossh im Hintergrund ausführen. Scheint einfach mit der -f
Option.
Dies funktioniert jedoch nicht:
autossh -f -M 33201 -N -i myIdFile -R 33101:localhost:22 [email protected]
Autossh läuft im Hintergrund einwandfrei, aber die SSH-Verbindung scheint jedes Mal fehlzuschlagen. In / var / syslog sehe ich mehrere Vorkommen von:
autossh[3420]: ssh exited with error status 255; restarting ssh
Was mache ich falsch? Eine wilde Vermutung ist, dass es etwas mit der Authentifizierung über eine Schlüsseldatei zu tun hat. Wie kann ich das debuggen (das Hinzufügen von -v zu den ssh-Optionen scheint nirgendwo zu protokollieren).
Bearbeiten: Ich habe einige SSH-Protokolle mit der Option -y erhalten
/usr/bin/ssh[3484]: debug1: Next authentication method: publickey
/usr/bin/ssh[3484]: debug1: Trying private key: /home/myuser/.ssh/id_rsa
/usr/bin/ssh[3484]: debug1: Trying private key: /home/myuser/.ssh/id_dsa
/usr/bin/ssh[3484]: debug1: Trying private key: /home/myuser/.ssh/id_ecdsa
/usr/bin/ssh[3484]: debug1: No more authentication methods to try.
/usr/bin/ssh[3484]: fatal: Permission denied (publickey).
autossh[3469]: ssh exited with error status 255; restarting ssh
Es scheint also, dass autossh meine Identitätsdatei ( -i myIdFile
) nicht akzeptiert, wenn die Option -f verwendet wird. Warum das?
(autossh 1.4c auf Raspian)
quelle
Antworten:
Es scheint, als würde Autossh, wenn es in den Hintergrund fällt (Option -f), das Arbeitsverzeichnis ändern, was bedeutet, dass relative Pfade nicht mehr funktionieren. Oder genauer: Wenn Sie den absoluten Pfad Ihrer ID-Datei eingeben, werden Sie wahrscheinlich Erfolg haben.
Ich habe das Szenario neu erstellt, indem ich einen Schlüssel ohne Kennwort an einem nicht standardmäßigen Speicherort erstellt habe:
Ich drücke einfach zweimal die Eingabetaste, um einen Schlüssel zu generieren, der nicht durch ein Passwort geschützt ist.
Ich habe den neuen Schlüssel auf meinen Server kopiert (der derzeit die Kennwortauthentifizierung ermöglicht):
Zuerst bestätigte ich, dass der Schlüssel mit normalem SSH funktioniert, und benutzte dann Autossh wie Sie:
Beide haben gut funktioniert, also habe ich das Problem, das Sie hatten, neu erstellt:
Dies hat nicht funktioniert und Folgendes wurde geschrieben an
/var/log/syslog
:Durch Ändern des Pfads der Schlüsseldatei in absolut wurde jedoch Folgendes funktioniert:
Keine Fehler in
/var/log/syslog
.quelle
Ich bin mir nicht sicher, was mit dem -f los ist, aber du könntest es auch nicht tun:
quelle
nohup
arbeitete auch für das Laufenautossh
unterrunit
in Alpine LinuxFügen Sie SSH die folgenden Parameter hinzu, um "Sind Sie sicher, dass Sie die Verbindung fortsetzen möchten (Ja / Nein)?"
Der letzte Befehl hätte das folgende Format:
quelle
StrictHostKeyChecking=no
Sie diese Option nur, wenn Sie eine Verbindung zu einem bekanntermaßen kurzlebigen Spielzeug herstellen - und sich dafür entscheiden, faul zu sein.