
Разместите DMZ между внутренней сетью и интернетом, используя два межсетевых экрана. Первый фильтрует входящий трафик, второй контролирует доступ к внутренним ресурсам. Например, настройте правила на Cisco ASA или pfSense, разрешая только HTTP, HTTPS и SSH для серверов в DMZ. Это снижает риск прямых атак на основную инфраструктуру.
Ограничьте доступ между DMZ и внутренней сетью. Серверы в демилитаризованной зоне не должны напрямую подключаться к базам данных или файловым хранилищам. Если веб-приложению нужны данные, используйте API с жесткой аутентификацией. Например, настройте OAuth 2.0 или сертификаты клиентов для проверки запросов.
Регулярно обновляйте ПО на серверах в DMZ. Уязвимости в веб-серверах или CMS – частые точки входа для злоумышленников. Автоматизируйте проверку обновлений с помощью Ansible или аналогичных инструментов. Раз в месяц проводите ручной аудит конфигураций, чтобы исключить ошибки в настройках.
Логируйте весь трафик, проходящий через DMZ. Настройте сбор данных в SIEM-системе, например, Elastic Stack или Splunk. Анализируйте подозрительные активности: множественные попытки входа, нестандартные порты, запросы к несуществующим ресурсам. Это поможет обнаружить атаку до того, как она достигнет внутренней сети.
- Выбор оборудования для развертывания DMZ
- Настройка межсетевого экрана для разделения DMZ и внутренней сети
- Конфигурация правил маршрутизации трафика через DMZ
- Размещение и настройка серверов в DMZ: веб-сервер, почтовый сервер
- Мониторинг и журналирование активности в DMZ
- Ключевые источники данных
- Рекомендации по настройке
- Обновление и патчинг сервисов в DMZ
Выбор оборудования для развертывания DMZ
Для развертывания DMZ выбирайте маршрутизаторы и межсетевые экраны с поддержкой сегментации трафика и глубокой проверки пакетов. Cisco ASA, FortiGate или pfSense подойдут для большинства сценариев. Убедитесь, что оборудование поддерживает VLAN и имеет достаточную пропускную способность для вашей сети.
Серверы в DMZ должны быть физически или логически отделены от внутренней сети. Используйте выделенные серверы с минимальным набором служб. Например, веб-серверы на базе Nginx или Apache разверните на отдельных машинах с обновленными ОС, такими как Debian или CentOS, с отключенными ненужными сервисами.
Для балансировки нагрузки и защиты от DDoS-атак добавьте устройства вроде F5 BIG-IP или Cloudflare. Они распределят трафик и отфильтруют вредоносные запросы до попадания в DMZ.
Не экономьте на сетевом оборудовании. Коммутаторы с поддержкой 802.1Q (VLAN) и ACL, такие как Cisco Catalyst или MikroTik CRS, обеспечат изоляцию сегментов DMZ. Проверьте, чтобы устройства имели резервные блоки питания и возможность удаленного управления.
Логируйте все события с помощью SIEM-систем (например, Splunk или Graylog) и направляйте логи на отдельный сервер внутри защищенной сети. Это поможет быстро выявлять аномалии без риска переполнения хранилища в DMZ.
Настройка межсетевого экрана для разделения DMZ и внутренней сети
Начните с создания отдельных зон безопасности в конфигурации межсетевого экрана. Для DMZ выделите отдельный интерфейс или VLAN, изолировав его от внутренней сети. Используйте правила deny all по умолчанию, разрешая только необходимые соединения.
Настройте строгие ACL (Access Control Lists) между DMZ и внутренней сетью. Например, разрешите входящие HTTP/HTTPS-запросы к DMZ, но заблокируйте прямой доступ из DMZ во внутренние ресурсы. Для серверов в DMZ, которым нужен доступ к внутренним БД, добавьте правила с указанием конкретных портов и IP-адресов.
Включите проверку состояния соединений (stateful inspection) для отслеживания легитимных сессий. Это предотвратит попытки обратного подключения из DMZ. Для веб-серверов в DMZ ограничьте исходящий трафик, разрешив только ответы на входящие запросы.
Используйте NAT для маскировки внутренних IP-адресов при выходе в DMZ. Например, преобразуйте адреса внутренней сети в единый публичный IP при обращении к серверам в DMZ. Это усложнит разведку сети злоумышленниками.
Регулярно обновляйте правила межсетевого экрана, удаляя устаревшие разрешения. Анализируйте логи для выявления подозрительных попыток соединения. Например, частые запросы с одного IP-адреса в DMZ могут указывать на сканирование уязвимостей.
Для критичных сервисов настройте геофильтрацию, блокируя трафик из регионов, не связанных с вашей деятельностью. Это снизит риск атак из неожиданных источников.
Конфигурация правил маршрутизации трафика через DMZ
![]()
Настройте маршрутизацию так, чтобы весь входящий трафик из внешней сети сначала проходил через DMZ, прежде чем попасть во внутреннюю сеть. Используйте межсетевой экран для фильтрации пакетов на основе IP-адресов, портов и протоколов.
Разрешите только необходимые типы соединений. Например, для веб-сервера в DMZ откройте порты 80 (HTTP) и 443 (HTTPS), но заблокируйте SSH (22) и RDP (3389) из внешней сети. Для почтовых серверов добавьте правила для SMTP (25), IMAP (143) и их защищённых версий.
Примените политику «разрешено по умолчанию» для трафика из внутренней сети в DMZ, но запретите обратные соединения без явного разрешения. Это предотвратит утечку данных, если сервер в DMZ будет скомпрометирован.
Используйте NAT (Network Address Translation) для маскировки внутренних IP-адресов. Настройте статические трансляции для серверов в DMZ, чтобы скрыть их реальные адреса от внешних пользователей.
Проверяйте логи маршрутизации еженедельно. Ищите подозрительные попытки соединений на нестандартные порты или аномально высокую активность с определённых IP-адресов. Настройте автоматические оповещения для таких событий.
Обновляйте правила маршрутизации при изменении сетевой инфраструктуры. Удаляйте устаревшие правила, чтобы сократить поверхность для атак. Тестируйте новые конфигурации в изолированной среде перед внедрением.
Размещение и настройка серверов в DMZ: веб-сервер, почтовый сервер
Размещайте веб-сервер в DMZ на отдельном физическом или виртуальном сервере с минимальными правами доступа. Используйте брандмауэр для ограничения входящего трафика только портами 80 (HTTP) и 443 (HTTPS). Отключите все неиспользуемые службы и регулярно обновляйте ПО, чтобы снизить риски эксплуатации уязвимостей.
Для почтового сервера выделите отдельный IP-адрес в DMZ и настройте фильтрацию входящего трафика через порты 25 (SMTP), 587 (Submission) и 465 (SMTPS). Примените механизмы аутентификации, такие как SPF, DKIM и DMARC, чтобы предотвратить подделку писем. Ограничьте исходящие подключения к внутренней сети только необходимыми серверами, например, для синхронизации с Active Directory.
Настройте межсетевой экран для строгого контроля сессий между DMZ и внутренней сетью. Запретите прямые подключения из интернета к внутренним ресурсам, пропуская только ответы на запросы, инициированные из DMZ. Для веб-сервера используйте обратный прокси, например Nginx или HAProxy, чтобы скрыть внутреннюю структуру и снизить нагрузку.
Логируйте все события на серверах в DMZ и передавайте данные в централизованную систему мониторинга. Это поможет быстро обнаружить подозрительную активность, такую как множественные неудачные попытки входа или нестандартные запросы к веб-приложениям.
Проверяйте конфигурации серверов в DMZ не реже раза в квартал. Убедитесь, что резервные копии критичных данных хранятся во внутренней сети и регулярно тестируются на восстановление.
Мониторинг и журналирование активности в DMZ

