网络隔离与访问控制
SAP生产环境安全解决方案如图1 生产环境安全解决方案全景图所示。
根据业务特点,参考企业安全实践,建议将云上系统(生产环境、开发测试环境)划分为不同安全级别的多个子区域(以子网为粒度进行隔离),包括管理区、应用区、SAP DB区、DMZ区。
其中DMZ区较为特殊,其与Internet有交互,并且DMZ区为开发测试、生产共用区域。各区域建议采用相应的安全策略,限制区域间以及外部的访问。
- DMZ区:直接与Internet互联,承载公网用户以及SAP支持人员对业务系统的访问,安全级别最低,安全风险最高。
- 应用区:部署SAP应用,供企业内部(IDC)用户接入使用,以及与AD服务器等系统互联,安全级别高于DMZ区。
- SAP DB区:主要部署SAP DB,仅能被内网应用区、管理区等受限访问,安全级别最高。
- 管理区:部署运维堡垒机,作为系统运维人员(企业内部),管理、运维其它区域云主机及系统的中转区域。
各区域采用相应的安全策略(使用安全组、网络ACL实现),限制区域间以及外网的访问,策略的设置建议遵从“默认失败”、“最小化”原则:针对特定的访问源,仅开放业务必须的[IP]:[PORT]。
例如,对于企业内部管理员,可访问管理区堡垒机远程登录端口,而其他一般用户,或内部系统则无法访问。对于企业内部一般用户,应仅能访问内网应用区的SAP业务端口。系统内部各区域间(子网隔离),应使用网络ACL限制默认拒绝所有流量,业务必须流量已白名单方式添加。
本章节将主要描述生产环境内部区域间的访问控制策略,基于上文提到的两个原则,给出网络ACL及安全组的设置建议(开发测试环境较为特殊,为了保证IDC内用户对该区资源的访问效率以及网络灵活性,相比生产环境,内部采用稍弱的访问控制策略,详见第2节)。
安全策略
如图2 生产环境子网、网络ACL分布图所示,生产环境涉及8个子网,建议分别创建相应的网络ACL实例:NACL-DMZ-SAP-Router、NACL-PRD-DMZ、NACL-PRD-APP、NACL-PRD-SAPDB-BUSI、NACL-PRD-SAPDB-INTERNAL、NACL-PRD-MGMT。
网络ACL“NACL-DMZ-SAP-Router”,关联生产环境、开发测试环境公用的DEV&PRD-SAP-Router子网。通过策略限制,出方向限制可由SAP-Router访问生产环境SAP应用区、SAP-DB区指定的业务端口,入方向限制可由管理区堡垒机访问子网内服务器的管理端口(22等)。
本节中提到的IP地址及端口号仅为示例,如有其它管理端口,可根据实际情况增加策略。本节仅涉及生产环境内部策略。
规则 # |
目的 IP |
协议 |
目的端口 |
允许/拒绝 |
说明 |
---|---|---|---|---|---|
对PRD-应用区 |
172.22.8.0/24 |
TCP |
234 |
允许 |
允许SAP-Router服务器访问PRD-应用区域内服务器234业务端口。 |
对PRD-SAP-DB区 |
172.22.9.0/24 |
TCP |
345 |
允许 |
允许SAP-Router服务器访问PRD-SAP-DB区域内服务器345业务端口。 |
* |
0.0.0.0/0 |
ANY |
ANY |
拒绝 |
拒绝所有未经前置规则处理的入站数据流。 |
规则 # |
源 IP |
协议 |
目的端口 |
允许/拒绝 |
说明 |
---|---|---|---|---|---|
对PRD-管理区 |
172.22.6.0/24 |
TCP |
22 |
允许 |
允许生产环境管理区堡垒机访问本区域内服务器SSH端口。 |
* |
0.0.0.0/0 |
ANY |
ANY |
拒绝 |
拒绝所有未经前置规则处理的入站数据流。 |
网络ACL“NACL-PRD-MGMT”,关联生产环境PRD-管理子网,出方向通过策略限制可由管理区堡垒机访问生产环境其它区域服务器的管理端口(22等),并拒绝由其它区域发起的对管理区堡垒机的连接。
规则 # |
目的 IP |
协议 |
目的端口 |
允许/拒绝 |
说明 |
---|---|---|---|---|---|
对PRD-DMZ区 |
172.22.7.0/24 |
TCP |
22 |
允许 |
允许生产环境管理区堡垒机访问PRD-DMZ区服务器SSH端口。 |
对PRD-应用区 |
172.22.8.0/24 |
TCP |
22 |
允许 |
允许生产环境管理区堡垒机访问PRD-应用区服务器SSH端口。 |
对PRD-SAP-DB区 |
172.22.9.0/24 |
TCP |
22 |
允许 |
允许生产环境管理区堡垒机访问PRD-SAP-DB区服务器SSH端口。 |
对DEV&PRD-SAP-Router |
172.22.1.0/24 |
TCP |
22 |
允许 |
允许生产环境管理区堡垒机访问DEV&PRD-SAP-Router服务器SSH端口。 |
* |
0.0.0.0/0 |
ANY |
ANY |
拒绝 |
拒绝所有未经前置规则处理的数据流。 |
规则 # |
源 IP |
协议 |
目的端口 |
允许/拒绝 |
说明 |
---|---|---|---|---|---|
* |
0.0.0.0/0 |
ANY |
ANY |
拒绝 |
拒绝所有未经前置规则处理的数据流。 |
网络ACL“NACL-PRD-DMZ”,关联生产环境PRD-DMZ区子网,入方向通过策略限制可由管理区堡垒机访问区域内服务器的管理端口(22等),出方向限制可由本子网访问PRD-应用区以及PRD-SAP-DB区必要的业务端口。
规则 # |
目的 IP |
协议 |
目的端口 |
允许/拒绝 |
说明 |
---|---|---|---|---|---|
对PRD-应用区 |
172.22.8.0/24 |
TCP |
8080 |
允许 |
允许生产环境DMZ区主机访问PRD-应用区服务器8080业务端口。 |
对PRD-应用区 |
172.22.8.0/24 |
TCP |
8443 |
允许 |
允许生产环境DMZ区主机访问PRD-应用区服务器8443业务端口。 |
对PRD-SAP-DB区 |
172.22.9.0/24 |
TCP |
345 |
允许 |
允许生产环境DMZ区主机访问PRD-SAP-DB区服务器345业务端口。 |
* |
0.0.0.0/0 |
ANY |
ANY |
拒绝 |
拒绝所有未经前置规则处理的数据流。 |
规则 # |
源 IP |
协议 |
目的端口 |
允许/拒绝 |
说明 |
---|---|---|---|---|---|
对PRD-管理区 |
172.22.6.0/24 |
TCP |
22 |
允许 |
允许生产环境管理区堡垒机访问本区域内服务器SSH端口。 |
* |
0.0.0.0/0 |
ANY |
ANY |
拒绝 |
拒绝所有未经前置规则处理的数据流。 |
网络ACL“NACL-PRD-APP”,关联生产环境PRD-应用区子网,入方向通过策略限制可由管理区堡垒机访问区域内服务器的管理端口(22等),限制可由SAP-Router、PRD-DMZ区访问本子网内服务器的业务端口;出方向限制可由本子网访问PRD-SAP-DB区必要的业务端口。
规则 # |
目的 IP |
协议 |
目的端口 |
允许/拒绝 |
说明 |
---|---|---|---|---|---|
对PRD-SAP-DB区 |
172.22.9.0/24 |
TCP |
345 |
允许 |
允许生产环境应用区主机访问PRD-SAP-DB区服务器345业务端口。 |
* |
0.0.0.0/0 |
ANY |
ANY |
拒绝 |
拒绝所有未经前置规则处理的数据流。 |
规则 # |
源 IP |
协议 |
目的端口 |
允许/拒绝 |
说明 |
---|---|---|---|---|---|
对PRD-管理区 |
172.22.6.0/24 |
TCP |
22 |
允许 |
允许生产环境管理区堡垒机访问本区域内服务器SSH端口。 |
对DEV&PRD-SAP-Router |
172.22.1.0/24 |
TCP |
234 |
允许 |
允许SAP-Router服务器访问本PRD-应用区域内服务器234业务端口。 |
对PRD-DMZ区 |
172.22.7.0/24 |
TCP |
8080 |
允许 |
允许生产环境DMZ区主机访问PRD-应用区服务器8080业务端口。 |
对PRD-DMZ区 |
172.22.7.0/24 |
TCP |
8443 |
允许 |
允许生产环境DMZ区主机访问PRD-应用区服务器8443业务端口。 |
* |
0.0.0.0/0 |
ANY |
ANY |
拒绝 |
拒绝所有未经前置规则处理的数据流。 |
网络ACL“NACL-PRD-SAPDB-BUSI”,关联生产环境PRD-SAP-DB区业务子网(172.22.9.0/24),入方向通过策略限制可由管理区堡垒机访问区域内服务器的管理端口(22等),限制可由SAP-Router、PRD-DMZ区、PRD-应用区访问本子网内服务器的业务端口。
规则 # |
目的 IP |
协议 |
目的端口 |
允许/拒绝 |
说明 |
---|---|---|---|---|---|
* |
0.0.0.0/0 |
ANY |
ANY |
拒绝 |
拒绝所有未经前置规则处理的数据流。 |
规则 # |
源 IP |
协议 |
目的端口 |
允许/拒绝 |
说明 |
---|---|---|---|---|---|
对PRD-管理区 |
172.22.6.0/24 |
TCP |
22 |
允许 |
允许生产环境管理区堡垒机访问本区域内服务器SSH端口。 |
对DEV&PRD-SAP-Router |
172.22.1.0/24 |
TCP |
345 |
允许 |
允许SAP-Router服务器访问PRD-SAP-DB区服务器345业务端口。 |
对PRD-DMZ区 |
172.22.7.0/24 |
TCP |
345 |
允许 |
允许生产环境DMZ区主机访问PRD-SAP-DB区服务器345业务端口。 |
对PRD-应用区 |
172.22.8.0/24 |
TCP |
345 |
允许 |
允许生产环境应用区主机访问PRD-SAP-DB区服务器345业务端口。 |
* |
0.0.0.0/0 |
ANY |
ANY |
拒绝 |
拒绝所有未经前置规则处理的数据流。 |
网络ACL“NACL-PRD-SAPDB-INTERNAL”,关联生产环境PRD-SAP-DB区内部通信子网(172.22.10-12.0/24),内部通信子网仅供涉及的子网内部通信,需通过网络ACL拒绝所有入站与出站流量。
规则 # |
目的 IP |
协议 |
目的端口 |
允许/拒绝 |
说明 |
---|---|---|---|---|---|
* |
0.0.0.0/0 |
ANY |
ANY |
拒绝 |
拒绝所有未经前置规则处理的数据流。 |
规则 # |
源 IP |
协议 |
目的端口 |
允许/拒绝 |
说明 |
---|---|---|---|---|---|
* |
0.0.0.0/0 |
ANY |
ANY |
拒绝 |
拒绝所有未经前置规则处理的数据流。 |
安全组,如SG_PRD_MGMT、SG_PRD_DB等(与公网无交互),关联生产环境中相应子网中的云服务器,需严格按照最小化的原则控云服务器机对外开放的端口范围,可参考以下图3 安全组策略示例(具体端口请根据实际情况设置)。对IP的访问控制策略,通过网络ACL实现。其它开发测试环境与公网无交互的安全组(详见图1 生产环境安全解决方案全景图),可参考实施。
安全组,如SG_SAP_ROUTER(与公网有交互),关联生产环境中相应子网中的云服务器,需严格按照最小化的原则控制云服务器对外开放的端口范围以及源IP范围,如公网IP较为固定,可参考以下图4 安全组策略示例(具体端口请根据实际情况设置)。
如公网IP不固定的场景,可根据业务需要(如模拟测试,技术支持),临时放通特定公网源IP,相应事务完成后删除策略。
安全组,如SG_PRD_SRM、SG_PRD_Hybrids(与公网有交互),业务端口需要对全网开放,可参考以下图5 安全组策略示例(具体端口请根据实际情况设置)。其中对22/3389等管理端口的源IP控制,将由网络ACL实现,控制只能由管理区堡垒机访问。80等业务端口将对Internet全网开放,不做源IP访问控制,建议采用合适的安全产品进行防护,详见1.2.1节。