🗒️
NewRelicのIPアドレスリストからセキュリティグループを作る
Newrelicが外形監視(New Relic Synthetics)のアクセス元IPアドレスとして公開しているNAT IPアドレスリストからAWSのセキュリティグループを作るterrafromです。
一般公開していないウェブサイトに対して外形監視を行う場合に、Elastic Load Balancingに関連付ける等でお使いください。
CSVを作る
curlでnewrelicのIPアドレスリストを取得し、jqでいい感じにcsvを作ります。
curl -s https://s3.amazonaws.com/nr-synthetics-assets/nat-ip-dnsname/production/ip-ranges.json | jq -cr '["ip","description"],(."Tokyo, JP" | .[] | [.,"Tokyo, JP"]) | @csv' > ./config/newrelic.csv
セキュリティグループとルールを作る
CSVを読み込んでcidr_blocks
に設定します。
resource "aws_security_group" "newrelic_https" {
name = "${var.prefix}-sg-${var.env}-newrelic-https"
description = "Security Group for Newrelic CIDR"
// その他設定
}
resource "aws_security_group_rule" "newrelic_ingress_https" {
type = "ingress"
from_port = 443
to_port = 443
protocol = "tcp"
cidr_blocks = ([for r in csvdecode(file("./config/newrelic.csv")) : r.ip])
security_group_id = aws_security_group.newrelic_https.id
}
Discussion