安全组是一种有状态的包过滤功能虚拟防火墙,用于设置单台或多台云服务器的网络访问控制,是腾讯云提供的重要的网络安全隔离手段。
安全组是一个逻辑上的分组,可以将同一地域内具有相同网络安全隔离需求的基础网络云服务器或弹性网卡实例加到同一个安全组内。通过安全组策略对实例的出入流量进行安全过滤,修改安全组规则后新规则立即生效。
下图展示了子网ACL和安全组的关系:
本文阐述了使用安全组的一些最佳实践。
实例绑定多个安全组时的优先级为:数字越小,优先级越高。
安全组内规则的优先级为:位置越上,优先级越高。
网络流日志(Flow logs)提供 全时、全流、非侵入 的弹性网卡流量采集,可将网络流量进行实时的存储、分析,可以用于解决故障排查、合规审计、架构优化、安全检测 等问题。
利用 VPC 流日志可捕获传入 / 传出 VPC 中弹性网卡 IP 流量。流日志的主要应用场景有:
具体使用方法可以参考流日志的官方文档。
每家公司都有自己的命名规范,建议安全组的也遵循相关的命名规范,方便后续进行管理。例如,可以遵循如下的命名规范:
“腾讯云地域 + 环境代码 + 操作系统类型 + 系统分层 + 应用代码”
腾讯云地域: BJ(华北),SH(华东),GZ(华南)
环境代码:P-Production(生产环境) , Q-QA, T-testing(测试环境), D-Development(开发环境)
操作系统类型: L -Linux, W-Windows
系统分层: W-Web, A-App, C-Cache, D-DB
应用代码:= A001
举例:安全组命名: BJ-P-L-W-A001, 代表:北京地域、生产环境、Linux系统、Web层、应用A001的安全组
对一个多层的web APP,通常会有多少个安全组?
选择1:一个安全组用于多层是最简单的配置,但是对于生产环境不推荐这样的配置;
选择2:对每个主机分别配置安全组,运维起来太复杂,也不推荐这样的配置;
选择3:对于每层应用分别配置安全组, 例如 CLB 安全组,Web安全组,业务逻辑安全组, DB安全组, Cache层安全组。
建议选择第三种方式。
在安全组中设置规则,除非一定需要,否则不要对0.0.0.0/0开放某一个端口。
通常情况下只有web server对外提供服务,443和80端口需要对0.0.0.0/0开放。
0.0.0.0/0,TCP, 80, 允许任意IP访问HTTP
0.0.0.0/0,TCP, 443, 允许任意IP访问HTTPS
对子账号做权限控制时,建议取消安全组全读写权限。只开放安全组只读权限。QcloudDFWReadOnlyAccess。
只对管理员开放安全组读写权限QcloudDFWFullAccess。
子账号的配置方法,请参考文档:访问管理
云主机的公网SSH/RDP连接应该使用安全组规则禁用掉, 只允许通过跳板机SSH/RDP连接到云主机。
跳板机是唯一允许公网SSH/RDP连接的云主机。
只开放对外提供服务的端口,例如对web server开放80,443, 对MySQL开放3306端口。 其他不需要的端口建议都关闭掉。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。