用vagrant在VirtualBox创建虚拟机后,在xshell中如何通过ssh连接进入虚拟机中。

vagrant创建虚拟机,并用xshell连接虚拟机。

最近因为学习的需要,第一次接触了vagrant,包括VirtualBox也是初次接触。在通过vagrant up创建一台虚拟机之后发现,在xshell中无选择通过密码登录到虚拟机中,只能选择秘钥登录,最后被逼无奈只能选择在cmd中用vagrant ssh进到虚拟机。
这就尴尬了因为是Windows环境,所以通过cmd中以进去之后,也无法复制黏贴,在VirtualBox中打开虚拟机,也没办法启动。
最后想到的解决办法是:在xshell中创建了一个密钥对。想办法把公钥放到虚拟机的~/.ssh/authorized_keys中去,这样就可以连接了。

在Windows的系统中有个叫power shell的工具,简称ps。通过cmd进入虚拟机和在VirtualBox中开启虚拟机都无法复制粘贴的情况下,ps是唯一一个可以能连接进虚拟机,而且能复制粘贴的工具。在通过一番操作之后终于在xshell中连接到虚拟机里面去了。
当然上面的这个操作比较复杂,不是我推荐的。以下我想要说的。

在进去~/.ssh/authorized_keys里面的时候,结果发现了个有趣的东西
这里写图片描述
这里的vagrant居然有个公钥在这里。这也就是可以通过vagrant ssh连接到虚拟机的原因。
这样的话,如果我找到这个公钥对应的秘钥,并且在xshell中通过这个秘钥来登录,那不就不用那么麻烦了?说做就做。结果理所当然的找到了一个秘钥。
这里写图片描述
打开xshell,ip填入127.0.0.1,端口填2222,这个是用vagrant创建虚拟机一般的配置。然后点击连接。
输入用户名vagrant,然后出现一个要求填入公钥,然后选择浏览,找到上面的那个秘钥,选中秘钥,按下回车。
这里写图片描述
ok,你成功的在xshell中连接到虚拟机里面了。
至于不能用密码登录的原因,我觉得应该是vagrant创建虚拟机的时候,设置虚拟机拒绝使用密码登录 - -。
大概就是这个原因吧。
为了完善一下,我还是去找找怎么设置运行使用密码登录。有点要说明一下,有的时候使用密码登录比较方便,但是如果习惯用秘钥登录的话,你会觉得秘钥更舒服,而且秘钥我安全很多。不多说,要是你坚持用密码登录就接着看下去吧。
要想使用密码登录可以修改/etc/ssh/sshd_conf中的PasswordAuthentication no改为PasswordAuthentication yes。
这里写图片描述
然后重启sshd服务(service sshd restart)。
这里写图片描述
然后就成功出现这个。

  • 7
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值