Vagrant更改默认的SSH端口

匿名 (未验证) 提交于 2019-12-02 23:30:02

Vagrant默认转发宿主的2222端口到虚拟机的22端口(默认设置,无须配置)。在有多个虚拟机并存的情况下,2222端口将不好使。具体表现在:

  1. 启动第二个虚拟机的时候,会报端口占用错误:
 
  1. 连接不同机器的SSH,会提示密钥不符:
 

为了解决这个烦人的问题,只有为不同的虚拟机分配不同的主机端口。

根据提示,直接在Vagrantfile中更改转发端口:

config.vm.network "forwarded_port", guest: 22, host: 3333 

然后启动机器,发现2222端口没有直接更改为3333,而是新增了3333端口:

 

issue

config.vm.network "forwarded_port", guest: 22, host: 2222, id: "ssh", disabled: "true" config.vm.network "forwarded_port", guest: 22, host: 3333

id: "ssh"

Forwarded port ‘2222’ (host port) is declared multiple times with the protocol ‘tcp’.

重启后,即可看到转发端口已经更改为3333。

参考

  1. https://www.vagrantup.com/docs/vagrantfile/machine_settings.html
  2. https://github.com/mitchellh/vagrant/issues/1922
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!