0
点赞
收藏
分享

微信扫一扫

利用AWS Network Firewall 实现云中外网访问控制

40dba2f2a596 2022-02-25 阅读 96

随着公司规模的日益增加,aws账号也随之增多,每个账号都有独立的NAT 导致无法对外网进行统一的管理,安全风险随之增加。为了更好的管理,在充分调研后,我们准备采用AWS原生的Network firewall 实现白名单访问。

  1. 需要实现的目标:

(1) 用户只能访问白名单的域名

(2)对于访问失败的域名要有log 输出,并且可以使用aws cloudwatch 分析出被阻挡的URL

(3)在增加网站时需要对网站地址进行检查

架构图如下:

利用AWS Network Firewall 实现云中外网访问控制_白名单

由于我们在上新服务的时候只允许使用infra as code 的方式,所以本次部署采用terraform 部署,代码可以参考aws官方

​​https://github.com/aws-samples/aws-network-firewall-terraform​​

aws 官方部署是基于黑名单的,所以请将​ firewall.tf 文件中​代码generated_rules_type = "ALLOWLIST"

resource "aws_networkfirewall_rule_group" "block_domains" {
capacity = 100
name = "block-domains"
type = "STATEFUL"
rule_group {
rule_variables {
ip_sets {
key = "HOME_NET"
ip_set {
definition = [aws_vpc.spoke_vpc_a.cidr_block, aws_vpc.spoke_vpc_b.cidr_block]
}
}
}
rules_source {
rules_source_list {
generated_rules_type = "LIST"
target_types = ["HTTP_HOST", "TLS_SNI"]
targets = [".facebook.com", ".twitter.com"]
}
}
}

}
举报

相关推荐

0 条评论