Hallo zusammen,
ich bin absoluter Anfänger, was Linux angeht. Ich benötige Eure Hilfe bei folgender Ausgangssituation:
Ich möchte zwischen einem Raspbian Pi und einem gemieteten Rootserver einen Remote-SSH-Tunnel herstellen und dauerhaft aufrecht erhalten.
Folgendes habe ich bereits eingerichtet:
- OPENSSH-Client auf Raspberry installiert, Keys generiert
- OPENSSH-Server auf Rootserver installiert, Public Key auf Server kopiert
- sshd_config um die Zeile Gateway_Ports yes auf dem Server erweitert
Auf dem Raspberry starte ich den Tunnel mit:
ssh -R [PortServer]:[lokale IP]:[PortLokal] benutzer@Server
Das funktioniert soweit auch fehlerfrei.
Was ich aber gern möchte, ist, dass wenn der SSH-Tunnel (aus welchem Grund auch immer) geschlossen wird, er automatisch wieder aufgebaut wird.
Dazu habe ich auch folgendes Bash gefunden und genutzt:
Leider wird das Bash zwar ausgeführt, aber mit Fehlercode 1 beendet.
Hat jemand noch eine Idee für mich, woran es liegen könnte?
Ich hoffe, ich habe mich einigermaßen verständlich ausgedrückt.
Gruß
Sebastian
ich bin absoluter Anfänger, was Linux angeht. Ich benötige Eure Hilfe bei folgender Ausgangssituation:
Ich möchte zwischen einem Raspbian Pi und einem gemieteten Rootserver einen Remote-SSH-Tunnel herstellen und dauerhaft aufrecht erhalten.
Folgendes habe ich bereits eingerichtet:
- OPENSSH-Client auf Raspberry installiert, Keys generiert
- OPENSSH-Server auf Rootserver installiert, Public Key auf Server kopiert
- sshd_config um die Zeile Gateway_Ports yes auf dem Server erweitert
Auf dem Raspberry starte ich den Tunnel mit:
ssh -R [PortServer]:[lokale IP]:[PortLokal] benutzer@Server
Das funktioniert soweit auch fehlerfrei.
Was ich aber gern möchte, ist, dass wenn der SSH-Tunnel (aus welchem Grund auch immer) geschlossen wird, er automatisch wieder aufgebaut wird.
Dazu habe ich auch folgendes Bash gefunden und genutzt:
Code:
!/bin/bash
createTunnel() {
/usr/bin/ssh -N -R <PortServer>:<lokale IP>:<PortLokal> benutzer@server
if [[ $? -eq 0 ]]; then
echo Tunnel to jumpbox created successfully
else
echo An error occurred creating a tunnel to jumpbox. RC was $?
fi
}
/bin/pidof ssh
if [[ $? -ne 0 ]]; then
echo Creating new tunnel connection
createTunnel
fi
Leider wird das Bash zwar ausgeführt, aber mit Fehlercode 1 beendet.
Hat jemand noch eine Idee für mich, woran es liegen könnte?
Ich hoffe, ich habe mich einigermaßen verständlich ausgedrückt.
Gruß
Sebastian