Aws_Public_Ips:獲取AWS賬戶關聯的所有IP地址(IPv4IPv6)的工具
Aws_Public_Ips是一個可幫助你獲取與AWS賬戶關聯的,所有IP地址(IPv4/IPv6) 的工具。它可以被作為庫和CLI使用,並支持以下AWS服務(均支持Classic和VPC平台):
APIGateway
CloudFront
EC2(ECS, EKS, Beanstalk, Fargate, Batch, NAT 實例)
ElasticSearch
ELB (Classic ELB)
ELBv2 (ALB/NLB)
Lightsail
RDS
Redshift
如果服務未被列出(如S3,ElastiCache等),則很可能是因為它沒有任何的支持(即它可能無法公開部署,並可能將所有IP地址解析到全局AWS基礎架構等)。
快速啟動
安裝 gem 並運行:
$ gem install aws_public_ips
# Uses default ~/.aws/credentials
$ aws_public_ips
52.84.11.13
52.84.11.83
2600:9000:2039:ba00:1a:cd27:1440:93a1
2600:9000:2039:6e00:1a:cd27:1440:93a1
# With a custom profile
$ AWS_PROFILE=production aws_public_ips
52.84.11.159
CLI 命令
$ aws_public_ips --help
Usage: aws_public_ips [options]
-s, --services <s1>,<s2>,<s3> 要檢查的AWS服務列表。可用服務:apigateway,cloudfront,ec2,elasticsearch,elb,elbv2,lightsail,rds,redshift。默認為全部。
-f, --format <format> 設置輸出格式。支持的格式有:json,prettyjson,text。默認以文本格式輸出。
-v, --[no-]verbose 啟用 debug/trace 輸出
--version 列印版本
-h, --help 顯示幫助信息
配置
對於身份驗證,aws_public_ips會使用默認的aws-sdk-ruby配置,檢查順序及內容如下:
1. 環境變數:
AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY
AWS_REGION
AWS_PROFILE
共享憑證文件:
~/.aws/credentials
~/.aws/config
如果運行在EC2, ECS, EKS, 或 Fargate上,則會檢查實例配置文件(通過元數據端點)。
有關更多信息,請參閱AWS SDK文檔中的配置部分。
IAM 許可權
想要從所有AWS服務中查找公網IP, IAM user所需的最小策略如下:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"apigateway:GET",
"cloudfront:ListDistributions",
"ec2:DescribeInstances",
"elasticloadbalancing:DescribeLoadBalancers",
"lightsail:GetInstances",
"lightsail:GetLoadBalancers",
"rds:DescribeDBInstances",
"redshift:DescribeClusters"
],
"Resource": "*"
}
]
}
*參考來源:github
,
FB小編 secist 編譯,轉載請註明來自FreeBuf.COM
※主機應急響應與電子取證的經驗分享
※假偽劣黑產鏈面前拼多多只是個孩子,TA才是巨人
TAG:FreeBuf |