ホスト名10.0.0.23
のIPアドレスlamp-vm
にインストールされたローカルVagrantマシン。
vagrant ssh
コマンドを使用すると、問題なく接続でき、必要なすべてのことを実行できます。
これによりエラーが発生します
$ ssh vagrant @ lamp-vm -v -v
debug1:アドレス10.0.0.23への接続、ポート22:接続がタイムアウトしました
ssh:ホストlamp-vmポート22に接続:接続がタイムアウトしました
私の/etc/hosts
ファイルには10.0.0.23 lamp-vm
が含まれています。
私の.ssh/configファイルは次のようになります
ホストlamp-vm
ユーザー浮浪者
IdentityFile〜/ .ssh/vagrant
私は-i /path/to/.sh/identity_file
の有無にかかわらずsshコマンドを試しました。
SSHを使用してVagrant Virtual Machineに接続するにはどうすればよいですか?
私もこの問題に直面しました。これが私の最終的な構成であり、ホストマシンのどこからでも迷惑なマシンにSSHで接続できました。
Vagrantfile:
...
# Setting up private_network to have virtual Host
config.vm.network :private_network, ip: "192.168.33.10"
# Enable ssh forward agent
config.ssh.forward_agent = true
...
マシンへのssh:
ssh [email protected]
パスワードの入力を求められます(デフォルトはvagrant):
[email protected]'s password:
そして、ブーム、あなたは入っています!
PS *ホストマシンのどこでもscpを使用できます。
scp /path/to/src/file [email protected]:/path/to/destination/file
古いですが、答えが無いので、お答えします。コマンド:
vagrant ssh
同等です
ssh vagrant@localhost -p 2222 -i .vagrant/machines/default/virtualbox/private_key
これは、何か変更コマンドを適切に変更した場合のデフォルトの動作です。まず最初に、Vagrantはゲストボックスにvagrantユーザーを作成し、そのユーザーを使用してsshを実行します。以前の人々が言ったように、デフォルトでホストのポート2222からゲストのポート22にトラフィックを転送します(vagrant upを使用すると、そのメッセージが表示されます)。そして最後に、Vagrantはsshセッション用のキーを作成するので、その必要はありません。したがって、ssh経由で接続するときに、公開キーを引数として提供する必要があります。
この動作は仕様です。
Vagrantは VirtualBox NAT mode を使用します。これはポート転送を使用することを意味します。
VMモードを使用してNATに直接SSH接続することはできません。
「vagrant ssh」を使用すると、vagrantがポート転送を実行するので、心配する必要はありません。デフォルトではポート2222のlocalhostに接続すると思いますが、ポート番号の衝突も解決しようとします。
VMに直接SSHで接続する必要がある場合は、VMをホスト専用またはブリッジネットワークモードに切り替えます。
私はこれをコメントとして追加しましたが、現在、それを行うのに十分な担当者がいません。 VMをブリッジモードに設定するためのハウツーをここに書きました:
これがお役に立てば幸いです。
Windows/Vagrant/Ubuntu
これは私にとってうまくいきました、そしてあなたがこれがsshクライアントでこれを実行することによってうまくいくかどうかすぐに理解できます。
ssh [email protected] -p 2222 -v
-vを指定すると、詳細モードになり、デバッグ情報が表示されます...
$ ssh [email protected] -p 2222 -v
OpenSSH_7.1p1、OpenSSL 1.0.2e 2015年3月3日
debug1:127.0.0.1 [127.0.0.1]ポート2222に接続しています。
debug1:接続が確立されました。
debug1:IDファイル/home/Jamie/.ssh/id_rsaタイプ1
debug1:key_load_public:そのようなファイルまたはディレクトリはありません
debug1:IDファイル/home/Jamie/.ssh/id_rsa-cert type -1
debug1:key_load_public:そのようなファイルまたはディレクトリはありません
debug1:IDファイル/home/Jamie/.ssh/id_dsaタイプ-1
debug1:key_load_public:そのようなファイルまたはディレクトリはありません
debug1:IDファイル/home/Jamie/.ssh/id_dsa-cert type -1
debug1:key_load_public:そのようなファイルまたはディレクトリはありません
debug1:IDファイル/home/Jamie/.ssh/id_ecdsaタイプ-1
debug1:key_load_public:そのようなファイルまたはディレクトリはありません
debug1:IDファイル/home/Jamie/.ssh/id_ecdsa-cert type -1
debug1:key_load_public:そのようなファイルまたはディレクトリはありません
debug1:IDファイル/home/Jamie/.ssh/id_ed25519タイプ-1
debug1:key_load_public:そのようなファイルまたはディレクトリはありません
debug1:IDファイル/home/Jamie/.ssh/id_ed25519-cert type -1
debug1:プロトコル2.0の互換モードを有効にする
debug1:ローカルバージョン文字列SSH-2.0-OpenSSH_7.1
debug1:リモートプロトコルバージョン2.0、リモートソフトウェアバージョンOpenSSH_6.6.1p1 Ubuntu-2ubuntu2.6
debug1:一致:OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.6 pat OpenSSH_6.6.1 * compat 0x04000000
debug1:127.0.0.1:2222に「vagrant」として認証
debug1:SSH2_MSG_KEXINIT sent
接続は127.0.0.1で閉じられました
SSH2_MSG_KEXINITは、キーが交換されていることを意味します。これはまもなく失敗します...
この場合、キーを削除し、VMでこれを実行して再生成しました。 ( http://ask.xmodulo.com/sshd-error-could-not-load-Host-key.html )
$ ls -al/etc/ssh/sshkey
$ Sudo rm -r/etc/ssh/sshkey
$ Sudo dpkg-reconfigure openssh-server
キーが再生成されたら、Vagrant BoxにSSHで接続できました。
このコメントをチェックしてください: https://github.com/mitchellh/vagrant/issues/1936#issuecomment-21139674
基本的に、プライベートネットワークを使用している場合でも、vagrantは127.0.0.1でsshを実行します。プライベートIP /ホスト名の代わりに、そのsshコマンド@ 127.0.0.1を試してください。
仮想マシンを破壊した
仮想マシンをリロードしました
すべてうまくいった
理由はわかりませんが、最初のプロビジョニングで何かが正しくロードされなかったことは明らかです。