SSHFS через прыжковый хост

У меня 3 компьютера. А, В и С.

Я тот, на ком я сейчас. B - это трамплин, через который я могу пройти через SSH от A до компьютера C, используя ssh -t B_host ssh C_host,

То, что я хотел бы сделать, это смонтировать файловую систему C в A с помощью команды SSHFS, но краткий обзор справочных страниц не показал никаких команд связывания.

Это возможно?

3 ответа

При необходимости это также можно сделать непосредственно в командной строке с помощью:

      sshfs -o ssh_command="ssh -J B_host" C_host:/<path> <mountpoint> 

Спасибо этому ответу Unix &amp;amp; Linux за информацию. Тем не менее, этот вопрос ServerFault в настоящее время является лучшим результатом Google для sshfs jumphost, поэтому скопируйте информацию и сюда, чтобы, надеюсь, сэкономить время некоторым будущим искателям.

С тех пор была выпущена более простая версия механизма, упомянутого в более старом ответе. Все еще используя ~/.ssh/config, это будет выполнять тот же самый простой синтаксис:

Host <host alias>
    User <host_username>
    HostName <host_name>
    ProxyJump [user@]<jump host>[:port]

Отрабатывая аналогичный вопрос на основе SFTP/SCP, вы должны изменить файл конфигурации SSH следующим образом (находится ~/.ssh/config)

    Host B
        HostName <B_host>
        User <B_user>
        ForwardAgent yes

    Host C
        User <C_user>
        HostName <C_host>
        ProxyCommand ssh B -W %h:%p

И тогда это "просто работает", когда вы запускаете следующее из A:

 sshfs hostC:/<path to mount on C> <path to mount on A>

Brilliant!

Другие вопросы по тегам