343ff 发表于 2014-4-10 17:10:06

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

一. 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.首先关掉防火墙
1
/etc/init.d/iptables stop




打开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
1
yum install httpd




  启动HTTP服务
1
/etc/init.d/httpd start




做完这步在虚拟机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:PortWin7 IP:128.206.82.47Port:         5080所以我的测试时是 http://128.206.82.47:5080/

我所遇到的问题:1. 设置监听端口是不知道为什么我设置成10022或10080虚拟机Linux就马上不能上网。 2. 之前没有关闭本地Win7的防火墙, 所以一直连接不上SSH
一些建议:1. 在设置外网连接虚拟机Linux之前, 请确定外网能ping同本地Win7的IP。(可以当废话)2. 不确定下次重启后虚拟机Linux IP会不会动态变化, 未虚拟机Linux设置个静态IP就好。
页: [1]
查看完整版本: VMware NAT端口映射外网访问虚拟机linux