博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
VMware NAT端口映射外网访问虚拟机linux
阅读量:4932 次
发布时间:2019-06-11

本文共 1892 字,大约阅读时间需要 6 分钟。

本文目的:

一. 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 防火墙允许的程序列表(也称为“例外列表”)中选中该程序来实现。若要了解如何进行此操作。

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

  1. 通过单击「开始」按钮 「开始」按钮的图片,然后单击“控制面板”,打开“Windows 防火墙”。 在搜索框中,键入防火墙,然后单击“Windows 防火墙”。

  2. 在左窗格中,单击“高级设置”。 需要管理员权限 如果系统提示您输入管理员密码或进行确认,请键入该密码或提供确认。

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

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

 

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: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就好。 

 

转载于:https://www.cnblogs.com/jackytang/p/9226480.html

你可能感兴趣的文章
linux定时备份mysql并同步到其它服务器
查看>>
浅谈分布式事务
查看>>
Spring MVC专题
查看>>
linux grep命令详解(转)
查看>>
Java下获取可用CPU数
查看>>
JAVA学习笔记
查看>>
可编程硬件Arduino初探(1)-开发环境搭建
查看>>
Django静态文件配置
查看>>
关于C#中怎样实现点ENTER键就相当于按下确认输出按钮
查看>>
jqGrid 是一个用来显示网格数据的jQuery插件
查看>>
windows 下 gcc/g++ 的安装
查看>>
登陆后跳转到指定页
查看>>
[前端插件]为自己的博客增加打赏功能
查看>>
测试阶段的工作进度
查看>>
《将博客搬至CSDN》
查看>>
ExtJS 刷新后,默认选中刷新前最后一次选中的节点
查看>>
实现一个简单的shell(2)
查看>>
Window 常用命令
查看>>
SMTP协议学习笔记
查看>>
ubuntu18.04下安装eclipse jee
查看>>