virtualbox+vagrant学习-3-Vagrant Share-4-Vagrant Connect

Vagrant Connect

vagrant可以共享到vagrant环境的任何或每个端口,而不仅仅是SSH和HTTP。“vagrant connect”命令为连接人员提供一个静态IP,他们可以使用该IP与共享的vagrant环境通信。发送到此IP的任何TCP流量都被发送到共享的vagrant环境。

 

1.Usage

即调用vagrant share --full命令

这将自动为远程连接共享尽可能多的端口。更多信息请查看 the Vagrant share security page页面。

注意在调用vagrant share --full命令末尾的共享名字,并将其提供给希望连接到你的机器的人。他们只需要简单地调用vagrant connect NAME命令即可(和上一篇ssh的连接方法一样)。这将给他们一个静态IP,他们可以使用它来访问你的vagrant环境。

userdeMacBook-Pro:~ user$ vagrant share --full --http 80
Vagrant Share now defaults to using the `ngrok` driver.
The `classic` driver has been deprecated.

For more information about the `ngrok` driver, please
refer to the documentation:

  https://www.vagrantup.com/docs/share/

==> default: Detecting network information for machine...
    default: Local machine address: 127.0.0.1
    default:  
    default: Note: With the local address (127.0.0.1), Vagrant Share can only
    default: share any ports you have forwarded. Assign an IP or address to your
    default: machine to expose all TCP ports. Consult the documentation
    default: for your provider ('virtualbox') for more information.
    default:  
    default: Local HTTP port: 80
    default: Local HTTPS port: disabled
    default: Port: 2222
==> default: Creating Vagrant Share session...
    share: Importing base box 'hashicorp/vagrant-share'...
    share: Matching MAC address for NAT networking...
    share: Setting the name of the VM: share-fe65ef45-f050-4cc9-98ba-bd19ec32d8e0
    share: Fixed port collision for 22 => 2222. Now on port 2200.
    share: Vagrant has detected a configuration issue which exposes a
    share: vulnerability with the installed version of VirtualBox. The
    share: current guest is configured to use an E1000 NIC type for a
    share: network adapter which is vulnerable in this version of VirtualBox.
    share: Ensure the guest is trusted to use this configuration or update
    share: the NIC type using one of the methods below:
    share: 
    share:   https://www.vagrantup.com/docs/virtualbox/configuration.html#default-nic-type
    share:   https://www.vagrantup.com/docs/virtualbox/networking.html#virtualbox-nic-type
    share: Clearing any previously set network interfaces...
    share: Preparing network interfaces based on configuration...
    share: Adapter 1: nat
    share: Forwarding ports...
    share: 31338 (guest) => 65535 (host) (adapter 1)
    share: 22 (guest) => 2200 (host) (adapter 1)
    share: Running 'pre-boot' VM customizations...
    share: Booting VM...
    share: Waiting for machine to boot. This may take a few minutes...
    share: SSH address: 127.0.0.1:2200
    share: SSH username: tc
    share: SSH auth method: password
    share: 
    share: Inserting generated public key within guest...
    share: Removing insecure key from the guest if it's present...
    share: Key inserted! Disconnecting and reconnecting using new SSH key...
    share: Machine booted and ready!
==> share: 
==> share: Your Vagrant Share is running! Name: budget_hello:agenda_design
==> share: 
==> share: You're sharing full access to your Vagrant machine. This means that
==> share: another user can have access to your Vagrant machine by running:
==> share: 
==> share:   vagrant connect budget_hello:agenda_design
==> share: 
==> share: HTTP URL: http://5fd8f0d7.ngrok.io
==> share: 
==> share: 
==> share: Your Vagrant Share is running! Name: budget_hello:agenda_design
==> share: 
==> share: You're sharing full access to your Vagrant machine. This means that
==> share: another user can have access to your Vagrant machine by running:
==> share: 
==> share:   vagrant connect budget_hello:agenda_design
==> share: 
==> share: HTTP URL: http://5fd8f0d7.ngrok.io
==> share: 

相应虚拟机也已经打开:

 

2.How does it work?

vagrant connect的运行是通过做vagrant最擅长的事情:管理虚拟机来实现的。vagrant connect使用VirtualBox或VMware(更多的提供者支持即将到来)创建了一个只占用20 MB内存的小型虚拟机。

然后,发送到这个小型虚拟机的任何流量都被代理到共享的vagrant环境,就好像它被定向到这个环境一样。

$vagrant connect budget_hello:agenda_design

 

3.Beware: Vagrant Insecure Key

如果你正在使用的vagrant环境或box是受到vagrant不安全密钥对(大多数公共box都是)的保护,那么连接到SSH的任何人都可以轻松地使用SSH。

虽然你希望与你信任的人共享,但在某些环境中,你可能与类或conference共享,并且不希望它们能够SSH进入。
在这种情况下,我们建议从vagrant计算机中更改或删除不安全的密钥。

最后,我们要注意,我们正在努力使之在使用vagrant share时,除非显式允许,否则vagrant私钥将被主动拒绝。但是,这个特性还没有完成。

posted @ 2018-12-25 19:29  慢行厚积  阅读(256)  评论(0编辑  收藏  举报