109

vagrant ボックスで新しい SSH キー ペアを作成するのではなく、エージェント転送を使用して、ホスト マシンにあるキー ペアを再利用したいと考えています。Vagrantfile でconfig.ssh.forward_agentを TRUE に設定してから、VM を再起動し、次を使用してみました。

vagrant ssh -- -A

...しかし、git チェックアウトを実行しようとすると、パスワードの入力を求められます。私が見逃しているものはありますか?

4

9 に答える 9

90

OS X Mountain Lion で vagrant 2 を使用しています。

Vagrant.configure("2") do |config|
  config.ssh.private_key_path = "~/.ssh/id_rsa"
  config.ssh.forward_agent = true
end
  1. config.ssh.private_key_pathあなたのローカルの秘密鍵です
  2. 秘密鍵は、ローカルの ssh-agent で使用できる必要があります。で確認できますssh-add -L。リストにない場合は追加しますssh-add ~/.ssh/id_rsa
  3. ~/.ssh/authorized_keysVagrant VM に公開鍵を追加することを忘れないでください。コピーして貼り付けるか、 ssh-copy-idなどのツールを使用して行うことができます
于 2013-04-21T03:28:56.193 に答える
84

Vagrantfileに追加します

Vagrant::Config.run do |config|
   # stuff
   config.ssh.forward_agent = true
end

ドキュメントを参照してください

于 2012-08-23T06:10:07.603 に答える
20

「config.ssh.forward_agent = true」を vagrant ファイルに追加することに加えて、ホスト コンピューターがエージェント転送用に設定されていることを確認します。Github は、これに関する優れたガイドを提供します。(トラブルシューティングのセクションを参照してください)。

于 2013-07-26T13:55:11.463 に答える
5

Windows を使用している場合、Vagrant の SSH 転送はデフォルトでは正しく機能しません (net-ssh のバグのため)。この特定の Vagrant バグ レポートを参照してください: https://github.com/mitchellh/vagrant/issues/1735

ただし、回避策があります。VagrantFile の簡単なプロビジョニング スクリプトを使用して、ローカル SSH キーを Vagrant VM に自動コピーするだけです。例を次に示します: https://github.com/mitchellh/vagrant/issues/1735#issuecomment-25640783

于 2014-07-14T19:04:01.990 に答える
2

vagrant-aws最近、Vagrant 1.1.5 でプラグインを試したところ、 SSH エージェントの転送で問題が発生しました。IdentitiesOnly=yesVagrant は、それを に変更するオプションなしで強制していたことが判明しましたno。これにより、Vagrant はVagrantfile、AWS プロバイダー用にリストした秘密鍵のみを確認するようになりました。

ブログ記事に私たちの経験を書きました。ある時点でプルリクエストになる可能性があります。

于 2013-04-11T15:03:07.767 に答える