Кілька груп безпеки EC2 - дозвільні чи обмежувальні?


27

Що відбувається, коли я призначу кілька груп безпеки екземпляру? Чи дозволено це в тому сенсі, що дозволений трафік, якщо це дозволяє одна із груп безпеки. АБО це обмежувальне значення в тому сенсі, що кожна група безпеки повинна дозволити пропуск трафіку?

Наприклад, скажімо, що у мене є клас екземплярів, які завжди можуть спілкуватися з іншими примірниками в тому ж акаунті. У мене також є клас екземплярів, який буде приймати трафік тільки через HTTP (порт 80).

Чи можливо обмежити доступ до внутрішніх примірників і лише через HTTP, створивши та застосувавши дві групи безпеки:

  1. "Внутрішня" група безпеки. Дозволити весь трафік від інших членів цієї групи безпеки на всіх портах для всіх транспортів (TCP, UDP, ICMP)
  2. Створіть групу безпеки "http". Дозволити весь трафік у порт 80 через TCP з будь-якого джерела.

АБО я змушений створити єдину групу безпеки, яка дозволяє здійснювати трафік з порту 80, де саме джерело?

Відповіді:


5

Якщо екземпляр має кілька груп безпеки, він має суму всіх правил у різних групах.

Наприклад, скажімо, що у мене є клас екземплярів, які завжди можуть спілкуватися з іншими примірниками в тому ж акаунті. У мене також є клас екземплярів, який буде приймати трафік лише через http (порт 80).

Це ідеальна ситуація для AWS Virtual Private Cloud. Розміщуйте внутрішні екземпляри в приватних підмережах та публічні екземпляри в публічних підмережах.


ceejayoz - Так це "обмежувальний" випадок? Значить, рішення двох груп безпеки діятиме? Домовились про рішення VPC; мій приклад був більше зрозуміти, як працюють кілька груп. Де ти до речі знайшов відповідь?
SFun28

Ви хочете, щоб одна група безпеки була для внутрішніх примірників, а інша - для публічних осіб. Додавання громадськості до групи 80: 0.0.0.0/0 до внутрішніх примірників зробить їх доступними для публічного Інтернету.
ceejayoz

1
Щоб просто зрозуміти, ви говорите про те, що трафік пускають, якщо це дозволяє будь-яка з окремих груп безпеки? Мене відкидає ваш коментар про "суму всіх правил", бо коли я думаю про суму, я думаю, А замість АБО.
SFun28

2
Так, якщо це дозволяє будь-яка з груп, застосованих до примірника, це дозволено. Правила групи ORI разом, а не ANDed.
ceejayoz

7
чому люди не можуть просто відповісти на поставлене запитання, а не вставляти своє уявлення про те, що потрібно робити. Якщо ви збираєтесь це зробити, принаймні правильно спочатку дайте відповідь на це питання. Jeez
Білл Розмус

28

Вседозволений.

Відповідно до AWS тут: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html#security-group-rules

Якщо для конкретного порту існує більше одного правила, ми застосовуємо найбільш дозвільне правило. Наприклад, якщо у вас є правило, яке дозволяє отримати доступ до порту 22 TCP (SSH) з IP-адреси 203.0.113.1 та інше правило, яке дозволяє отримати доступ до порту 22 TCP від ​​усіх, кожен має доступ до порту 22 TCP.


3

Ось відповідь з підтримки документації AWS. Вони сказали, що оновлять документацію:

Я знайшов пару дописів на дискусійних форумах, які стосуються подібних питань із суперечливими правилами в межах однієї або декількох груп безпеки:

https://forums.aws.amazon.com/thread.jspa?messageID=221768

https://forums.aws.amazon.com/thread.jspa?messageID=349244吼

Коли до екземпляра застосовуються кілька груп безпеки, правила агрегуються для створення одного великого набору правил. У EC2 правила безпеки групи є лише дозволеними, іншими словами, ви не можете додавати жодні правила DENY. Це означає, що завжди буде застосовуватися найдозволеніше правило. Наприклад, якщо у вас є група безпеки, яка дозволяє отримати доступ до порту 22 з IP-адреси 10.10.10.10, та інша група безпеки, яка дозволяє отримати доступ до порту 22 від усіх, всі матимуть доступ до порту 22 в екземплярі.


0

Коли ви визначаєте групу безпеки як джерело або призначення для правила, правило впливає на всі екземпляри, пов’язані з групою безпеки. Вхідний трафік дозволений на основі приватних IP-адрес примірників, пов’язаних із вихідною групою безпеки (а не загальнодоступними IP-адресами або Еластичними IP-адресами). Для отримання додаткової інформації про IP-адреси див. IP-адреса для інстанцій Amazon EC2. Якщо правило вашої групи безпеки посилається на групу безпеки в одноранговому VPC, а згадана група безпеки або перингове з'єднання VPC видаляється, правило позначається як усталене. Додаткову інформацію див. У розділі Робота з правилами групи сталого захисту в Посібнику Peering Amazon VPC.

Якщо для конкретного порту існує більше одного правила, ми застосовуємо найбільш дозвільне правило. Наприклад, якщо у вас є правило, яке дозволяє отримати доступ до порту 22 TCP (SSH) з IP-адреси 203.0.113.1 та інше правило, яке дозволяє отримати доступ до порту 22 TCP від ​​усіх, кожен має доступ до порту 22 TCP.

Коли ви асоціюєте кілька груп безпеки з екземпляром, правила кожної групи безпеки ефективно агрегуються для створення одного набору правил. Ми використовуємо цей набір правил, щоб визначити, чи дозволяти доступ.

Обережно Оскільки екземпляру можна призначити кілька груп безпеки, екземпляр може мати сотні правил, що застосовуються. Це може спричинити проблеми під час доступу до примірника. Тому рекомендуємо максимально стиснути свої правила.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.