ssh rückmeldung an server


melmager

Erfahrenes Mitglied
#1
hallo
ich schreibe grade ein kleines shellscript das einen ssh Tunnel aufbaut und dann für die geöffneten ports jeweils einen Tab im Browser aufmacht.

nur muss ich beim zielsystem ein Login Passwort eingeben.
Frage wie sage ich dem aufrufenden script das Login stattgefunden hat - und somit der tunnel steht ?

und nächste frage : wie triggere ich das die Verbindung getrennt/beendet wurde ?
 

melmager

Erfahrenes Mitglied
#3
nee im script starte ich ganz profan den ssh mit samt den gewünschten portforwarding.
ssh -L 8000:192.160.1.1:80 blablub
firefox localhost:8000
nur da ich das Passwort eingeben muss, ist mein browser schon offen und die ports sind noch nicht offen
unschön - ich wollte also mit dem aufruf von Firefox warten bis die forwarding ports soweit sind
mir ist nur nicht klar wie ich das mitbekomme :)
 
Zuletzt bearbeitet:

Bratkartoffel

gebratene Kartoffel
Premium-User
#4
Hi,

eigentlich sollte der erste Befehl solange blockieren (bzw. allgemein blockieren), so dass der Firefox erst gestartet wird, wenn der Tunnel steht.
Ich würde das ganze mit SSH-Public Keys lösen, hierbei muss kein Passwort angegeben werden.

- Also den Tunnel aufbauen (mit einem & am Ende, so dass der Befehl in den Hintergrund rückt)
- Dann per Schleife und curl / nc / oder sogar bash prüfen ob der Port offen ist
- Dann den Firefox starten

Grüsse,
BK
 

melmager

Erfahrenes Mitglied
#5
ich habe mit
#extra Fenster aufmachen
konsole --noclose -e ssh -L 8888:rechner:80 remoteserver
# hier kommt als anzahl eine 2 raus (suche nach den forwarding ports)
netstat -nplt 2>/dev/null | grep -8888 -c
also das genommen mit einer while schleife

klappt :)