Windows Azure Virtual Network (10) 使用Azure Access Control List(ACL)设置客户端访问权限

简介:

  《Windows Azure Platform 系列文章目录

 

  本文介绍的是国内由世纪互联运维的China Azure。

 

  我们在创建完Windows Azure Virtual Machine的时候。如果是创建的Windows 虚拟机,Azure默认会打开PowerShell和Remote Desktop的Public Port,接受Internet上的客户端访问。

  但是这样会出现一个问题,假设Azure VM的用户名和密码不小心泄漏了(或者黑客用暴力破解法破解我的用户名和密码),那任何Internet上的用户都可以通过RDP访问我在Azure云上创建的虚拟机,那岂不是非常不安全?

  想象另外一个场景,假设某个企业将对内服务的应用系统(例如企业培训系统,报销系统等)部署到了Azure云端。如果其他Internet上的用户也可以浏览访问的话,也是非常不安全的。

  在这种情况下,我们可以对Azure VM Endpoint设置访问控制列表(Access Control List, ACL),只允许Internet上的某些Public IP地址可以访问我云端的某些Endpoint。比如只允许企业的公网IP地址访问Azure VM的RDP,除了企业公网IP地址的其他IP都无法访问。这样即使Azure VM的用户名密码被泄漏了,只要客户端IP不在我的Azure VM Endpoint ACL信任列表里,也是无法访问Azure VM的。

 

  注意:Azure ACL只对Internet上的客户端IP进行访问控制。如果是需要对在同一个虚拟网络(Virtual Network)的不同VM之间的内网访问控制列表,请使用Azure Network Security Group。

 

  接下来,笔者将介绍,如何通过Azure ACL,只允许笔者的笔记本电脑的公网IPV4地址能访问到Azure VM的80端口。而阻止其他公网IPV4地址访问。

 

  下面开始我们的介绍部分:

  1.首先我们在Azure云端创建一个Windows 虚拟机。创建完毕后,通过RDP在Windows VM安装IIS。同时打开该VM的Public Port 80。如下图:

  

  2.默认的ACL会允许所有的入站流量。所以不管是通过本地的笔记本电脑,或者我的手机4G网络(这2个设备的公网IP地址肯定是不同的)。

  我都是可以通过DNS地址:http://leitestwinvm.chinacloudapp.cn,访问到该站点的IIS欢迎页面的。如下图,左边是我通过笔记本访问,右边是通过4G手机网络访问

                   

  

  3.首先需要知道笔者的笔记本电脑的公网IPV4地址,我们可以在SQL Azure的控制面板里看到。或者可以使用baidu进行搜索。

  

 

  4.我们回到Azure VM的Endpoint菜单中,选择HTTP 80端口,然后点击ACL。如下图:

 

  

  5.在弹出的窗口中,Action分为两种Permit和Deny。如下图:

  

  这里我要详细说明一下:

  1.无ACL。默认情况下,ACL内容为空,则允许Internet上所有的流量

  2.Permit(允许)。如果我设置了一个或多个permit,例如允许IPV4为10.10.10.10的客户端IP地址,则只允许10.10.10.10的所有流量,除此IP以外的其他IPV4地址都拒绝。概念类似于白名单。

  3.Deny(拒绝)。如果我设置了一个或者多个Deny,则只拒绝该IPV4地址,其他IPV4地址都可以访问。概念类似于黑名单。

  4.Permit和Deny都存在的情况。当你要指定允许或拒绝的特定 IP 范围时,可结合使用“允许”和“拒绝”。

 

  因为笔者要允许笔记本电脑的IP访问,别的IP地址都拒绝,我们可以在上面只设置Permit。把步骤3中的IP地址输入进去。如下图:

  

  注意上面的Remote Subnet为客户端的公网IPV4地址,且为CIDR地址。

 

  6.这样设置完毕后,只有笔者的笔记本电脑的公网IPV4地址可以访问Azure VM的80端口。如果用手机4G网络访问,会显示无法找到该地址。如下图:

 

 

  总结ACL可以使用的场景:

  1.当企业拥有固定IPV4地址,可以设置IT管理员访问PowerShell,Remote Desktop和SSH端口

  2.企业将对内服务的应用系统(例如企业培训系统,报销系统等)部署到了Azure云端

  3.其他需要限制客户端IPV4地址的情况。

 

 

 

本博-三石Blog(下文简称本博),在本博客文章结尾处右下脚未注明转载、来源、出处的作品(内容)均为本博原创,本站对于原创作品内容对其保留版权,请勿随意转载,如若真有需要的朋友可以发Mail联系我;转载本博原创作品(内容)也必须遵循“署名-非商业用途-保持一致”的创作共用协议,请务必以文字链接的形式标明或保留文章原始出处和博客作者(Lei Zhang)的信息,关于本博摄影作品请务必注意保留(www.cnblog.com/threestone)等相关水印版权信息,否则视为侵犯原创版权行为;本博谢绝商业网站转载。版权所有,禁止一切有违中华人民共和国著作权保护法及相关法律和本博(法律)声明的非法及恶意抄袭。


本文转自Lei Zhang博客园博客,原文链接:http://www.cnblogs.com/threestone/p/4468924.html,如需转载请自行联系原作者

目录
相关文章
|
2月前
|
Windows
Coze开源软件Windows客户端-coze_desk
Coze开源软件Windows客户端-coze_desk
502 0
EVE-NG的Windows客户端安装
EVE-NG提供Windows的客户端,集成了Wireshark、VNC、putty等软件,主要为完成配套EVE-NG的WEB浏览中的数据抓包等功能。 我的EVE-NG的Windows客户端安装包为EVE-NG-Win-Client-Pack.exe。
|
4月前
|
监控 Linux 定位技术
Linux【环境部署 01】NTP时间服务器搭建及Linux+Windows客户端使用(一篇学会使用NTP服务)
Linux【环境部署 01】NTP时间服务器搭建及Linux+Windows客户端使用(一篇学会使用NTP服务)
655 0
|
1天前
|
Apache 数据安全/隐私保护 Windows
如何在Windows部署TortoiseSVN客户端并实现公网连接内网VisualSVN服务端
如何在Windows部署TortoiseSVN客户端并实现公网连接内网VisualSVN服务端
|
1月前
|
消息中间件 监控 NoSQL
在Windows下设置分布式队列Celery的心跳轮询
在Windows下设置分布式队列Celery的心跳轮询
28 0
|
1月前
|
安全 数据安全/隐私保护 Windows
Windows 命令提示符(CDM)操作(六):安全和权限
Windows 命令提示符(CDM)操作(六):安全和权限
28 0
|
2月前
|
Java 数据库连接 数据库
Windows7 64位 连接Access数据库“未发现数据源名称并且未指定默认驱动程序“的解决办法
Windows7 64位 连接Access数据库“未发现数据源名称并且未指定默认驱动程序“的解决办法
|
2月前
|
监控 安全 网络协议
windows服务器权限分析
windows服务器权限分析
15 1
windows服务器权限分析
|
3月前
|
Windows
EVE-NG的Windows客户端安装
EVE-NG提供Windows的客户端,集成了Wireshark、VNC、putty等软件,主要为完成配套EVE-NG的WEB浏览中的数据抓包等功能。 我的EVE-NG的Windows客户端安装包为EVE-NG-Win-Client-Pack.exe。
|
3月前
|
应用服务中间件 nginx Windows
Windows 设置开机自启 将可执行文件加入到系统服务中
Windows 设置开机自启 将可执行文件加入到系统服务中
38 0