公网通过自建VPN访问MRS服务的方法(含附件下载)

举报
落地成盒 发表于 2018/01/25 09:40:25 2018/01/25
【摘要】 MRS服务的ECS对用户开放,但是都是内网地址,用户访问十分困难,给调试带来很多不便,故该本文提供在ECS上搭建vpn服务,通过本地连接vpn,进而可以利用一个弹性ip即可访问整个MRS服务内的所有节点,为用户开发者在MRS服务进行业务开发提供访问便利。本文提供两种方法搭建vpn,开源代码见附件,也可自行在github下载。

方法一:搭建ipsec vpn

前提条件

(1)MRS服务已经存在;

(2)创建一个系统为CentOS 7.x的ECS节点,并绑定弹性ip,安全组对用户本地网段的所有端口和协议开放;

(3)MRS服务和CentOS ECS处于同一个vpc和同一子网,并开通安全组;


优点

1,ipsec为安全的vpn协议,经过两层认证;

2,功能稳定,连接上后可正常访问MRS集群的ECS内网ip和各组件的浮动ip;

缺点:

1,因为EulerOS缺少必要依赖,无法在MRS的ECS安装,需要额外申请CentOS 7.x的ECS;

在资源充足的情况下,推荐此方法,功能齐全,也不影响MRS的运行。


操作步骤

步骤1上传安装ipSec vpn服务的脚本到指定目录

上传如下脚本到ECS的指定目录,例如/opt/vpn-ipsec

脚本下载地址为开源github地址,https://github.com/hwdsl2/setup-ipsec-vpn

步骤2  设置vpn服务的预共享秘钥PKS,用户名和密码

打开脚本vpnsetup_centos.sh,并找到下图的内容

1e.png

如果为空,默认用户名为vpnuser,密码和pks为随机,在安装完成后会提示。

步骤3  设置iptables防火墙规则

在脚本找到下述行数,设置和你ECS子网一致的iptables网段设置

2e.png

ECS子网可以从ECS详细信息的网卡信息中获取:

3e.png

步骤4  执行脚本,等待安装完成

执行脚本vpnsetup_centos.sh;

当出现以下提示后,代表安装成功,也可用service ipsec status查看服务状态;

4e.png

步骤5  在本地连接vpn

以win7系统为例,按以下步骤连接vpn:

(1)打开“控制面板->网络和共享中心”,设置新的连接和网络

5e.png

(2)选择“连接到工作区”,下一步选择“使用我的Internet连接(VPN)”

6e.png

(3)在Internet地址中输入ECS的弹性ip,在下一步输入vpn的用户名密码

7e.png

(4)打开“控制面板->网络和Internet->网络连接”,设置你的vpn连接

8e.png

在高级设置中,输入L2TP预共享秘钥PSK

9e.png

网络->ipv4属性->高级,将“在远程网络上使用默认网关”选项关闭

1q.png

(5)连接VPN,等待VPN连接成功

2q.png

步骤6  完成连接,测试和MRS集群内网的连通性

在用户本地环境直接访问MRS的ECS和各个组件开源页面,测试网络连通性。

Tips:如果win连接失败,可以参考下列方案修复,

详见:https://github.com/hwdsl2/setup- ... /docs/clients-zh.md

故障排除Windows 错误 809

无法建立计算机与 VPN 服务器之间的网络连接,因为远程服务器未响应。

要解决此错误,在首次连接之前需要修改一次注册表,以解决 VPN 服务器 和/或 客户端与 NAT (比如家用路由器)的兼容问题。请参照链接网页中的说明,或者打开提升权限命令提示符并运行以下命令。完成后必须重启计算机。

·         适用于 Windows Vista, 7, 8 和 10

REG ADD HKLM\SYSTEM\CurrentControlSet\Services\PolicyAgent /v AssumeUDPEncapsulationContextOnSendRule /t REG_DWORD /d 0x2 /f

另外,某些个别的 Windows 系统禁用了 IPsec 加密,此时也会导致连接失败。要重新启用它,可以运行以下命令并重启计算机。

REG ADD HKLM\SYSTEM\CurrentControlSet\Services\RasMan\Parameters /v ProhibitIpSec /t REG_DWORD /d 0x0 /f

Windows 错误 628

在连接完成前,连接被远程计算机终止。

要解决此错误,请按以下步骤操作:

1.右键单击系统托盘中的无线/网络图标,选择 打开网络与共享中心。

2.单击左侧的 更改适配器设置。右键单击新的 VPN 连接,并选择 属性。

3.单击 安全 选项卡,从 VPN 类型 下拉菜单中选择 "使用 IPsec 的第 2 层隧道协议 (L2TP/IPSec)"。

4.单击 允许使用这些协议。确保选中 "质询握手身份验证协议 (CHAP)" 复选框。

5.单击 高级设置 按钮。

6.单击 使用预共享密钥作身份验证 并在 密钥 字段中输入你的 VPN IPsec PSK。

7.单击 确定 关闭 高级设置。

8.单击 确定 保存 VPN 连接的详细信息。


方法二搭建pptp vpn

前提条件:

(1)MRS服务已经存在;

(2)给MRS服务中其中一个ECS,例如master2节点,并绑定弹性ip,安全组对用户本地网段的所有端口和协议开放;


优点

1,安装简便,可以脱机安装,无需连接公网;

2,在MRS服务的ECS即可安装,无需另外申请其它ECS;

缺点

1,pptp vpn是比较古老的vpn,不安全;

2,连接vpn后,偶尔会出现无法连接MRS Manager浮动ip的问题;

如果对安全没有较高要求,而且不需要频繁访问Manager,对安装操作便捷性要求高的用户,可以考虑此方法。


操作步骤

步骤1  上传安装pptp vpn服务的脚本到指定目录

上传如下脚本和rpm包到ECS的指定目录,例如/opt/vpn-pptp

脚本和对应rpm包下载地址为开源github地址:

https://github.com/lknife/openvz_pptp_centos-debian-ubuntu

步骤2  修改脚本的rpm和yum步骤

打开脚本openvps_vpn_centos-5-6.sh,并找到下图的内容,将yum和部分rpm补包注释,因为并不需要执行此些步骤;

5t.png

pptp服务默认用户名为vpn,密码为随机,在安装完成后会提示,也可自行在/etc/ppp/chap-secrets设置并重启pptpd服务即可。

步骤3  设置iptables防火墙规则

在脚本找到下述行数,设置和你ECS子网一致的iptables网段设置,iptables改为client-to-LAN模式

6t.png

ECS子网可以从ECS详细信息的网卡信息中获取:

7t.png

步骤4  执行脚本,等待安装完成

执行openvps_vpn_centos-5-6.sh脚本,选择参数2

8t.png

当出现以下提示后,代表安装成功,也可用service pptpd status查看服务状态;

9t.png

步骤5  在本地连接vpn

以win7系统为例,按以下步骤连接vpn:

(1)打开“控制面板->网络和共享中心”,设置新的连接和网络

6y.png

(2)选择“连接到工作区”,下一步选择“使用我的Internet连接(VPN)”

7y.png

(3)在Internet地址中输入ECS的弹性ip,在下一步输入vpn的用户名密码,例如

8y.png

(4)打开“控制面板->网络和Internet->网络连接”,设置你的vpn连接

网络->ipv4属性->高级,将“在远程网络上使用默认网关”选项关闭

9y.png

(5)连接VPN,等待VPN连接成功

10u.png

步骤6  完成连接,测试和MRS集群内网的连通性

在用户本地环境直接访问MRS的ECS和各个组件开源页面,测试网络连通性。


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。