zweite autossh-Verbindung schlägt fehl

L I V E Stammtisch ab 20:30 Uhr im Chat
  • Hallo, ich habe eine RPI, der mittels UMTS-Router im Internet hängt. Um auf den RPI zugreifen zu können, baue ich einen reverse-Tunnel zu einem weiteren Gateway-RPI, der an meinem DSL-Router hängt, auf. Dies passiert beim Start des RPI. In der /etc/rc.local ist ein Eintrag, der das Script ssh.sh startet:

    Hier der Inhalt der ssh.sh:

    Code
    pi@holger ~ $ more ssh.sh
    #!/bin/sh
    killall autossh
    sleep 5
    autossh -o "ServerAliveInterval 300" -o "ServerAliveCountMax 5" -f -N -R 5500:localhost:22 -i /home/pi/.ssh/id_rsa1 Gateway1-RPI-IP
    sleep 5
    autossh -o "ServerAliveInterval 300" -o "ServerAliveCountMax 5" -f -N -R 5500:localhost:22 -i /home/pi/.ssh/id_rsa2 Gateway2-RPI-IP

    Wie man sieht, möchte ich zu zwei Gateway-RPI eine Verbindung aufbauen, die an zwei unterschiedlichen DSL-Routern sitzen (Redundanz). Die erste Verbindung wird aufgebaut und steht. Aber die zweite Verbindung kommt nicht zustande. Der Aufbau wird mehrmals versucht aber nicht zu Ende geführt.

    Wenn ich mich aber über den ersten Gateway-RPI auf den RPI anmelde, den Prozess des zweiten Verbindungsaufbaus kille und dann direkt in der Konosle exakt die Befehlszeile ausführe, dann wird die Verbindung zum zweiten Gateway-RPI aufgebaut!

    Woran kann das liegen?

    Gruß
    Holger

    Einmal editiert, zuletzt von dl9hda (4. April 2015 um 08:05)


  • Wie man sieht, möchte ich zu zwei Gateway-RPI eine Verbindung aufbauen, die an zwei unterschiedlichen DSL-Routern sitzen (Redundanz). Die erste Verbindung wird aufgebaut und steht. Aber die zweite Verbindung kommt nicht zustande. Der Aufbau wird mehrmals versucht aber nicht zu Ende geführt.

    Wenn ich mich aber über den ersten Gateway-RPI auf den RPI anmelde, den Prozess des zweiten Verbindungsaufbaus kille und dann direkt in der Konosle exakt die Befehlszeile ausführe, dann wird die Verbindung zum zweiten Gateway-RPI aufgebaut!

    Woran kann das liegen?

    Gruß
    Holger

    Mhh.
    Ich hab zwar keinen Scimmer davon, tippe aber darauf das du die Autossh befehle mittels & in den Hintergrund schieben musst.
    Ich denke das Script bleibe nach dem ersten autossh stehen.

    Ändere es mal so :

    Bash
    #!/bin/sh
    killall autossh
    sleep 5
    logger "starte autossh1"
    autossh -o "ServerAliveInterval 300" -o "ServerAliveCountMax 5" -f -N -R 5500:localhost:22 -i /home/pi/.ssh/id_rsa1 Gateway1-RPI-IP &
    logger "autossh1 gestartet"
    sleep 5
    logger "starte autossh2"
    autossh -o "ServerAliveInterval 300" -o "ServerAliveCountMax 5" -f -N -R 5500:localhost:22 -i /home/pi/.ssh/id_rsa2 Gateway2-RPI-IP &
    logger "autossh2 gestartet"

    Logger schreibt einträge ins syslog.
    Dann kannst du im syslog sehen wo es klemmt.

    Offizieller Schmier und Schmutzfink des Forum.
    Warum einfach wenn's auch schwer geht ?

    Kein Support per PN !
    Fragen bitte hier im Forum stellen. So hat jeder etwas davon.

    Einmal editiert, zuletzt von Der_Imperator (4. April 2015 um 10:19)

  • Hallo,

    die Option -f sorgt ja dafür, dass autossh im Hintergrund arbeitet. Das Script bleibt auch nicht stehen, da ja erstens zwei PIDs vorhanden sind und ich sehe ja auch am Gateway2, dass Verbindungsversuche stattfinden.


    Holger


  • Die erste Verbindung wird aufgebaut und steht. Aber die zweite Verbindung kommt nicht zustande. Der Aufbau wird mehrmals versucht aber nicht zu Ende geführt.

    Wenn ich mich aber über den ersten Gateway-RPI auf den RPI anmelde, den Prozess des zweiten Verbindungsaufbaus kille und dann direkt in der Konosle exakt die Befehlszeile ausführe, dann wird die Verbindung zum zweiten Gateway-RPI aufgebaut!

    Woran kann das liegen?

    Aus der rc.local wird das ja mit root-Rechten ausgeführt und wenn Du das für die 2. Verbindung manuell über die Konsole machst, machst Du das dann als user pi?

    Versuch mal nur als Test in deinem Script, die Verbindung zum Gateway2-RPI-IP, als erste Verbindung (d. h. vor der Verbindung zum Gateway1-RPI-IP) herzustellen zu lassen.
    Evtl. auch mit zusätzlich deaktiviertem Monitoring-Port (-M 0) versuchen.

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p3 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

    Einmal editiert, zuletzt von rpi444 (5. April 2015 um 11:05)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!