Wie kann ich Remote-SSHFS über eine Zwischenmaschine einbinden? Tunnelbau

17871
Andrei

Ich möchte ein Remote-Dateisystem (A) mit SSHFS einbinden, aber manchmal habe ich eine IP-Adresse, von der aus der Zugriff nicht zulässig ist. Mein Plan ist also, über eine andere Maschine (B) in diesem Netzwerk darauf zuzugreifen. Muss ich A in B einbinden und dann B (und A) auf meinem lokalen Computer einhängen? Gibt es einen besseren Weg, dies zu tun?

Aktualisieren

Nur um das Verfahren zu klären:

Zuerst mache ich einen Tunnel

ssh -f user@machineB -L MYPORT:machineA:22 -N 

Und dann mounte ich das Remote-Dateisystem

sshfs -p MYPORT user@127.0.0.1:/myremotepath /mylocalpath 

Ist es richtig?

Wie zerstöre ich den Tunnel, wenn ich fertig bin?

23
Ein besserer Weg, einen Tunnel einzurichten, ist die Verbindung zu B aus dem * GNU-Bildschirm * mit * ssh user @ machineB -L 2222: machineA: 22 -N *, so dass Sie ihn leicht mit ^ C beenden können edk vor 14 Jahren 1

2 Antworten auf die Frage

11
Rodrigo Farias

You can use option ssh_command of sshfs to do the trick:

sshfs ma: /mnt -o ssh_command='ssh -t mb ssh' 

Unmount with the usual

fusermount -u /mnt 

Sorry this is 7 years late...

Mit der neuen Option -J in Openssh 1.1 geht es um Folgendes: sshfs ma: / mnt -o ssh_command = 'ssh -J mb' Ohad Rubin vor 5 Jahren 2
8
edk

ja Tunneln. Sie verbinden Maschine B, erstellen einen lokalen Tunnel (-L) mit dem SSHd-Port von Maschine A und sshfs mit localhost mit dem Port des neu erstellten Tunnels.

Ist der folgende Befehl der richtige Weg, um das zu tun? `ssh -f user @ machineB -L 25: machineA: 25 -N` Andrei vor 14 Jahren 0
Ja, wenn Sie sshd haben, um Port 25 auf Computer A zu hören. Dann müssen Sie nur * sshfs -p 25 user@127.0.0.1: / path / localpath * edk vor 14 Jahren 1
Aha, also für das Standard-SSH-Setup brauche ich `ssh -f user @ machineB -L 22: machineA: 22 -N`, richtig? Andrei vor 14 Jahren 1