중간 시스템을 통해 원격 SSHFS를 마운트하는 방법은 무엇입니까? 터널링?


26

SSHFS를 사용하여 원격 파일 시스템 (A)을 마운트하고 싶지만 때로는 IP 주소가 있으며 액세스가 허용되지 않습니다. 그래서 내 계획은 해당 네트워크의 다른 컴퓨터 (B)를 통해 액세스하는 것입니다. B에 A를 마운트 한 다음 로컬 컴퓨터에 B (및 A)를 마운트해야합니까? 더 좋은 방법이 있습니까?

최신 정보

절차를 명확히하기 위해 :

먼저 터널을 만듭니다

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

그런 다음 원격 파일 시스템을 마운트합니다

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

맞습니까?

완료되면 터널을 어떻게 파괴합니까?


1
터널을 설정하는 더 나은 방법에서 B에 연결하는 것입니다 GNU 화면 사용하여 창을 machineA : (22) -N machineB -L 2222 @ SSH 사용자를 쉽게 ^ C로 죽일 수
EDK

답변:


9

그래 터널링. 머신 B를 연결하고 로컬 터널 (-L)을 머신 A의 SSHd 포트에 생성 한 다음 sshfslocalhost 에 새로 생성 된 터널 포트에 연결합니다.


다음 명령이 올바른 방법입니까? ssh -f user@machineB -L 25:machineA:25 -N
Andrei

1
당신은 시스템 A의 포트 25에 sshd를 듣고있는 경우 예 다음 당신은해야합니다 SSHFS -p 25 user@127.0.0.1 : / 경로 / localpath를
EDK

1
Aha, 기본 ssh 설정의 경우 필요 ssh -f user@machineB -L 22:machineA:22 -N합니까?
Andrei

16

옵션 ssh_command을 사용 sshfs하여 트릭을 수행 할 수 있습니다 .

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

평소와 마운트 해제

fusermount -u /mnt

7 년 늦어서 죄송합니다 ...


5
SSHFS 엄마 : OpenSSH가 1.1의 새로운 -J 옵션으로는 따라 뭔가를하다 / MNT -o ssh_command = 'ssh를 -J MB'
오핫 루빈

0

연결 체계 : Your machine --> Host B --> Host A

우리의 솔루션은 OpenSSH 7.3에 도입 된 Proxy Jump를 사용할 것이므로, 다음과 같은 버전으로 최신 버전인지 확인해야합니다.

ssh -V

그런 다음 ~ / .ssh / config를 올바르게 구성 해야합니다 . 예를 들어 machineB 에서 machineA 의 비밀번호 로그인으로 machineB 를 사용할 수있는 경우 :

machineB
    HostName {machineB ip address}
    User {machineB username}
    Port {machineB port-number}
    IdentityFile ~/.ssh/{machineB private ssh key}

machineA
    ProxyJump machineB
    Hostname {machineA ip address, maybe in local network}
    User {machineA username}
    Port {machineA port-number}

마지막으로, 마운트 지점을 작성 하고 / etc / fstab에 행을 추가하십시오

machineB:{machineB mount path}  {your local mountpoint}  fuse.sshfs delay_connect,_netdev,user,idmap=user,follow_symlinks,identityfile={local path to machineB private key},default_permissions,uid={local user uid},gid={local user gid} 0 0

이것 만 사용하는 것보다 이점이 -o ssh_command="ssh -J machineB"있습니까?
clemisch
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.