Вопрос или проблема
Мой сценарий использования:
- 3 сервера с Apache
- Работа с Let’s Encrypt
- 1 база данных
- Round Robin DNS на AWS с использованием CNAME
Моя проблема в том, что у клиента есть SaaS платформа на Drupal с примерно 500 веб-сайтами. Эти сайты не большие, но у большинства из них есть свои собственные доменные имена. Кроме того, сайты часто меняются, так что в течение двух месяцев появятся 40 новых доменов и 50 удаленных.
В настоящее время у нас есть wildcard на корневом домене, поэтому сайты с поддоменами на нем охвачены, но у большинства сайтов есть собственные доменные имена с Let’s Encrypt. Это неудобно, поскольку DNS управляется с использованием CNAME, и может потребоваться несколько попыток/дней, чтобы сертификат был обновлен или даже активирован, так как вероятность составляет 33%.
Кроме того, мы замечаем активность ботов и атаки, поэтому хотели бы внедрить AWS WAF, но он доступен только на AWS ALB.
Однако, так как у нас есть 500 сертификатов через Let’s Encrypt и количество сайтов меняется, их нельзя разместить на ALB.
Как вы думаете, какое было бы лучшее решение в таком случае?
Думал о настройке HA Proxy, получении сертификатов на этой машине и затем их передаче, но не уверен.
Заранее благодарю за чтение моего длинного поста!
Ответ или решение
Ваша ситуация предъявляет особые требования для управления множеством SSL-сертификатов и защиты от интернет-угроз. Рассмотрим несколько подходов для оптимизации и упрощения архитектуры вашего проекта.
Проблема и требования
Ваше текущее окружение включает:
- Три сервера Apache, которые используют сертификаты Let’s Encrypt.
- Ротации доменов и постоянное добавление/удаление сайтов создают сложность в управлении 500+ сертификатами.
- Вы желаете использовать AWS Web Application Firewall (WAF) для противодействия ботам и атакам, что требует использования AWS Application Load Balancer (ALB).
- Наладка работы всех этих компонентов с учетом Round Robin DNS.
Рекомендации
-
Оптимизация управления сертификатами:
- AWS Certificate Manager (ACM): Рассмотрите возможность миграции существующих сертификатов на AWS ACM. ACM позволяет централизованно управлять SSL-сертификатами и автоматизировать процессы их обновления.
- Использование ALB с ACM: Под ALB можно настроить автоматическое управление сертификатами через ACM, что существенно упростит ваше текущее управление.
-
Защита через WAF и ALB:
- Развертывание ALB: ALB можно настроить для обработки HTTPS запросов и интеграции с AWS WAF, что предоставит защиту от типичных веб-угроз.
- Настройка правил в WAF: Для дополнительной защиты, настройте специализированные правила WAF для фильтрации на основе IP, Geo-блокировки и сигнатур атак.
-
Роутинг и высокая доступность:
- Route 53 и геолокация: Используйте Route 53 для управления DNS, и рассмотрите возможность геолокационного роутинга, чтобы улучшить производительность и время отклика.
- Единая точка входа через HAProxy: Если по всяким причинам вы не можете использовать ALB, управляйте сертификатами и балансировкой трафика через HAProxy, установив его перед вашими серверами приложений.
Преимущества подхода
- Снижение сложности: Централизованное управление сертификатами через ACM уменьшит вероятность ошибок и упрощает ротацию доменов.
- Улучшенная безопасность: AWS WAF на уровне ALB обеспечит многоуровневую защиту от атак.
- Удобство управления: Использование служб AWS улучшает масштабируемость и управление ресурсами.
Заключение
Переход на использование AWS инструментов значительно упростит управление инфраструктурой и обеспечит надежную защиту. Используйте преимущества централизованного управления сертификатами и интеграции с ALB и WAF для улучшения производительности и безопасности вашего приложения.