Stabile umgekehrte Port-Weiterleitung in SSH- und Stale-Sitzungen

Verwendung von VPS zum Weiterleiten von Ports hinter NAT:

for((;;)) { ssh -R 2222:127.0.0.1:22 vi@vi-server.org; sleep 10; }

Wenn die Verbindung irgendwie unterbrochen wird und sie sich wieder verbindet.

Warning: remote port forwarding failed for listen port 2222
Linux vi-server.no-ip.org 2.6.18-92.1.13.el5.028stab059.3 #1 SMP Wed Oct 15 13:33:44 MSD 2008 i686

I type:

vi@vi-server:~$ killall sshd
Connection to vi-server.org closed by remote host.
Connection to vi-server.org closed.
Linux vi-server.no-ip.org 2.6.18-92.1.13.el5.028stab059.3 #1 SMP Wed Oct 15 13:33:44 MSD 2008 i686
vi@vi-server:~$ 

Now it's OK.

Wie ist es einfacher, dies automatisch zu machen?

  • Können Sie ein wenig mehr Kontext darüber geben, was Sie damit zu erreichen versuchen?
  • Weiterleitung des Remote-Ports zum lokalen Computer über SSH, auch wenn die Verbindung fehlschlägt. Die alte SSH-Verbindung wird vom Server noch als lebendig betrachtet und verhindert, dass der Remote-Port zum Abhören gebunden wird, daher muss ich die blockierte Verbindung explizit beenden ("killall sshd").
  • Jetzt habe ich -t sh -c "kill `pidof sshd -o $PPID` 2> /dev/null && echo "Retrying" >&2 && exit 0; exec bash -il" zu dem Befehl hinzugefügt, es sieht so aus, als ob der Hack funktioniert. Gibt es sauberere Möglichkeiten, dies zu tun?
  • Ich bin nur neugierig, ob Sie den Hack immer noch verwenden oder ob Sie eine saubere Alternative gefunden haben. Ich habe das gleiche Problem und würde gerne nicht alle offenen SSH-Verbindungen bei jedem erneuten Verbindungsaufbau beenden.
  • Ich verwende derzeit verschiedene Arten des Hacks (einschließlich des Sendens von Keep-Alives und des erneuten Verbindens, wenn sie nicht empfangen werden). (Das bedeutet nicht, dass ich rate, Hacks anstelle von richtigen Lösungen zu verwenden).

OriginalAutor Vi. | 2010-02-19

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.