Windows Azure Virtual Network (8) 创建Azure Point-to-Site点到站点 VPN
《Windows Azure Platform 系列文章目录》
我们在使用Azure的时候,常常有这样的需求:
-我需要将企业内网的主机连接到微软Azure公有云平台
-我需要保证企业内部的网络与微软Azure公有云平台建立VPN连接
通过Azure Virtual Network中的Point-To-Site VPN,就可以实现将企业内网的一台主机(VPN客户端)与Azure Virtual Network中的网络进行连接
-这里的Point指的就是企业内网的一台主机(VPN客户端)
-这里的Site是指Azure Virtual Network的网络
-这样可以实现将企业内网的一台主机与云端网络互通互联,同时通过VPN保证网络的安全性
注意:
-企业内网的主机需要安装VPN客户端
-支持以下客户端操作系统:
Windows 7 (32位和64位)
Windows Server 2008 R2(仅支持64位)
Windows 8(32位和64位)
Windows Server 2012(仅支持64位)
-Point-to-Site VPN是使用SSTP VPN
请注意,如果您首次创建了Azure Virtual Network时候,没有创建Point-to-Site VPN。将来想再次设置P-to-S VPN会失败,所以规划好Azure Point-to-Site VPN是非常重要的。
本章,笔者将使用Azure Virtual Network,将笔者使用的T430s笔记本电脑与Azure Virtual Network打通VPN连接。
配置虚拟网络和动态路由网关
1.首先登陆Azure管理界面。https://manage.windowsazure.com
2.在左侧面板中的Networks,然后点击右侧列表的Create a virtual network。如下图:

3.在Virtual Network Details里。设置name为P2SVNet,地区我们选择East Asia香港的数据中心。如下图:

4.在DNS Server and VPN Connectivity窗口中。
- DNS Server中设置我们需要的 DNS服务器。这里我选择的是192.168.0.4
- 勾选Configure a point-to-site VPN
- 注意:如果想让加入该Point-to-site VPN里的本地电脑和云端虚拟机能够正常使用DNS服务的话,
需要在下图左侧DNS Server中,将DNS设置为Google 服务器8.8.8.8或者电信DNS服务器114.114.114.114
如下图:

5.在Point-to-Site Connectivity中。设置VPN客户端的IP Range。
请注意下图的VPN客户端的IP Range不能与本地网络上的任何IP Rang相重叠。

6.在Virtual Network Address Space中,设置Azure云平台虚拟网络的地址范围。(请注意下图的IP Rang不要与本地网络所用地址范围重叠)
因为笔者在步骤四中,设置了DNS Server地址为192.168.0.4。所以笔者在下图中设置的VNet Address Space IP Rang为192.168.0.0-192.168.0.255。
同时点击"Add Gateway Subnet"按钮,设置Virtual Network的 Gateway。如下图:

7.创建完毕后,我们就可以在列表中查看到之前创建的Point-to-Site VPN

8.创建完毕后,我们点击"Create Gateway"按钮,创建Azure Virtual Network Gateway
创建Gateway的时间会比较长,请耐心等待。

8.回顾:
VPN客户端的设置为
IP Rang为10.0.0.1 - 10.0.0.254
Virtual Network的设置为
IP Rang为192.168.0.0 - 192.168.0.254
Sunet-1 IP Rang为192.168.0.4 - 192.168.0.126
Gateway为192.168.0.132 - 192.168.0.134
DNS地址为192.168.0.4 (可以配置Google服务器8.8.8.8 或者电信服务器114.114.114.114)
9.然后我们先创建一台Azure Virtual Machine,并添加到P2SVNet这个虚拟网路里。注意在指定用户名和密码的时候,输入和您本地用户一样的用户名和密码。(因为虚拟网络上的虚拟机不在主域控制器管理下)。
这台虚拟机的名称我们设置为LeiP2SVM。这台机器创建完毕后,Private IP为192.168.0.4

创建证书
1.在笔者的T430s笔记本上,使用证书创建工作(makecert.exe)是创建X.509证书的一种方法。
2.以管理员身份运行命令提示符(CMD)。
3.在makecert.exe目录(例如C盘目录)下,运行一下命令行,生成客户端根证书
makecert -sky exchange -r -n "CN=RootCertificateName" -pe -a sha1 -len 2048 -ss My "RootCertificateName.cer"
执行完毕后,在C盘根目录下会生成RootCertificateName.cer证书文件,并且该命令将在你的计算上的"个人"证书存储区中创建和安装根证书。
4.将该证书上载到管理门户。点击之前创建的虚拟网路P2SVNet,点击Certificates,然后点击Upload a Root Certificate。
将C:\RootCertificateName.cer证书文件上传。

生成客户端证书
1.在笔者的T430s笔记本里,以管理员身份运行命令提示符(CMD),在makecert.exe目录,执行以下命令:
makecert.exe -n "CN=ClientCertificateName" -pe -sky exchange -m 96 -ss My -in "RootCertificateName" -is my -a sha1
2.会在你的“个人”证书存储区中生成一个名为“ClientCertificateName”的客户端证书。如下图:

3.如果其他客户端需要连接到Azure Virtual Network VPN,只需要在我的Thinkpad T30s,导出ClientCertificateName证书(同时导出的时候,添加私钥)。在其他的客户端导入ClientCertificateName证书即可。
配置VPN客户端
1.回到Azure Management Portal,下载VPN客户端
-支持以下客户端操作系统:
Windows 7 (32位和64位)
Windows Server 2008 R2(仅支持64位)
Windows 8(32位和64位)
Windows Server 2012(仅支持64位)
选择下载与所安装到的客户端操作系统对应的程序包
-对于32位客户端,选择"下载32位客户端VPN程序包"
-对于64位客户端,选择"下载64位客户端VPN程序包"
如下图:

