Windows Azure支持两种模式的VPN接入:

  • Site to Site,接入端需要有固定的公网IP地址,用于连接局域网和Windows Azure的虚拟网络。
  • Point to Site,客户端使用Windows SSTP拨号,只支持Windows操作系统。用于开发测试和运维。

通过Point to Site VPN连接到Windows Azure,可以有效的提升系统安全——减少对外开放的端口数量,只保留应用程序的对外服务端口而关闭系统维护端口。例如:一个Web Server,只开放80或者443端口即可,SSH(22)或者RDP(3389)等维护端口就完全不需要对外开放了。当然,即便对外开放了维护端口,也可以通过设置ACL来确保访问安全。但是,ACL是基于IP地址的,特别是在国内复杂的网络环境中,设置基于IP地址的ACL并非是一件容易的事情——用户通过好多的层NAT上网,一个IP地址可能被N多用户共享。如果遇到突发情况,需要在家或者在办公室之外连接到Windows Azure进行系统维护,ACL就无能为力了。

首先,我们在虚拟网络上创建一个动态路由VPN网关。具体操作请参见Windows Azure的说明文档,在此不再赘述。VPN网关创建时间比较长,至少要20分钟才能ready。在等待的过程中,我们来创建Point to Site VPN所需的证书。

创建证书需要使用“makecert”,如果已经安装了Visual Studio,那么可以直接通过Visual Studio命令行来使用“makecert”。没有安装Visual Studio也别担心,为了制作一个数字证书而安装一个“巨无霸”开发工具显然是划不来的。其实“makecert”只要三个文件就可以运行了。需要的同学可以点击这里下载

第一步,制作root证书:

makecert -sky exchange -r -n "CN=[root证书名称]" -pe -a sha1 -len 2048 -ss My "[root证书文件名].cer"

建议将root证书长期保留,除了Point to Site VPN,还有很多地方用得上。默认root证书有效期到2039年(差不多能用到退休)。执行上述命令后,当前目录下会生成一个"[root证书文件名].cer"文件,将这个文件上传到Windows Azure虚拟网络中。

第二步,使用root证书签发客户端证书:

makecert.exe -n "CN=[客户端证书名称]" -pe -sky exchange -m 3 -ss My -in "[root证书名称]" -is my -a sha1

其中,“-m”参数是指定客户端证书的有效月数,建议不要超过3个月,这样可以通过重新签发客户端证书来增强安全性,特别是在多人使用的情况下。当然,也可以为每个使用VPN的用户签发一个独立的客户端证书。

当VPN网关创建完成,root证书也顺利上传后,在虚拟网络的dashboard页就可以下载到VPN客户端的安装包了,注意请根据自己的操作系统选择正确的版本:32位或者64位。运行这个安装包,就会在本地创建一个新的网络连接,点击新创建的网络连接,就可以建立起到Windows Azure虚拟网络的VPN连接!

如果要将客户端证书分发给多个用户使用,那么在本地执行“certmgr.msc”,找到“个人”证书存储区,将客户端证书连同私钥一起导出为".pfx"文件后供其他用户在本地(用户自己的计算机上)执行客户端证书导入(双击".pfx"即可)。客户端证书正确导入后,再运行VPN客户端安装包创建新的VPN连接。注意:导出客户端证书时,需要设置一个导入密码,请将将此密码告知需要导入客户端证书的用户。

我们来总结一下Point to Site VPN的特性:

  • Windows Azure只能给Point to Site VPN分配一个C类网段,因此,同时拨入Point to Site VPN的客户端数量是有限制的,理论上不超过250个。
  • 客户端只支持Windows操作系统,Mac OS X和Linux无法使用。
  • 客户端连接到VPN后,不会改变本地网络的出口路由(连接到Internet的路由),用Point to Site VPN连接国际版Microsoft Azure进行FQ是肯定没戏的。
  • 客户端建立VPN连接时不需要使用用户名和密码来验证身份,因此客户端证书就是唯一的身份验证凭据。
  • 如果出现客户端证书泄漏,可以在虚拟网络中将上传的root证书删除。这样所有使用该root证书签发的客户端证书都会失效。

