8

I have 3 computers. A, B, and C.

A is the one I'm on now. B is a jumphost that I can SSH through from A to get to computer C using ssh -t B_host ssh C_host.

What I'd like to do is mount C's file system to A through an SSHFS command but a brief look at the man pages didn't show any linking commands.

Is this possible?

m4p85r
  • 305
  • 2
  • 7

3 Answers3

7

A simpler version of the mechanism mentioned in the older answer has since been released. Still using ~/.ssh/config, this will accomplish the same w/ simpler syntax:

Host <host alias>
    User <host_username>
    HostName <host_name>
    ProxyJump [user@]<jump host>[:port]
Omar Buhidma
  • 348
  • 1
  • 8
John Kearney
  • 171
  • 1
  • 3
7

Working off a similar SFTP/SCP based question here you have to modify your SSH Config file as follows (located ~/.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

And then it 'just works' when you run the following from A:

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

Brilliant!

m4p85r
  • 305
  • 2
  • 7
  • 1
    Brilliant indeed! Thanks for this, it's exactly what I needed. I don't know why the downvotes. Google brought me here and this fixed my problem - it's a win for me! – mlerley May 15 '19 at 17:18
6

This can also be accomplished directly on the command-line if needed via:

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

Thanks to this Unix & Linux answer for the info. However, this ServerFault question is currently the top Google result for sshfs jumphost, so copying the info over here as well to hopefully save some future searchers some time.

NotTheDr01ds
  • 161
  • 1
  • 3