高质量解读《互联网企业安全高级指南》三部曲(技术篇)——基础安全措施
前言:
高效读书,一张逻辑图读懂、读薄书中重点。
注:下面文字只是对逻辑思维图的”翻译“,节省时间,只看图即可。
目录
基础安全措施逻辑思维图
安全域划分
安全域划分的目的是将一组安全等级相同的计算机划入同一个安全域,对安全域内的计算机设置相同的网络边界,在网络边界上以最小权限开放对其他安全域的NACL(网络访问控制策略),使得安全域内这组计算机暴露的风险最小化。
传统的安全域划分
图6-1是一个典型的传统中小型企业的安全域划分,虚线表示网络边界,也正好是一个安全域。
在传统的安全域划分中还会通过硬件防火墙的不同端口来实现隔离。但是如今这种方法越来越多地只适用于办公网络,对于大规模生产网络, 这种方法可能不再适用。
典型的Web服务
典型的Web服务通常是接入层、应用层、数据层这样的结构,其安全域和访问控制遵循通用的模型,如图6-2所示。
其中Web层是直接在互联网上暴露给用户的,而应用层不需要直接暴露在互联网上,它只需要接受Web的请求,以及能访问位于更靠后层的数据库层,数据库层则只需要接收来自应用层的请求,同时自己的I/O来自于EBS卷。
大型系统安全域划分
在大型互联网服务中,一般可以用图6-4来抽象表示对外提供的服务的关系。当然,这 只是一个对典型服务区域的抽象,真正的结构可能比图示要庞大得多。
生产网络和办公网络
这里只介绍办公网络和生产网络连接部分所涉及的安全域问题,如图6-5所示。
- 生产网络的SSH 22端口在前端防火墙或交换机上默认阻止访问。
- 远程访问(运维连接)通过v*n或专线连接到机房生产网络。
- 通过生产网络的内网而非外网登录各服务器或自动化运维平台。
- 办公网络中运维环境、发布源和其他OA环境VLAN隔离。
- 虽然在同一个物理办公地点,但运维专线和办公网络的接入链路各自独立。
- 为保证可用性,运维专线最好有两条以上且来自不同的ISP,防止单链路故障时无法运维。
- 跳板机有所有的运维操作审计。
系统安全加固
Linux加固
应用配置加固
远程访问
账号密码
网络访问控制
安全域和访问控制的区别在于,安全域是更加高层次的圈地运动,而NACL相对更具体化,针对的是每一个系统;安全域相对固化,基本不会变动,而NACL则会应需而变。
生产网络多层NACL架构如图6-7所示,采用多层NACL的原因在于,一方面安全域之间需要隔离,安全域内部也需要划分,另一方面当某一层的NACL失效时,还有其他层的NACL在抵挡,不会马上变成 ,'裸奔”模式。
在海量IDC追求弹性运维的架构中,可能NACL无法实施到理想状态,这就要求在两个方面做补偿:
补丁管理
架构容灾能力:支持有损服务,灰度和滚动升级,好的架构应该支持比如让逻辑层的某些功能服务器下线,接入层把流量负载均衡到其他服务器,打完补丁后再切回来。
日志审计
服务器4A
定义
4A 指:账户(Account)、认证(Authentication )授权(Authorization )审计(Audit)。
基于LDAP
LDAP的方案可以使用LDAP服务器作为登录的SSO,统一托管所有的服务器账号, 在服务器端对于 Linux 系统只要修改 PAM ( Pluggable Authentication Modules), Windows 平台则推荐pGina ( pGina是一个开源插件,作为原系统凭证提供者GINA的替代品,实现 用户认证和访问管理),使登录认证重定向到LDAP服务器做统一认证。
基于堡垒机
在Radius上新建用户Richard,为该用户生成SSH的公私钥对,使用自动化运维工具将公 钥分发到该用户拥有对应权限的服务器上。用户的SSH连接由堡垒机托管,登录时到Radius 服务器使用动态令牌认证身份,认证成功后授权访问其私钥,则对于有SSH公钥的服务器该用 户都可以登录。网络访问控制上应设置服务器SSHD服务的访问源地址为堡垒机的IP。