首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AWS安全组与网络ACL

AWS安全组与网络ACL
EN

Stack Overflow用户
提问于 2020-09-13 16:16:13
回答 2查看 940关注 0票数 6

我的AWS控制台中有多个EC2实例,我想通过添加防火墙规则/策略来保护这些实例。我看到AWS提供了Network ACLsSecurity Groups来实现同样的功能。

从我所读到的,我对两者都有了基本的认识。

  • 安全组是EC2防火墙(一级防御),与实例绑定在一起,本质上是有状态的,也就是说,传入规则中的任何更改也会影响传出规则。一个实例可以有多个SG。
  • Network的是子网防火墙(二级防御),与子网相连,本质上是无状态的。子网只能有一个NACL。

我的问题是:

  1. 为什么我们需要SG当我们有NACL的?
  2. 当我们有SG的时候,我们为什么需要NACL?
  3. 我们应该一起使用SG和NACL来使我们的AWS应用程序更加安全吗?
  4. 什么时候选择NACLs而不是SG或SG而不是NACLs?

考虑到我有多个实例,我想知道是将它们全部添加到VPC并创建一个Network ACL,还是为每个实例分配一个Security Group

对于类似的场景,需要有最佳实践的建议和参考。

非常感谢!

EN

回答 2

Stack Overflow用户

发布于 2020-09-13 17:34:01

虽然这些可能看起来非常相似,但实现和功能集对两者都不一样。

首先,安全组是最容易理解和实现的,它们被附加在ENI (弹性网络接口)级别,并在资源的物理主机上进行评估,然后才允许通过。

它们有一个有限的特性集,但是NACL的一个很好的特性是您可以通过另一个资源安全组或前缀列表来评估一个源/目的地。这使您能够过滤特定资源的流量,而不是CIDR范围内的任何内容。安全组也是有状态的,这意味着如果流量可以在一个方向说话,它将能够返回相反的方向。

另一方面,NACL位于子网级别,因此它对在同一子网中相互通信的通信量没有任何影响。与安全组不同,虽然它同时包含显式拒绝(安全组只支持对任何未包含的内容使用拒绝)和顺序规则计算(安全组将查找允许入站访问的规则,NACL的计算值将从最低到最高)。

在实现NACLs时,了解哪些流量将从哪个范围(IPv4和IPv6)流、所使用的端口以及入站和出站流量(NACLS是无状态的)非常重要。在将这些规则转发到物理主机本身之前,或者在它们离开物理主机后,根据移动的方向对它们进行评估。另外,一定要考虑临时端口

如果您想提供最封闭的环境,我建议使用这两种方法,但是在实现NACLS之前,请确保通过NACL对允许的通信量进行彻底的规划。要识别/调试这两个方面的问题,还请看一下VPC流量日志

票数 8
EN

Stack Overflow用户

发布于 2020-09-13 16:58:15

在这里适用的一个重要的安全概念是深度防御。这个概念建议在整个信息技术系统中放置多层安全控制,从而更好地保护给定的资产。

这两个控件一起使用将提供一个比任何单个保护层都要好得多的安全体系结构。尽管如此,任何应用程序的正确安全态势都取决于数据的性质--它有多敏感,以及您对风险的偏好。

安全组是最简单和最基本的安全元素,是基线安全的首选。当您的应用程序完成并准备好生产时,或者您有敏感的个人可识别信息(PII),您可以(应该)将NACL添加到您的安全体系结构中。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63872895

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档