Local: Linux Mint 15 - Olivia
/proc/version: Linux version 3.8.0-19-generic (buildd@allspice) (gcc version 4.7.3 (Ubuntu/Linaro 4.7.3-1ubuntu1) )
ssh -V: OpenSSH_6.1p1 Debian-4, OpenSSL 1.0.1c 10 May 2012
sshfs -V: SSHFS version 2.4
Fuse library version: 2.9.0
fusermount version: 2.9.0
using Fuse kernel interface version 7.18
Remote: Ubuntu 12.04.3 LTS
/proc/version: Linux version 3.10.9-xxxx-std-ipv6-64 ([email protected]) (gcc version 4.7.2 (Debian 4.7.2-5) )
ssh -V: OpenSSH_5.9p1 Debian-5ubuntu1.1, OpenSSL 1.0.1 14 Mar 2012
SshfsとFuseを使用して、リモートサーバーのパスワードなしのマウントをセットアップしようとしています。リモートサーバーは標準以外のポートで実行されており、認証にはsshキーペアを使用します。
成功した場合は、さらに3つのリモートサーバーでこれを繰り返し、それぞれが異なるキーを使用するため、どのキーをどのリモートサーバーにマップするかを指定できるようにする必要があります。
私は自分のモディフィケーションに基づいています このチュートリアル
Fuse
グループに追加しました。~/.ssh/config
を編集しました(サーバーごと):`
Host [server_ip]
Port = [port]
IdentityFile = "~/.ssh/[private_key]"
User = "[user]"
`
リモートサーバーをローカルにマウントしようとするたびに、リモートユーザーのパスワード(秘密キーのパスワードではない)の入力を求められます。リモートユーザーがランダムに生成した長いパスワードを持っているので、保存したり覚えたりする必要がないので、キーを使用してこれを実行します。
~/.ssh/config
コマンドを使用してssh(ssh [ip]
ファイルと組み合わせて)を介して接続できるので、リモートユーザーのパスフレーズではなくキーのパスフレーズを要求されるので、構成ファイルを正しく読み取ることができます。
リモートサーバーへの接続を試みるには、コマンドで完全な接続の詳細を手動で指定する必要があります。 `sshfs [user] @ [ip]:[remote_path] [local_path] -p [port]
これまでに試したこと:
PreferredAuthentication = publickey
を指定するid_rsa
に見落としているリモートまたはローカルの構成ファイルはありますか? sshfsの呼び出しに含める必要があるいくつかのスイッチまたはオプション(-Fを試してみました)で、ssh構成を読み取って使用するように強制しますか?
ssh -v -p [port] [user]@[remote_ip]
の出力
OpenSSH_6.1p1 Debian-4、OpenSSL 1.0.1c 2012年5月10日 debug1:設定データの読み取り/home/[me]/.ssh/config debug1:/ home/[me] /。ssh/config行2:[remote_ip] debug1のオプションの適用:/home/[me]/.ssh/config行24:* debug1:のオプションの適用構成データ/etc/ssh/ssh_config debug1:/ etc/ssh/ssh_config行19:* debug1のオプションの適用:[remote_ip] [[remote_ip]]ポート[port]に接続しています。 debug1:接続が確立されました。 debug1:IDファイル/home/[me]/.ssh/[private_key]タイプ2 debug1:ブラックリストファイルをチェックしています/ usr/share/ssh /blacklist.DSA-1024 debug1:ブラックリストファイルをチェックしています/etc/ssh/blacklist.DSA-1024 debug1:IDファイル/home/[me]/.ssh/[private_key]-certタイプ-1 debug1:リモートプロトコルバージョン2.0、リモートソフトウェアバージョンOpenSSH_5.9p1 Debian-5ubuntu1.1 debug1:一致:OpenSSH_5.9p1 Debian-5ubuntu1.1 pat OpenSSH_5 * debug1:互換モードfを有効にするまたはプロトコル2.0 debug1:ローカルバージョン文字列SSH-2.0-OpenSSH_6.1p1 Debian-4 debug1:SSH2_MSG_KEXINIT sent debug1:SSH2_MSG_KEXINIT received debug1:kex: server-> client aes128-ctr hmac-md5 [email protected] debug1:kex:client-> server aes128-ctr hmac-md5 [email protected] debug1:SSH2_MSG_KEX_ECDH_INIT debug1:SSH2_MSG_KEX_ECDH_REPLYを期待しています debug1:サーバーホストキー:[key] debug1:ポート識別子なしでチェック debug1:ホスト '[remote_ip]'は既知であり、 ECDSAホストキー。 debug1:/home/[me]/.ssh/known_hosts:7 debug1:で一致するキーがポート debug1:ssh_ecdsa_verify:署名が正しい デバッグ1:SSH2_MSG_NEWKEYSが送信されました デバッグ1:SSH2_MSG_NEWKEYSが期待されます デバッグ1:SSH2_MSG_NEWKEYSが受信されました デバッグ1:サーバーでローミングが許可されていません デバッグ1:SSH2_ESTG_SERVICE debug1:SSH2_MSG_SERVICE_ACCEPT received debug1:Authenticati続行できるons:publickey、password debug1:次の認証方法:publickey debug1:DSA公開鍵の提供:/home/[me]/.ssh/[private_key] debug1:サーバーはキーを受け入れます:pkalg ssh-dss blen 433 debug1:レベル6で圧縮を有効にします。 debug1:認証が成功しました(publickey)。 [remote_ip]([ [remote_ip]]:[port])。 debug1:channel 0:new [client-session] debug1:Requesting [email protected] debug1:インタラクティブセッションに入ります。 デバッグ1:送信環境。 デバッグ1:送信環境LANG = en_GB.UTF-8 デバッグ1:送信環境LC_CTYPE = en_GB.UTF-8 Ubuntu 12.04.3 LTS(GNU/Linux 3.10.9-xxxx-std-ipv6-64 x86_64)へようこそ
編集:
問題を発見しました。 Sudoを使用してリモートの場所を/ mnt/new_dirにマウントしようとしていました。自分のローカルホーム内の場所にマウントした場合、それは機能します。 sshfs -p [port] [user]@[ip]:/ /home/[me]/tmp/mount
。
これでSudo chown root:Fuse /mnt/new_dir
とSudo chmod 774 /mnt/new_dir
を実行しました。すべてが意図したとおりに機能していると思います。
このセットアップで知っておくべきセキュリティ上の問題はありますか? (自分のユーザーとrootだけがFuse
グループのメンバーです。
Sudo
を使用している場合は、ルートの認証情報を使用してマウントしている可能性があります。私はおそらくあなたが求めていることをしないでしょう、wrt。 user1として/mnt
にマウントし、user2としてアクセスします。グループとユーザーのアクセス許可が複雑になります。ディレクトリを/ mntにマウントして共有したい場合は、autofs
を使用して、システムレベルでマウントする必要があります。
このようなマウントを自動マウントするために知っている3つの方法があります。