Я хочу ограничить группу безопасности исходящего трафика из экземпляра EC2. Экземпляру нужен только доступ к корзине S3. Я только что узнал, что S3 использует порт HTTPS (443). Я мог бы просто ввести это правило, чтобы разрешить любое подключение к любому ip, если это HTTPS, но можно ли просто разрешить экземпляру EC2 доступ к S3? К ведру S3 подключен какой-нибудь ip или можно его установить?
Здесь вы можете использовать конечные точки VPC.
http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpc-endpoints.html
«Конечная точка VPC позволяет создать частное соединение между вашим VPC и другим сервисом AWS без необходимости доступа через Интернет, через экземпляр NAT, соединение VPN или AWS Direct Connect. Конечные точки - это виртуальные устройства. Они масштабируются по горизонтали, избыточны , а также высокодоступные компоненты VPC, которые обеспечивают связь между экземплярами в вашем VPC и сервисах AWS, не создавая рисков для доступности или ограничений пропускной способности вашего сетевого трафика ».
Можно ли просто разрешить экземпляру EC2 доступ к S3? К ведру S3 подключен какой-нибудь ip или можно его установить?
S3 использует много IP-адресов. Подозреваю, что составить их всех будет сложно. Кроме того, отсутствует сопоставление IP-адресов и корзин, и вы не можете указать IP-адрес для корзины. S3 - это управляемая служба который работает AWS, и они имеют единственный полный контроль над использованием своего IP-адреса для службы.
Если вам нужно выполнить фильтрацию на этом уровне, проще всего использовать прокси-сервер пересылки (например, squid) с запрещающим ACL по умолчанию, а затем разрешить доступ только к домену S3.
Строительство из этот ответдиапазоны IP-адресов AWS, доступные в формате JSON здесь (https://ip-ranges.amazonaws.com/ip-ranges.json) теперь укажите, какие службы и из каких диапазонов IP-адресов доступны (на момент написания S3 содержит 136 записей).
Следовательно, если у вас есть группа безопасности с этими записями, вы можете добавить S3 в белый список как службу. Список изменится и может включать другие сервисы AWS, но это только начало.
AWS предоставляет список своих общедоступных IP-адресов через JSON. (возможно, и другие форматы, но я не уверен.) Создание инструмента для обеспечения анализа JSON и применения правильных правил брандмауэра должно быть относительно простым. Дополнительную информацию см. В следующей статье блога. :)