Назад | Перейти на главную страницу

как группа безопасности EC2 использует идентификатор группы в качестве значения в исходном столбце

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

И экземпляр EC2 DB, который применяет вышеуказанные SG.

И интенс EC2 для веб-приложения, которое пытается подключиться к БД.

Наш AWS использует подсеть в качестве базовой защиты, а наша база данных недоступна для общественности, и вам необходимо сначала получить доступ в основном экземпляре, прежде чем вы сможете получить доступ к серверу базы данных.

Но при тестировании не сработало. Есть идеи, как заставить это работать?

Группы безопасности AWS работают как белые списки: каждая строка является разрешающим правилом. Все, что не разрешено, запрещено, но то, что разрешено, разрешено, вы не можете переопределить это в любом другом правиле.

Грубо говоря, группы безопасности могут разрешать определенный входящий трафик от:

  • заданный IP-адрес или диапазон IP-адресов;
  • все экземпляры, которым назначена данная группа безопасности.

К сожалению, вы не можете указать что-либо более сложное, например «разрешить доступ из любого экземпляра, который не имеет общедоступного IP-адреса» - вы можете указать только группу безопасности источника. Как вы правильно предположили, группы безопасности, перечисленные в Source поле можно рассматривать как метки.

Итак, в вашем случае конфигурация должна быть такой:

  • Экземпляры EC2 с веб-приложениями должны иметь sg-public-group;
  • Экземпляр EC2 с БД должен иметь SG-DB-группа и sg-private-group;
  • Экземпляры EC2, которым требуется доступ через SSH только из внутренней подсети, должны иметь SG-доступ-группа (но вам все еще нужно подумать, как получить доступ к тем экземплярам, ​​из которых вы планируете доступ).

SG-доступ-из должен быть настроен для разрешения подключений через 22 / TCP из экземпляров EC2, принадлежащих sg-private-group. Однако вы должны убедиться, что все экземпляры EC2, принадлежащие sg-private-group действительно не имеют публичных IP-адресов.

Подробнее см. Группы безопасности AWS документ:

Для каждого правила вы указываете следующее:

  • Протокол: Разрешенный протокол. Наиболее распространены протоколы 6 (TCP), 17 (UDP) и 1 (ICMP).
  • Диапазон портов : Для TCP, UDP или настраиваемого протокола - диапазон разрешенных портов.
  • Тип и код ICMP: Для ICMP - тип и код ICMP. Источник или место назначения: источник (правила для входящего трафика) или пункт назначения (правила для исходящего трафика) для трафика. Укажите один из следующих вариантов:
    • Индивидуальный IPv4-адрес. Вы должны использовать префикс / 32 после IPv4-адреса; например, 203.0.113.1/32.
    • (Только VPC) Индивидуальный адрес IPv6. Вы должны использовать длину префикса / 128; например 2001: db8: 1234: 1a00 :: 123/128.
    • Диапазон IPv4-адресов в блочной записи CIDR, например 203.0.113.0/24.
    • (Только VPC) Диапазон адресов IPv6 в блочной нотации CIDR, например 2001: db8: 1234: 1a00 :: / 64.
    • Еще одна группа безопасности. Это позволяет экземплярам, ​​связанным с указанной группой безопасности, получать доступ к экземплярам, ​​связанным с этой группой безопасности. Это не добавляет правила из исходной группы безопасности в эту группу безопасности. Вы можете указать одну из следующих групп безопасности:
      • Текущая группа безопасности.
      • EC2-Classic: другая группа безопасности для EC2-Classic в том же регионе.
      • EC2-Classic: группа безопасности для другой учетной записи AWS в том же регионе (добавьте идентификатор учетной записи AWS в качестве префикса; например, 111122223333 / sg-edcd9784).
      • EC2-VPC: другая группа безопасности для того же VPC или однорангового VPC в одноранговом соединении VPC.