Настройте сбор логов со всех устройств в DMZ, включая межсетевые экраны, серверы и маршрутизаторы. Используйте протоколы Syslog или SNMP для централизованного хранения данных.
Ключевые источники данных
- Журналы доступа (Apache, Nginx, IIS)
- Логи аутентификации (RADIUS, TACACS+)
- Записи сетевых устройств (Cisco ASA, FortiGate)
- Системные события Windows/Linux
Применяйте SIEM-системы (Splunk, ELK Stack) для анализа данных в реальном времени. Настройте правила корреляции для обнаружения:
- Множественных неудачных попыток входа
- Необычных исходящих соединений
- Аномальных объемов передаваемых данных
Рекомендации по настройке
- Храните логи минимум 90 дней
- Регулярно проверяйте целостность журналов
- Настройте оповещения для критических событий
- Ограничьте доступ к логам отдельной учетной записью
Тестируйте систему мониторинга, имитируя атаки на DMZ. Проверяйте, фиксируются ли попытки сканирования портов, SQL-инъекции и XSS-атаки в журналах.
Обновление и патчинг сервисов в DMZ
Настройте автоматическое обновление для всех сервисов в DMZ, но с контролируемым развертыванием. Используйте промежуточную среду для тестирования патчей перед их установкой в рабочую зону.
Планируйте обновления в периоды низкой нагрузки – например, ночью или в выходные. Это снизит риск простоев и конфликтов с пользователями.
| Тип сервиса | Частота проверки обновлений | Рекомендуемый инструмент |
|---|---|---|
| Веб-сервер (Nginx, Apache) | Еженедельно | Ansible, WSUS |
| Базы данных (PostgreSQL, MySQL) | Раз в 2 недели | Скрипты cron + логирование |
| Файрволлы (iptables, pfSense) | Ежемесячно | Официальные репозитории + ручная проверка |
Отключайте неиспользуемые модули и службы перед обновлением. Например, в Apache удалите ненужные .so-модули, чтобы сократить поверхность атаки.
Логируйте все изменения в DMZ. Храните журналы обновлений отдельно от основных серверов – так проще восстановить хронологию при инциденте.
Проверяйте цифровые подписи патчей перед установкой. Для Linux-серверов используйте gpg —verify, для Windows – встроенную проверку Authenticode.