2.下载后请安装VPN,然后会在本地就算机会出现VPN连接。如下图:

3.会弹出VPN客户端程序,如下图:

4.
Windows Azure Virtual Network (8) 创建Azure Point-to-Site点到站点 VPN的更多相关文章
- [SDK2.2]Windows Azure Virtual Network (3) 创建AD Server并添加至Virtual Network
<Windows Azure Platform 系列文章目录> 在之前的文章中,笔者已经向大家介绍了如何创建一个简单的Azure Virtual Network. 本章我将创建一台域服务器 ...
- Windows Azure Virtual Network (7) 设置Azure Virtual Machine固定公网IP (Virtual IP Address, VIP) (2)
<Windows Azure Platform 系列文章目录> 本文介绍的是,当用户在创建Azure Virtual Machine的时候,忘记绑定公网IP,需要重新绑定公网IP的具体操作 ...
- [SDK2.2]Windows Azure Virtual Network (2) 创建简单的Virtual Network
<Windows Azure Platform 系列文章目录> 本章笔者将介绍如何创建一个简单的 Virtual Network. 1.首先我们登陆Windows Azure管理界面 ht ...
- [SDK2.2]Windows Azure Virtual Network (4) 创建Web Server 001并添加至Virtual Network
<Windows Azure Platform 系列文章目录> 在上一章内容中,笔者已经介绍了以下两个内容: 1.创建Virtual Network,并且设置了IP range 2.创建A ...
- Windows Azure Virtual Network (11) 创建VNet-to-VNet的连接
<Windows Azure Platform 系列文章目录> 我们知道,Azure Virtual Network可以 1.将对台Azure VM加入到同一个网段里,同时绑定内网IP地址 ...
- Windows Azure Virtual Network (5) 设置Azure Virtual Machine固定Private IP
<Windows Azure Platform 系列文章目录> 注意:本文介绍的是Global Azure (http://www.windowsazure.com),如果你使用的是由世纪 ...
- Windows Azure Virtual Network (6) 设置Azure Virtual Machine固定公网IP (Virtual IP Address, VIP) (1)
<Windows Azure Platform 系列文章目录> 注意:本文介绍的是Global Azure (http://www.windowsazure.com),如果你使用的是由世纪 ...
- Windows Azure Virtual Network (10) 使用Azure Access Control List(ACL)设置客户端访问权限
<Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的China Azure. 我们在创建完Windows Azure Virtual Machi ...
- [New Portal]Windows Azure Virtual Machine (19) 关闭Azure Virtual Machine与VIP Address,Internal IP Address的关系(1)
<Windows Azure Platform 系列文章目录> 默认情况下,通过Azure Management Portal创建的Public IP和Private IP都是随机分配的. ...
随机推荐
- @MappedSuperclass的用法
实体类baseEntity.java package com.rock.cft.hibernate; import java.util.Date; import javax.persistence.G ...
- svn忽略eclipse自动生成的文件
工程目录下右键,选择“TortoiseSVN”——“Settings”菜单 选择“General”,在“Global ignore pattern”输入框的最前面添加 .settings .class ...
- Xamarin.Forms.Platform.Perspex, Xamarin Forms 的 Perspex(号称下一代WPF) 实现
Perspex, 跨平台的UI框架,加上Xamarin Forms的跨平台的中间层,这样同一套代码就可跨几乎所有已知平台,这其中包括旧版Windows, Linux及Mac OS. 目前,基本控件可显 ...
- 深入理解Ember-Data特性(上)
写在前面 最近比较忙,换了新工作还要学习很多全新的技术栈,并给自己找了很多借口来不去坚持写博客.常常具有讽刺意味的是,更多剩下的时间并没有利用而更多的是白白浪费,也许这就是青春吧,挥霍吧,这不是我想要 ...
- 在Linux上用自己编译出来的coreclr与donet cli运行asp.net core程序
先在 github 上签出 coreclr 的源代码,运行 ./build.sh 命令进行编译,编译结果在 coreclr/bin/Product/Linux.x64.Debug/ 文件夹中. 接着签 ...
- Elasticsearch笔记
资料 官网: http://www.elasticsearch.org 中文资料:http://www.learnes.net/ .Net驱动: http://nest.azurewebsites.n ...
- 译文---C#堆VS栈(Part Four)
前言 在本系列的第一篇文章<C#堆栈对比(Part Three)>中,介绍了值类型和引用类型在Copy上的区别以及如何实现引用类型的克隆以及使用ICloneable接口等内容. 本文为文章 ...
- 【原创】我是怎么从零开始教女同学进行php开发的(4)
周末给自己放了一个小假,周五晚上跟同学出去吃饭,周六又休息了一天,直到周日才坐到电脑前面码字. 本来说好周末这两天把之前三篇的代码根据评论中的建议好好修改一下的,顺便认真系统地学习一遍HTML基础.结 ...
- [异常解决] JTAG 与STM32的SWD连接接线方式
如果我们的板子上只留了4个接口:V3.3,SWDIO,SWDCLK,GND.那么和JTAG的连接关系参见下图: dd400cf22b5c01e57a6c9e198d5383a0_189.jpg (0 ...
- bianma 水平 技巧
能够写出这样的代码, 其实体现了水平 switch (state) { case 0: break; case 3: return; // already connected case 4: stat ...