
AWS 계정에 연결된 모든 공용 IP 주소를 가져옵니다. IPv4/IPv6, Classic/VPC 네트워킹 및 모든 AWS 서비스에서 작동합니다.
aws_public_ips는 AWS 계정과 연결된 모든 공인 IP 주소(IPv4/IPv6)를 가져오는 도구입니다.
라이브러리 및 CLI로 사용할 수 있으며, 다음 AWS 서비스를 지원합니다(Classic 및 VPC 모두 지원):
서비스가 목록에 없는 경우(S3, ElastiCache 등)는 일반적으로 공개적으로 배포할 수 없거나 모든 IP 주소가 글로벌 AWS 인프라로 확인되기 때문입니다.
젬을 설치하고 실행합니다:
$ gem install aws_public_ips
# 기본 ~/.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
# 사용자 정의 프로필 사용
$ AWS_PROFILE=production aws_public_ips
52.84.11.159
젬은 Docker에서도 실행할 수 있습니다:
$ docker pull arkadiyt/aws_public_ips
# 자격 증명을 위해 호스트 환경에 적절한 환경 변수가 정의되어 있는지 확인하세요:
$ docker run -e AWS_REGION -e AWS_ACCESS_KEY_ID -e AWS_SECRET_ACCESS_KEY -e AWS_SESSION_TOKEN arkadiyt/aws_public_ips
$ aws_public_ips --help
Usage: aws_public_ips [options]
-s, --services <s1>,<s2>,<s3> List of AWS services to check. Available services: apigateway,cloudfront,ec2,elasticsearch,elb,elbv2,lightsail,rds,redshift. Defaults to all.
-f, --format <format> Set output format. Available formats: json,prettyjson,text. Defaults to text.
-v, --[no-]verbose Enable debug/trace output
--version Print version
-h, --help Show this help message
인증을 위해 aws_public_ips는 기본 aws-sdk-ruby 구성을 사용합니다. 즉, 다음 순서로 확인합니다:
AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEYAWS_REGIONAWS_PROFILE~/.aws/credentials~/.aws/config자세한 내용은 AWS SDK 설정 문서를 참조하세요.
모든 AWS 서비스에서 공인 IP를 찾으려면 IAM 사용자에게 필요한 최소 정책은 다음과 같습니다:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"apigateway:GET",
"cloudfront:ListDistributions",
"ec2:DescribeInstances",
"elasticloadbalancing:DescribeLoadBalancers",
"lightsail:GetInstances",
"lightsail:GetLoadBalancers",
"rds:DescribeDBInstances",
"redshift:DescribeClusters",
"es:ListDomainNames"
],
"Resource": "*"
}
]
}
CHANGELOG.md를 참조하세요. 이 프로젝트는 시맨틱 버저닝을 따릅니다.
CONTRIBUTING.md를 참조하세요.
트윗이나 DM으로 연락 주세요: @arkadiyt