У нас есть небольшой VPC с тремя подсетями (WAN (публичная), LAN (частная), DMZ (частная)). Мне поручено настроить центральный брандмауэр в подсети WAN, который отслеживает весь трафик как во внешний мир, так и между подсетями.
Моя проблема заключается в мониторинге трафика между LAN и DMZ. Я связал каждую подсеть с таблицей маршрутизации, направляя весь исходящий трафик на брандмауэр, и это отлично работает. К сожалению, AWS не позволяет мне добавлять маршруты для трафика между подсетями. Добавление правил маршрутизации «внутри» виртуальных машин лишь частично решит проблему, поскольку LAN содержит устройства, которые не допускают такого рода конфигурации. Также я чувствую, что это может вызвать больше проблем в долгосрочной перспективе... Я думаю, что превращение WAN, LAN и DMZ в VPC вместо подсети могло бы привести к решению, но мне кажется, что это ужасная ошибка VPC.
Каково каноническое решение этой проблемы в AWS?
Редактирование 1: Я пытаюсь настроить классическую сеть «три зоны плюс центральный брандмауэр». Брандмауэр должен контролировать и защищать трафик между подсетями и отдельными экземплярами, а также извне. Это включает:
- Следите за необычными соединениями и сообщайте о них. (т.е. вики не имеет права доступа к серверу Hornetq, и любое такое соединение может указывать на то, что виртуальная машина вики была скомпрометирована)
- Ограничение скорости сетевого трафика. (т.е. серверу базы данных разрешено отправлять отчетные электронные письма, но если он начнет отправлять сотни электронных писем в секунду, я хотел бы получить оповещение)
- Обнаружение DDO.
- ...еще больше информации о безопасности...
Я не уверен, что все это можно реализовать с помощью собственных методов AWS, и концепция центрального брандмауэра кажется мне более естественной.
Редактировать 2:Грубая и упрощенная схема настройки сети
Группы безопасности сети и списки контроля доступа позволяют мне правильно разделять подсети и контролировать соединения между экземплярами. Но я не вижу возможности делать что-то продвинутое (например, ограничивать скорость, ...). Моя идея заключается в том, чтобы полностью отключить трафик между подсетями LAN/DMZ и использовать классическую конфигурацию сети: направить весь трафик через брандмауэр и позволить ему решать, что с ним делать. К сожалению, таблицы маршрутизации VPC не позволяют мне направлять весь трафик внутри VPC (или его подсети) на центральный брандмауэр. Поэтому вопрос в том, как я могу использовать AWS, чтобы направить трафик из моих подсетей на мой брандмауэр, чтобы он мог выполнять свою задачу.
решение1
Я не уверен, возможно ли это в AWS. Обычно это не делается.
Я думаю, вам нужно отказаться от идеи "центрального", это то, что вас сдерживает. Думайте слоями. Я сделал очень простую диаграмму ниже, она довольно грубая, извините.
Еще пара способов:
- Использоватьсистемы предотвращения/обнаружения вторжений(IPS/IDS)
- Использоватьсистема на основе хостакоторый имеет агента на каждом сервере и центральный мониторинг. Этот мониторинг может быть сервисом в Интернете, а не в вашем VPC.
решение2
AWS не имеет продвинутого брандмауэра, похожего на Palo Alto и т. д. Вместо этого они внедрили базовую фильтрацию через группы безопасности, которые могут контролировать входящий и исходящий трафик. Здесь вы можете настроить фильтрацию на основе протокола, IP и т. д. Кроме того, вы можете создать сетевой ACL, который может быть наложен поверх групп безопасности для более точного контроля потоков данных между подсетями.
Google: группы безопасности AWS против сетевых списков контроля доступа
Похоже, вы ищете более продвинутую настройку брандмауэра, позволяющую регулировать потоки данных, проверку пакетов и т. д. В этом случае вам нужно будет настроить сервер брандмауэра. Как минимум вам понадобится брандмауэр, который находится в трех ваших подсетях (WAN, LAN, DMZ). Ниже приведен подробный пример того, что вы ищете.
https://campus.barracuda.com/product/nextgenfirewallf/article/NGF70/AWSRouteTableMutliNIC/
Однако я настоятельно рекомендую разработать высокодоступное решение, которое использует несколько зон доступности и балансировщиков нагрузки. Существует множество решений, которые обеспечивают устойчивые архитектуры.