本期我们来谈谈阿里云安全组的策略规划。
阿里云安全组本质上与VPC一样都是通过软件定义网络虚拟出来的,相当于传统网络中的防火墙,所以叫虚拟防火墙。
阿里云安全组策略设置官方教程 https://help.aliyun.com/document_detail/25471.html
下面分享一种简单的安全组规划原则:
1、每一种应用类型应划分独立的安全组,比如:Web业务的安全组只放开入方向的 80 / 443 端口;
2、每个独立的业务系统,需要各自独立的安全组,比如:某公司运营了一套快递柜系统,一套电商系统,两套系统独立,此时应为两套系统规划独立的安全组,保证两套系统逻辑上物理隔离;当然,也可以每个系统使用独立的阿里云后台,这样就直接分开了;
3、安全组规则的优先级,远程维护如 SSH 应给予最高优先级(1),普通业务如 Web 服务(60),低级维护业务如日志采集可以低一些(30),ICMP如无特殊情况建议全部放开,且优先级可以更低一点(100);
4、建议禁止从公网 SSH 到业务主机,业务主机仅允许从内网 SSH,仅允许从公网 SSH 登录到一台运维主机,然后再从此主机 SSH 到其他业务主机;当然不差钱的团队可以直接上堡垒机:)
根据以上原则,做出如下安全组策略:
1、Base 组,应包含业务系统的所有服务器,配置“仅允许内网SSH”和 “允许全部ICMP”两条规则。要实现“仅允许内网访问”,主要是授权对象要设置对,这里的 10.0.0.0/8 是维护人员所在的网段,比如公司内网,云端维护主机内网等,总之只有 IP 地址在这个网段内的才能通过内网访问。
2、Web 组,应包含业务系统中所有对外提供 Web 服务的主机。
3、MySQL 组,应包含所有提供 MySQL 服务的主机,通常 MySQL 服务不应该直接暴露在公网中,因此需要配置授权对象。
4、运维组,包含所有运维业务相关的主机,如果业务类型比较多也可以考虑更加细分的方案,比如监控独立,采集类独立等等。
注意这里的 SSH 规则没有限定授权对象,也就是所有人可以访问,同时允许 PPTP 服务,主要是为了建立 连接, 相关内容将在近期推送,敬请关注:)
完成以上设置后,只需要将各种业务的主机与对应的安全组捆绑就好了。比如新购买了一台服务器计划用于Web服务,那么在创建这台主机时,应该绑定到 Base 和 Web 两个安全组,如果是MySQL服务,则应与 Base 和 MySQL 组绑定。
如果业务量还不大,Web 和 MySQL 服务部署在一台主机上,那么也可以将该主机绑定到 Base、Web、MySQL 三个组。日后业务量上来,需独立做 Web 服务,则将 MySQL 的组解绑即可。
所有操作都可以阿里云后台搞定,非常方便。