来自Android的SSH Vagrant VM

时间:2015-10-23 11:11:14

标签: android ssh vagrant

这是我得到的Vagrant文​​件:

VAGRANTFILE_API_VERSION = "2"
PROJECTS_HOME = ENV['PROJECTS_HOME'] || "../"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  config.vm.box = "ubuntu/trusty64"
  config.vm.network "public_network", ip: "192.168.8.120"
  config.vm.network :forwarded_port, guest: 443, host: 443
  config.vm.network :forwarded_port, guest: 443, host: 4443
  config.vm.network :forwarded_port, guest: 80, host: 8080
  config.vm.hostname = "node1"
  if PROJECTS_HOME
    config.vm.synced_folder PROJECTS_HOME, "/srv/projects"
  end
  config.vm.provider "virtualbox" do |v|
    v.memory = 2048
    v.cpus = 2
  end
  config.vm.provision "shell", inline: <<SCRIPT
#cd /vagrant && make all
SCRIPT
end

然后,如果我想通过PuTTY SSH它,当我输入ssh vagrant@127.0.0.1时,它可以正常工作。但是,我还在我的Android设备上下载了SSH客户端,该设备运行的是Ginger Bread,它连接到同一个网络。

我的问题是我如何从Android中诋毁流浪汉?

我已经尝试了以下所有方法:

ssh vagrant@192.168.8.120

ssh vagrant@127.0.0.1

ssh vagrant@10.0.2.15

enter image description here

如果有人能解释我该怎么做,我们将非常感激:)

2 个答案:

答案 0 :(得分:1)

Vagrant通常使用映射到内部22端口的外部端口2222。但是,您可以打开该框的VirtualBox网络适配器设置以验证该设置。

没有端口号的ssh命令正在使用端口22,您需要使用-p标志连接到端口2222

ssh -p 2222 vagrant@IP

此外,Virtualbox仅在localhost127.0.0.1)上转发,通过将其更改为主机IP的0.0.0.0并清除访客IP字段向公众开放。

答案 1 :(得分:1)

要从主机自动将guest 22端口转发到2222,然后从任何ip可用于ssh,您可以将以下内容添加到Vagrantfile定义中

config.vm.network :forwarded_port, guest: 22, host: 2222, host_ip: "0.0.0.0", id: "ssh", auto_correct: true

然后您可以使用本地主机IP访问您的VM - 确保将私钥下载到您的Android设备并添加-i选项,否则您将被提示输入密码

ssh -p 2222 vagrant@<host_IP_on_the_network> -i <path_to_private_key>