引言:本文整理自【弹性计算技术公开课——ECS安全季】系列课程中,阿里云弹性计算技术专家刘明带来了《如何守住ECS的第一道防线——网络安全》一节。
一、网络安全中常见问题概览
我们在网络环境中常见的安全问题非常多,在此挑选了几个与网络安全高度相关的场景,带大家简单了解一下。
首先是网络系统安全,举几个例子:
第一:路由器、交换机等网络设备存在配置错误,极可能导致恶意入侵,这种是网络设备安全。
第二:Web服务器设计缺陷或者配置不当导致数据泄露,这种是服务器和应用安全、网络信息安全。我们常听说/电影情节中见到黑客对网络请求进行拦截的行为,甚至是直接篡改信息,给用户带来损失。还有一种是在同一个公司中,大家在同一个局域网内部,由于没有细分权限,发生敏感信息的泄露,比如财务部门的数据被泄露,给用户给公司带来损失。
第三:云安全,云环境中的应用没有正确配置安全组、防火墙规则等。
第四:服务器被攻击,由恶意用户发起的DDOS攻击,导致整个服务不可用,以上是网络安全问题的一些常见场景,这些都会给用户带来难以估量的损失。网络安全是一个非常重要的课题,做好防护是阿里云和用户共同的责任。
上图是解决网络安全问题的一个整体思路:
∙ 首先做好网络隔离,如果您的服务不能被外部访问,甚至是不能够被内部访问,它一定是安全的。
∙ 第二是做好阻断,通过使用云上提供的防火墙能力阻断不安全的访问,或者是仅允许指定端口IP访问。
∙ 第三个是对流量进行监控和分析,如果发现了非预期的流量或者是访问,可以第一时间介入,进行相应的处置。
∙ 第四个是做好安全防护,可能您的服务是面向公网用户的,攻击没办法完全避免,做好安全防护可以有效的降低安全问题带来的损失。
二、做好网络隔离
按照刚才提到的,讨论一下如何做好网络隔离,把“坏人”挡在门外,就不用担心他会伤害到您。
那么我们如何做好网络隔离?
∙ 第一:阿里云提供的云上虚拟的局域网专有网络,专有网络相互之间在逻辑上是完全隔离,无法通信的,利用这个特性,可以构建自己的局域网,在每一个专有网络里,用户可以根据自己的需求创建多个交换机,交换机可以绑定网络ACL进行流量的控制。
∙ 第二:建议用户把自己的网络设备按照重要程度、部署服务类型、安全等级等进行划分,根据他们的不同把相应的服务部署到不同的交换机下。
∙ 第三:尽量使用内网通信,非必要情况下不要使用公网。例如当想进行跨专有网络的通信时,优先使用阿里云提供的终端节点进行服务,终端节点是通过内网进行通信的,以上就是阿里云网络隔离的三大建议,下面会详细的介绍相关的产品。
首先,学习一下专有网络。
专有网络是专有的云上私有网络,用户可以根据自己的需求在云上创建多个专有网络,在专有网络中,用户可以完全掌控自己的网络,例如可以选择地址IP的范围,阿里云提供ABC三个网段的地址段,例如10.0.0.0掩码是8的A类地址段和192.16 8.0.0掩码是16是B类地址段。用户可以在专有网络中配置路由表和网关,可以在自己定义的专有网络中使用阿里云的一些资源,如云服务器ECS,云数据库RDS和负载均衡SLB等等,专有网络还有非常多其他高级的功能,在此不再详细介绍,大家可以根据官网文档进行了解。
重点介绍安全相关的内容,专有网络提供了丰富的隔离能力:
∙ 在专有网络之间在逻辑上是彻底隔离的,相互之间默认无法通信。
∙ 专有网络内的ECS可以通过内网进行通信减少,这样就可以减少公网的暴露。
∙ 每个专业网络内它可以建立多个交换机,可以有利于这种网络的网络和网段的划分,不同交换之间也可以设置一些隔离。
这是对专有网络的一些介绍,下面一起了解一下虚拟交换机。
接下来,了解虚拟交换机的概念。
交换机是组成专有网络的基础网络设备,用来连接不同的语音资源实例,每个专有网络下,用户可以很方便的管理多个虚拟交换机,根据自己的需求进行创建、删除、配置虚拟交换机。
左边图中交换机的一些概念,第一,当前的专有网络中有三个交换机,其中的两个位于可用区A,另外一个位于可用区B。每一个交换机都必须会有一个可用区中。
专有网络交换机提供的安全能力主要有两点:
∙ 第一,服务隔离,可以根据服务的安全等级、服务的类型进行网站的划分。
∙ 第二是流量控制,专业网络,提供了网络ACL的功能,网络ACL可以绑定到交换机上,对流经交换机的流量进行访问的控制。
这就是交换机的整体概念,继续看一下关于网络隔离的一些其他建议。
第一个建议是用户权限分级,设置一个网络的管理员统一来管理网安全组,网络ACL以及流量日志这些高危的权限,避免高危权限的泄露,同时出现问题时也更容易排查;普通用户无法变更网络ACL和安全组的ACL。
第二个建议是隐藏私密的内容,通过阿里云提供了网络ACL,安全组和云防火墙,限制不易公开的内容访问权限,避免数据泄露。
第三个建议是要做服务隔离。
图中可以看到,有两个集群,第一个是Mysql服务集群,第二个是web服务集群。把Mysql的服务集群,都放在安全组A里,Web的服务集群都放在安全组B里。在大多数的应用场景下,只需要为安全组A配置一条允许内网进10.0.0.0掩码是8访问3306端口的规则,而安全组B配置一条允许公网及0.0.0.0且掩码是零的访问八零端口的规则,这样不同的服务它有不同的隔离级别。并且每一个服务的访问权限都是最小的。
第四个建议是优先使用内网而不是公网进行通信,一个典型的场景是跨VPC的通信,第一种方案,两个VPC都引入公网。第二个方案是为每一个VPC建立一个终端节点,通过终端节点使用内网进行通信,推荐第二种方案,这样可以减少公网暴露,降低安全的风险,这就是讲解的网络隔离的内容。下一个章节会讲解如何通过网络ACL和安全组进行流量的控制。
带你读《从基础到应用云上安全航行指南》——来上课!一文掌握守住ECS网络安全的最佳方法(2):