Как смонтировать удаленный SSHFS через промежуточный компьютер? Туннелирование?

17792
Andrei

Я хотел бы смонтировать удаленную файловую систему (A) с использованием SSHFS, но иногда у меня есть IP-адрес, доступ с которого не разрешен. Поэтому я планирую получить к нему доступ через другую машину (B) в этой сети. Нужно ли монтировать A на B, а затем монтировать B (и A) на моем локальном компьютере? Есть ли лучший способ сделать это?

Обновить

Просто чтобы уточнить процедуру:

Сначала я делаю туннель

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

А потом я монтирую удаленную файловую систему

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

Это правильно?

Как мне разрушить туннель, когда я закончу?

23
лучший способ настроить туннель - это подключиться к B из окна * GNU screen *, используя * ssh user @ machineB -L 2222: machineA: 22 -N *, так что вы можете легко убить его с помощью ^ C edk 14 лет назад 1

2 ответа на вопрос

11
Rodrigo Farias

Вы можете использовать опцию ssh_commandиз sshfsсделать трюк:

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

Размонтировать с обычным

fusermount -u /mnt 

Извините, это на 7 лет позже ...

С новой опцией -J в Openssh 1.1 это нечто вроде: sshfs ma: / mnt -o ssh_command = 'ssh -J mb' Ohad Rubin 5 лет назад 2
8
edk

да туннелирование Вы подключаете машину B, создаете локальный туннель (-L) к SSHd-порту машины A, затем подключаете sshfs к localhost к порту вновь созданного туннеля.

Является ли следующая команда правильным способом сделать это? `ssh -f user @ machineB -L 25: machineA: 25 -N` Andrei 14 лет назад 0
да, если у вас есть sshd, прослушивающий порт 25 на компьютере A., тогда вам просто нужно будет * sshfs -p 25 user@127.0.0.1: / path / localpath * edk 14 лет назад 1
Ага, так что для настройки ssh по умолчанию мне нужно `ssh -f user @ machineB -L 22: machineA: 22 -N`, верно? Andrei 14 лет назад 1

Похожие вопросы