
Récupérez toutes les adresses IP publiques liées à votre compte AWS. Fonctionne avec IPv4/IPv6, les réseaux Classic/VPC, et dans tous les services AWS.
aws_public_ips est un outil pour récupérer toutes les adresses IP publiques (IPv4 et IPv6) associées à un compte AWS.
Il peut être utilisé comme bibliothèque et comme CLI, et prend en charge les services AWS suivants (tous avec les variantes Classic et VPC) :
Si un service n'est pas listé (S3, ElastiCache, etc.), c'est probablement parce qu'il n'a rien à prendre en charge (c'est-à-dire qu'il n'est peut-être pas déployable publiquement, que toutes ses adresses IP peuvent résoudre sur l'infrastructure globale AWS, etc.).
Installez le gem et exécutez-le :
$ 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
Le gem peut également être exécuté depuis Docker :
$ docker pull arkadiyt/aws_public_ips
# For credentials, ensure the appropriate environment variables are defined in the host environment:
$ 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
Pour l'authentification, aws_public_ips utilise la configuration par défaut d'aws-sdk-ruby, ce qui signifie que les éléments suivants sont vérifiés dans l'ordre :
AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEYAWS_REGIONAWS_PROFILE~/.aws/credentials~/.aws/configPour plus d'informations, consultez la documentation sur la configuration du SDK AWS.
Pour trouver les IP publiques de tous les services AWS, la politique minimale requise par votre utilisateur IAM est :
{
"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": "*"
}
]
}
Veuillez consulter CHANGELOG.md. Ce projet suit le versionnement sémantique.
Veuillez consulter CONTRIBUTING.md.
N'hésitez pas à tweeter ou à m'envoyer un message direct : @arkadiyt