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

Почему на Amazon EC2 есть и группы безопасности, и iptables?

Недавно я столкнулся с проблемой брандмауэра в моем экземпляре EC2. Порт TCP был доступен всем через группу безопасности EC2, однако фильтрация на стороне экземпляра по-прежнему осуществлялась с использованием iptables. Я подумал, что группы безопасности - это просто причудливый API для IPTables. Оказывается, они работают исключительно, насколько я могу судить. Есть ли причина использовать оба? Одного брандмауэра должно хватить, и добавление еще одного уровня сложности кажется головной болью, которую только и ждут.

А пока я подумываю открыть все порты в моей группе безопасности и затем выполнить всю фильтрацию с помощью iptables, или наоборот, отключить iptables и использовать фильтрацию группы безопасности.

Есть ли отзывы о том, ошибочна ли моя логика? Я упустил что-то важное?

Группы безопасности не увеличивают нагрузку на ваш сервер - они обрабатываются извне и блокируют трафик к вашему серверу и от него независимо от вашего сервера. Это обеспечивает отличную первую линию защиты, которая намного более устойчива, чем та, которая находится на вашем сервере.

Однако группы безопасности не зависят от состояния, вы не можете заставить их автоматически реагировать, например, на атаку. IPTables хорошо подходят для более динамических правил - либо адаптируются к определенным сценариям, либо обеспечивают более детальное условное управление.

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

Думайте о группе безопасности как о аппаратном брандмауэре в обычном сетевом сценарии. Я полагаю, вам действительно не нужно было бы использовать оба, если у вас нет особого сценария, например: у вас есть группа безопасности, называемая веб-серверами, которая контролирует доступ к веб-серверам. Вы хотите заблокировать IP-адрес от порта 80 на один этих серверов, но не всех. Итак, что вам нужно сделать, это войти в iptables на этом одном сервере и выполнить блокировку, а не делать это в группе безопасности, которая будет применяться ко всем серверам в этой группе безопасности ...

Их обоих достаточно легко настроить, и установка обоих обеспечивает защиту от эксплойтов или ошибок в одном из них.