《Windows Azure Platform 系列文章目录》
请注意:我们在Azure上创建的虚拟机,都是可以通过公网IP地址来访问的。(直接通过虚拟机的IP地址:PIP,或者通过负载均衡器的IP地址:VIP)
但是总会有不怀好意的黑客,会攻击这些虚拟机。所以保护Azure虚拟机是非常重要的。
如果是Linux虚拟机,笔者强烈建议使用SSH Key的方式来访问Azure Linux虚拟机,同时需要保护要Key和私钥
Windows Azure Virtual Machine (25) 使用SSH登录Azure Linux虚拟机
这里我简单介绍一下几个客户的案例,分享一下他们是如何保护Azure上的虚拟机的。
A公司是通过第三方VPN软件,来保护Azure虚拟机的
- A公司的NAT设备,有几个固定的公网出口IP地址
- 供应商和项目经理,在访问A公司的虚拟机的时候,首先需要通过VPN软件拨号,访问到A公司的内网,然后再访问Azure上的虚拟机
- Azure上的虚拟机的端口,都设置了客户端访问IP地址 (ASM虚拟机用ACL,ARM虚拟机用NSG, Network Security Group)。只有通过VPN拨号,或者在A公司现场办公,才能访问Azure上的虚拟机
- 优点:通过VPN软件,可以设置用户访问的权限
- 缺点:对于办公环境要求比较搞,一般只有企业级客户才有固定公网IP地址和NAT设备。
- 参考资料:Windows Azure Virtual Network (10) 使用Azure Access Control List(ACL)设置客户端访问权限
B公司是通过Point-To-Site VPN方式,来保护Azure虚拟机的
- 当B公司新建Azure 虚拟机网络的时候,会创建1个VPN Gateway
- 供应商和项目经理,通过在本地Windows Server 2008 R2和Win7 (或以上操作系统),安装Azure VPN软件的方式,来访问Azure上的虚拟机
- 优点:Azure虚拟机有2个IP地址,公网IP地址(PIP, VIP)或者是内网IP地址(Dynamic IP, DIP)。
通过Point-to-Site VPN的方式,就可以直接访问到Azure虚拟机的内网IP地址DIP来管理,Azure上的虚拟机不会暴露任何公网访问端口
- 缺点:创建Azure VPN Gateway会产生一定的费用。另外Azure VPN软件只能支持Windows客户端,MAC或者Linux暂不支持。
C公司是通过跳板机的方式,来保护Azure虚拟机的
关于堡垒机的文档很多,这里我就不详细说明了。
除了以上几种访问方式,我们还需要注意以下几点:
1.一个用户一个账户,不要使用公共账户
2.用户的访问日志一定要开启
3.Linux VM一定要通过SSH Key访问
4.使用Azure Backup Service保护虚拟机,当发生问题的时候可以通过备份回滚
Azure Backup (3) 使用Azure恢复服务,备份Azure虚拟机
5.数据库建议采用数据加密方式(对称加密、非对称加密、透明数据加密等),保护数据库服务