2015-10-03 5 views
0

Je veux ajouter IP de PC de travail en cours dans le groupe de sécurité,Comment pourrais-je ajouter IP pc actuelle dans le groupe de sécurité avec aws cli

et permettre à tous embouteillées pour elle. Chaque fois que je devrais le faire manuellement avec le tableau de bord web. Comment est-ce que je pourrais le faire avec le manuscrit de coquille.

Ci-dessous se trouvent les commandes cles communes mx que j'ai utilisées.

Mais je ne pouvais pas trouver comment ajouter ip dans un groupe de sécurité spécifique.

list_instances(){ 
    aws ec2 describe-instances --query 'Reservations[].Instances[].[Tags[?Key==`Name`].Value,InstanceId,PublicIpAddress,PrivateIpAddress]' --output text 
} 
start_instance(){ 
    aws ec2 start-instances --instance-ids $1 
} 

Répondre

6

Voici un script qui détermine l'adresse IP de l'ordinateur actuel, puis utilise le AWS Command-Line Interface (CLI) pour ajouter un accès pour les ports 80 (SSH) et 3389 (RDP) - beaucoup plus sûr que l'ajout d'un accès sur tous les ports.

# Retrieve current IP address 
IP=`curl -s http://whatismyip.akamai.com/` 

# Authorize access on ports 80 and 3389 
aws ec2 authorize-security-group-ingress --group-name "SG-NAME" --protocol tcp --port 22 --cidr $IP/32 --profile class --output text 
aws ec2 authorize-security-group-ingress --group-name "SG-NAME" --protocol tcp --port 3389 --cidr $IP/32 --profile class --output text 

Il suppose que l'AWS CLI a accès à des informations d'identification, soit par métadonnées instance (sur les instances Amazon EC2) ou à partir d'un fichier local des informations d'identification configurées via aws configure.

+0

Salut merci ~~ mais savez-vous comment faire cela en sens inverse, je veux dire, comment pourrais-je supprimer IP existante de la règle de sécurité, merci – newBike

+0

Utiliser 'aws ec2 revoke-security-group-ingress' –

0

J'ai créé un petit script shell pour la même, pour vérifier les journaux de tomcat sur ElasticBeanstalk:

#!/bin/sh 
#myIp = my current dynamic IP 
myIp=`curl -s checkip.dyndns.org | sed -e 's/.*Current IP Address: //' -e 's/<.*$//'` 
mySG=SSHSecurityGroup 

#add my IP to security group 
aws ec2 authorize-security-group-ingress --group-id sg-02aXXXXX --protocol tcp --port 22 --cidr $myIp/32 --profile=prod 
echo `date` added shh access to stroll-env security group 

#aws ec2 revoke-security-group-ingress --group-id sg-02aXXXXX --protocol tcp --port 22 --cidr $myIp/32 --profile=prod 
echo `date` done... 

PS: --protocol tcp --port 22 --profile = prod indique que je m ajout d'un accès ssh à mes instances prod (production).

0

Je suis tombé sur ce post en cherchant la commande awscli pour mettre à jour le groupe de sécurité. J'ai pensé que je partagerais ce script Python que j'ai écrit en utilisant Boto3 et Requests récemment qui mettra à jour le groupe de sécurité indiqué avec votre adresse IP actuelle. J'espère que cela peut aider quelqu'un.

https://github.com/JustinDevelops/AWS-SG-IP-Updater

0

la version PowerShell fonction de la réponse de John Rotenstein:

# Set Security Group name 
$SG_ID="sg-903004f8" 

# Retrieve current IP address 
$IP=Invoke-WebRequest -UseBasicParsing http://whatismyip.akamai.com/ 

# Authorize access on ports 22 (SSH) and 3389 (RDP) 
aws ec2 authorize-security-group-ingress --group-id "$SG_ID" --protocol tcp --port 22 --cidr "$IP/32" 
aws ec2 authorize-security-group-ingress --group-id "$SG_ID" --protocol tcp --port 3389 --cidr "$IP/32"