SSHFS에서 키를 지정하는 방법은 무엇입니까?


69

답변을 찾을 수 없다는 질문이 있습니다. 우분투 리눅스 12.04를 실행하는 두 대의 컴퓨터가 있습니다. 공개 / 개인 RSA 키 인증을 사용하여 첫 번째 컴퓨터 ( "홈")를 두 번째 컴퓨터 ( "원격")로 SSH 할 수 있도록 설정했습니다.

이것은 내 가정용 컴퓨터에서 키 인증을 사용하여 설정 한 첫 번째 SSH 연결이 아니므로 내 가정용 컴퓨터에는 여러 id_rsa 개인용 키 파일이 있습니다 (각각 다른 컴퓨터가 SSH로 연결됨). 따라서, 나는 성공적 SSH는 내가 키 파일 (에 지정할 때 수 있어요 ssh-i사용, 옵션) ssh username@ipaddress -i path/to/keyfile/id_rsa.2.

잘 작동합니다. 그러나 sshfs원격 파일 시스템을 마운트하는 을 사용 하고 싶습니다 . 하지만 ssh여러 개의 키와 멋진 연주 것, 내가 얻을 수있는 방법 찾을 수 없습니다 sshfs올바른 개인 키 ( "id_rsa.2")를 사용합니다.

sshfs이것을 할 수있는 방법 이 있습니까?


이 시나리오에서 키 체인 이 저에게 효과적입니다 ...
jasonwryan

답변:


94

나를 위해 일하는 것은 다음과 같습니다.

sshfs me@x.x.x.x:/remote/path /local/path/ -o IdentityFile=/path/to/key

당신은 이것을 통해 알아낼 수 있습니다 man sshfs:

-o SSHOPT = VAL ssh 옵션 (man ssh_config 참조)

man ssh_config

IdentityFile

사용자의 DSA, ECDSA 또는 DSA 인증 ID를 읽을 파일을 지정합니다.


1
감사합니다! @ goldilocks, sshfs맨 페이지 에서 IdentityFile 줄을 완전히 놓쳤습니다 . 그것이 바로 내가 찾던 것입니다. 방금 솔루션을 시도했지만 완벽하게 작동합니다. 도움을 주셔서 감사합니다!
JL

1
이 명령은 맥 OS 시에라 작동하지 않습니다
basZero

1
IdentityFile경로 메모. 로 실행 sshfs하는 경우 경로 에서 sudo사용 ~IdentityFile루트의 홈을 나타내며 RSA 파일이없는 곳일 수 있습니다. /Users/<username>/.ssh대신 비슷한 것을 사용하십시오 .
Aaron

19

~/.ssh/config파일 에서 사용할 개인 키를 지정하면 됩니다. 예를 들면 다음과 같습니다.

Host server1.nixcraft.com
    IdentityFile ~/backups/.ssh/id_dsa
Host server2.nixcraft.com
    IdentityFile /backup/home/userName/.ssh/id_rsa

정말 고마워! @Steven 당신 sshfs은 .ssh / config 파일 을 읽는다 는 것을 몰랐 습니다 (이전에는 누군가의 이전 게시물의 stackoverflow.com/a/13638806/1940466 에서 비슷한 답변을 놓쳤다는 것을 알았습니다 ). 잘 알고 있습니다. 가치있는 것에 대해서는 귀하의 답변과 @goldilocks의 답변을 모두 수락하고 싶지만 그럴 수는 없습니다. 또한 귀하의 답변에 투표 할만한 명성이 없습니다. 그래도 답변을 주셔서 감사합니다!
JL

3
sshfs -o ssh_command='ssh -i path/to/keyfile/id_rsa.2' username@ipaddress:/path /local/path

감사합니다이 답변은 안드로이드 파일 시스템을 마운트하기 위해 아치 리눅스에서 저에게 효과적이었습니다
Edward Torvalds
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.