这里是普通文章模块栏目内容页
Aws_Public_Ips:获取AWS账户关联的所有IP地址(IPv4IPv6)的工具

获取AWS账户关联的所有IP地址(IPv4IPv6)的工具

获取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": "*" } ] }

收藏
0
有帮助
0
没帮助
0