我正在使用
配置基础架构两个子网都是子项目,我需要隔离子网之间的访问。
由于子网需要访问互联网,我已经创建了一个NAT网关,它位于公共子网下。
子网A的NACL - 下面的10.0.1.0/24;
* inbound
ALLOW: 10.0.99.0/24
DENY: ALL
* outbound:
ALLOW: ALL
使用此当前配置,当我将入站规则更改为ALLOW:ALL(或ALLOW:8.8.8.8)时,私有网络实例不会连接到公共网络。 (是的,入境)
所以问题是,如何在不允许所有传入连接的情况下允许所有传出连接。
PS。有大约10个子网,所以我不能指定来自其他子网的传入连接来阻止,我想阻止除异常之外的一切。
答案 0 :(得分:1)
允许临时端口从外部返回流量(即1024-65536)并允许从服务端口上的私有端口传出(即80,443)
NACL不是状态防火墙,因此您必须执行此类操作才能使其正常工作。如果您在可能处于短暂范围内的较高端口上运行服务,那么使用安全组规则阻止这些服务可能是最简单的
参见http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Appendix_NACLs.html方案2
答案 1 :(得分:0)
我找到了解决方案,基本上是在允许来自当前子网和vpn公共子网的内部连接之后,为所有vpc设置拒绝规则并在之后放入临时端口。
这是一个例子;
首先说明
VPC: 10.0.0.0/16
project1-subnet-A: 10.0.2.0/24
project1-subnet-B: 10.0.3.0/24
project2-subnet-A: 10.0.4.0/24
project2-subnet-B: 10.0.5.0/24
management-subnet-A: 10.0.98.0/24
对规则的解释;
10 - allow all traffic inside subnet (not required)
11 - allow all traffic from project1-B-subnet (same project, second availability zone)
50 - allow all traffic from management subnet A (vpn)
51 - allow all traffic from management subnet B(vpn)
100- deny all traffic from VPC (except above networks)
200- accept return traffic
201-accept ICMP packages for connectivity test (not required)
500-service related