您的位置:首页 > 运维架构 > Linux

VMware NAT端口映射外网访问虚拟机linux

2016-06-02 21:06 288 查看
本文目的:

一. SSH连接

二. 访问HTTP

  

VMware Workstation提供了两种虚拟机上网方式,一种bridge,一种NAT,bridge可以获得公网地址,而NAT只能是内网地址了。

NAT相当于把主机当成了一个NAT转换器,我们可以添加端口映射,使得外网可以访问利用NAT上网的虚拟机。

主机环境: Win7

公网IP: 128.206.82.47

虚拟机版本: VMware Workstation 10

虚拟机系统: CentOS 6.5

虚拟机IP: 192.168.111.129

当前情况: 本机安装虚拟机系统后, 通过虚拟机IP可以在本地win7使用SSH连接, 但是外网不能通过SSH连接虚拟机。

一. SSH连接

1.首先关掉防火墙

打开VMware Network Editor,找到这个虚拟机使用的网卡。 选择Type类型为NAT方式的网卡(VMnet8) 

 


2.点击NAT setting...



3.点击Add (你可以看到我已经添加好了的端口)

Host port: 你打算用本地win7 的哪一个端口作监听端口

Virtual machine IP address : 你的linux 的IP未多少,你就填多少

Virtual machine port: 你打算用监听端口映射到虚拟机linux哪个端口, 22未SSH端口, 80未HTTP端口



4.关闭本地Win7防火墙

由于咱们之前关闭了虚拟机linux的防火墙, 但是没有关闭本机Win7对应的监听端口防火墙,所以也得设置一下Win7的防火墙。

如果 Windows 防火墙阻止某一程序,而您希望允许该程序通过防火墙进行通信,通常可以通过在 Windows 防火墙允许的程序列表(也称为“例外列表”)中选中该程序来实现。若要了解如何进行此操作。

但是,如果没有列出该程序,则可能需要打开一个端口。例如,当您与朋友联机进行多人游戏时,可能需要为该游戏打开一个端口,这样防火墙才能允许游戏信息到达您的计算机。端口始终保持打开状态,因此请确保关闭不需要打开的端口。

通过单击「开始」按钮

,然后单击“控制面板”,打开“Windows 防火墙”。 在搜索框中,键入防火墙,然后单击“Windows 防火墙”。

在左窗格中,单击“高级设置”。

如果系统提示您输入管理员密码或进行确认,请键入该密码或提供确认。

在“高级安全 Windows 防火墙”对话框的左窗格中,单击“入站规则”,然后在右窗格中,单击“新建规则”。

按照新建入站规则向导中的说明进行操作。

5.连接测试

因为咱们是通过映射的方式从外网连接到虚拟机的linux,

所以host name 就是本机Win7的IP地址, Port 为 Win7 刚刚设置的监听端口 5022, User name 就是你自己的Linux 用户名。



然后就大功告成了。

二.连接HTTP

1. 安装HTTP

  启动HTTP服务

做完这步在虚拟机Linux上打开浏览器 输入127.0.0.1 或者 本地Win7 输入 虚拟机Linux IP地址 192.168.111.129

就可以看到HTTP的效果, 但是外网不可以访问网页,因为要设置端口映射。

2. 设置端口映射

不多说了, 看上面SSH连接的1、2、3、4 步方法来设置端口映射就好, 只要报映射端口改为80就行, 注意别把监听端口搞冲突了。

3.访问测试

远程机器上使用本地Win7 IP地址访问, 再加上监听端口, 格式为 http://Win7 IP:Port

Win7 IP: 128.206.82.47

Port: 5080

所以我的测试时是 http://128.206.82.47:5080/
我所遇到的问题:

1. 设置监听端口是不知道为什么我设置成10022或10080虚拟机Linux就马上不能上网。

2. 之前没有关闭本地Win7的防火墙, 所以一直连接不上SSH

一些建议:

1. 在设置外网连接虚拟机Linux之前, 请确定外网能ping同本地Win7的IP。(可以当废话)

2. 不确定下次重启后虚拟机Linux IP会不会动态变化, 为虚拟机Linux设置个静态IP就好。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: