SSHFSでキーを指定する方法は?


70

答えが見つからない質問があります。私は2台のコンピューターを所有していますが、どちらもUbuntu Linux 12.04を実行しています。パブリック/プライベートRSAキー認証を使用して、2台目のコンピューター(「リモート」)にSSH接続できるように、1台目のコンピューター(「ホーム」)をセットアップしました。

これは、自宅のコンピューターでキー認証を使用してセットアップした最初の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、sshfsmanページのIdentityFile行を完全に見落としました。それはまさに私が探していたものです。私はあなたの解決策を試したところ、完璧に機能します。私は助けに感謝します!
JL

1
このコマンドはmacOS Sierraでは機能しません
basZero

1
IdentityFileパスノート。で実行sshfsする場合、パスsudoでの使用~IdentityFileルートのホームを参照しますが、これはRSAファイルの場所ではない場合があります。/Users/<username>/.ssh代わりに次のようなものを使用してください。
アーロン

20

あなたがする必要があるのは、~/.ssh/configファイルで使用する秘密鍵を指定することです。例えば:

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

1
本当にありがとう!@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

おかげで、この答えは、Androidのファイルシステムを実装するためのアーチLinux上で私のために働いた
エドワード・トーバルズ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.