Amazon. Как пакетно добавить набор IP-адресов в Amazon Security Groups?

Под любимым Линуксом это делается довольно просто с помощью их API.

Прежде всего устанавливаем пакет ec2-api-tools:

sudo apt-get install ec2-api-tools

Или если его не существует или хотим всегда иметь самую последнюю версию, добавляем репозиторий:

sudo apt-add-repository ppa:awstools-dev/awstools
sudo apt-get update
sudo apt-get install ec2-api-tools

После чего выполняем относительно простые инструкции по установке и настройке EC2 API Tools для Ubuntu.

После этого всего мы готовы к работе с API Amazon’a.

Создаём Security Group (если ещё её не было):

ec2-create-group ips.port80 -d "IP List @ port 80"
GROUP	sg-XXXXXXXX	ips.port80	IP List @ port 80

И добавляем в неё список IP (при условии что он лежит в файле ~/ips.list, в каждой строке есть отдельный IP или диапазон IP):

for i in `cat ~/ips.list`; do ec2-authorize ips.port80 -P tcp -p 80 -s $i; done
GROUP			ips.port80
PERMISSION		ips.port80	ALLOWS	tcp	80	80	FROM	CIDR	XXX.XXX.0.0/16	ingress
...