连接到Windows Azure Point to Site VPN的更多相关文章

  1. 通过基于 Linux 的软件 VPN 设备连接到 Windows Azure 虚拟网络

    摘要 本文章将说明如何通过使用软件 VPN 设备,将本地办公室或站点连接到 Windows Azure 虚拟网络.在构建原型或在构建可以尽快利用云的"开发/测试"工作流时,软件VP ...

  2. Microsoft Azure Point to Site VPN替代方案

    Microsoft Azure提供了Point to Site VPN,但有时候这并不能满足我们的需求,例如:Point to Site VPN是SSTP VPN,只能支持Window客户端拨入,而且 ...

  3. 在Windows Azure上搭建SSTP VPN

    在国内,VPN是用来干嘛的大家都懂的.很久之前我尝试用Azure的Virtual Network搞VPN结果惨败了.最近微博上有基友写了篇文章亲测可行,原文在这里.可惜是英文的.所以我的这篇文章仅仅是 ...

  4. Windows Azure上搭建SSTP VPN

    一.服务器设置 首先,从0开始,你需要创建一个新的VM.我选择Windows Server 2012 R2,所有步骤和创建普通VM都一样,但最后在防火墙设置里一定要打开TCP 443端口: 创建完成后 ...

  5. 使用Openswan接入Windows Azure Site to Site VPN

    Winodows Azure的Site to Site VPN支持主流的防火墙和路由器等接入设备.具体型号和系列请参考下表: VENDOR DEVICE FAMILY MINIMUM OS VERSI ...

  6. 跨云应用部署第一步:使用IPSEC VPN连接AWS中国版和Windows Azure中国版

    随着公有云的普及,越来越多的客户将关键应用迁移到云端.但是事实证明,没有哪家云服务提供商可以提供100%的SLA,无论是例行维护还是意外中断服务,对于客户的关键应用而言,都会受到不同程度的影响.此外, ...

  7. 将内部部署网络和 Windows Azure 集成的新选项: 使用AT&T

    关于云计算的主要对话围绕着向云迁移展开.今天,我们宣布与 AT&T 结为战略联盟,共同为客户提供云计算服务.这一合作伙伴关系将授权客户访问 Windows Azure,作为其现有数据中心的逻辑 ...

  8. 使用 IIS Manager 对 Windows Azure 网站进行远程管理

     最近,我们为客户新增了使用 Windows自带的 IIS管理控制台管理 Azure网站的功能.IIS Manager支持 HTTP over SSL,提供到您的 Windows Azure 网站 ...

  9. 简化 Web 应用程序与 Windows Azure Active Directory、ASP.NET 和 Visual Studio 的集成

    大家好! 今天的博文深入讨论我们今天推出的开发人员工具和框架中的一些新功能.我们通过与 ASP.NET 和 Visual Studio 团队合作开发了一些重大的增强功能,让开发人员能够轻松使用 Win ...

随机推荐

  1. telnetlib/SNMP

    telnetlib telnetlib 总体来讲还是很好理解的,因为已经耍过paramiko 关于 .read_very_eager(), 简单理解就是就是读尽量多,读到没有反馈了为止 关键功能 1) ...

  2. 创建和删除节点:——核心DOM

    1. 创建单个元素节点:3步:       1. 创建空元素节点对象:          var elem=document.createElement("标签名");      ...

  3. html5的发展历程和由此引起的政治斗争

    2007年,乔布斯断言拒绝Flash并预言HTML5时代来临,IT行业就对HTML5产生了一股宗教热情.HTML5有着许多出众的特性,可以直接在网页上绘图.嵌入音视频.实现信息互动,可以跨越iOS.A ...

  4. 关于window.onload

    window.onload是当文档加载完成后执行. <script>之间的代码会在代码加载到此处执行.function内的代码是调用时才执行. 但window.onload有个坏处,它非要 ...

  5. [android]AndroidInject框架——我的第一个android小型框架

    作为一个移动应用开发者,随着需求的日益增多,Android项目的越来越臃肿,代码量越来越大, 现在冷静下来回头看看我们的代码,有多少代码跟业务逻辑没什么关系的 所以,本人自不量力,在github上建了 ...

  6. Android Testing学习01 介绍 测试测什么 测试的类型

    Android Testing学习01 介绍 测试测什么 测试的类型 Android 测试 测什么 1.Activity的生命周期事件 应该测试Activity的生命周期事件处理. 如果你的Activ ...

  7. Android 手机卫士--home界面布局

    本文实现当从splash界面进入hone界面的时候,产生一种渐进淡入的动画效果,在onCreate中调用一个方法initAnimation(),代码如下: /** * 添加淡入的动画效果 */ pri ...

  8. 【Android】不依赖焦点和选中的TextView跑马灯

    前言 继承TextView,并仿照源码修改而来,主要是取消了焦点和选中了判断,也不依赖文本的宽度. 声明 欢迎转载,但请保留文章原始出处:) 博客园:http://www.cnblogs.com 农民 ...

  9. python 获取星期几

    In [17]: now.strftime(%a),now.strftime(%w) Out[17]: ('Mon', '1') Directive Meaning %a Weekday name. ...

  10. 源码编译安装gcc-5.3.0

    系统环境:Amazon Linux AMI 2015.09.2 (HVM)---Fedora 23 Server 1.下载gcc-5.3.0安装包并将gcc-5.3.0.tar.gz放到/opt目录下 ...