Для кого: для сетевых администраторов, которые хотят выжать максимум из своего UDM Pro и защитить периметр на уровне эксперта.
В этой статье — приёмы, скрипты, ловушки, редиректы и неочевидные фишки файрвола.
1. Базовая философия: «разрешай явно, остальное блокируй»
- Политика зон: External → Internal должна быть Allow Return, а не Allow All. Это закрывает 90% дыр.
- Default Action: если нет явного разрешения — трафик не проходит. В UDM Pro это достигается настройкой зон и правил.
- Приоритет правил: специфичные разрешения (SSH для своего IP) ставятся выше общих блокировок.
2. Перенос SSH на нестандартный порт + ловушка на 22-м
- Зачем: боты долбятся только в стандартные порты. Переносим реальный SSH на 10022 (или 2222, 5022).
- Как в UDM Pro: через Port Forwarding (NAT). Правило: WAN-порт 10022 → внутренний IP:22.
- Ловушка на 22-м порту: делаем Port Forwarding с WAN:22 на несуществующий IP (например, 172.16.99.254). Сканер видит открытый порт, но соединение висит до таймаута.
- Продвинутая ловушка: направляем WAN:22 на внутренний сервер с Cowrie (эмулятор SSH). Он записывает все пароли и команды злоумышленников.
3. Автоматический бан IP, которые стучатся в 22-й порт (Fail2ban на стероидах)
- На UDM Pro нет встроенного Fail2ban, но мы пишем bash-скрипт, который парсит логи файрвола и банит IP через iptables или API.
- Скрипт запускается по cron каждые 5 минут. Он ищет все попытки подключения к порту 22, фильтрует свои IP и добавляет нарушителей в бан-лист.
- Можно настроить порог чувствительности: банить только после 3 неудачных попыток за 60 секунд.
- Бан сохраняется в файл и не теряется после перезагрузки (если сохранять iptables).
# Пример команды для парсинга логов
journalctl -u firewall --since "5 minutes ago" | grep "DPT=22" | awk '{print $NF}' | sort -u
4. Использование списков блокировки (Block Lists) UDM Pro
- UDM Pro позволяет загружать внешние списки IP/доменов для блокировки (например, списки известных ботов, TOR-узлов, стран-агрессоров).
- Можно создать свой список и обновлять его автоматически через скрипт (по API).
- Это удобно, чтобы не засорять iptables тысячами правил — всё хранится в самом UDM.
5. Геоблокировка (GeoIP)
- Если ваш бизнес работает только в РФ — блокируйте все страны, кроме своей. Это отсекает ~80% сканирующих ботов.
- В UDM Pro это делается через создание групп адресов на основе GeoIP (нужна подписка на Threat Management или ручной импорт диапазонов).
- Альтернатива: скачать списки IP-диапазонов нужных стран и загрузить их как отдельные группы.
6. «Призрачные» порты-ловушки (Honeypot на все популярные порты)
- Помимо 22-го, можно открыть «пустышки» на 23 (Telnet), 21 (FTP), 3389 (RDP), 5900 (VNC) — направить их на несуществующие IP или на сервер с эмуляцией.
- Смысл: сбить сканеры с толку, отвлечь их, собрать данные об атакующих.
- На UDM Pro создаём несколько правил Port Forwarding на разные порты с одним и тем же мёртвым IP.
7. Rate Limiting (ограничение частоты соединений)
- Даже если вы не баните IP, можно ограничить скорость новых подключений к определённым портам.
- В UDM Pro через Traffic Rules или через iptables (limit module).
- Пример: не более 10 новых соединений в минуту на порт 22 — боты быстро отвалятся, а легитимные пользователи не заметят.
8. SSH-баннер (предупреждение для случайных)
- На самом UDM или на внутреннем сервере можно повесить баннер, который выводится до запроса логина.
- Он не защищает, но может служить юридическим предупреждением и отпугивать неопытных злоумышленников.
- Настраивается в /etc/ssh/sshd_config (Banner /etc/ssh/banner).
9. Использование VPN вместо открытых портов
- Самый безопасный вариант: вообще не открывать SSH, RDP, веб-интерфейсы наружу.
- Вместо этого настраиваем WireGuard или OpenVPN на UDM Pro.
- Администратор подключается к VPN, а уже оттуда имеет доступ ко всей внутренней инфраструктуре.
- Плюсы: нет сканирований, нет ботов, шифрование.
10. Мониторинг и оповещения
- Настройка syslog на внешний сервер (например, Graylog, ELK).
- Все события файрвола, попытки подключений, срабатывания бан-скриптов — в одном месте.
- Можно настроить email/SMS-оповещения при обнаружении аномалий (например, более 10 сканирований в минуту).
11. Комбинированный подход — «Матрешка»
- Реальный SSH на порту 10022, доступный только с VPN или по IP-белому списку.
- Порт 22 — ловушка с Cowrie + автоматический бан (скрипт).
- Порты 80/443 — если не нужны, блокируются или делают редирект на HTTPS с логированием.
- Геоблокировка всех стран, кроме нужной.
- Rate Limiting для всех открытых портов.
12. Скрипты — сердце автоматизации
- Скрипт автобана (на bash или Python) — запуск по cron.
- Скрипт обновления GeoIP-списков — скачивает свежие диапазоны и обновляет группы адресов.
- Скрипт очистки старого бан-листа (например, разбан IP через 30 дней, чтобы не переполнять список).
- Скрипт для уведомлений — при каждом бане отправляет в Telegram/email.
Все скрипты можно положить на сам UDM или на внешний сервер, который имеет доступ к API UDM.
13. Работа с API UDM Pro
- Через API можно добавлять/удалять IP из бан-листа, создавать правила, получать логи.
- Это позволяет интегрировать UDM с внешними системами (SIEM, SOAR, свои скрипты).
- Пример: внешний сервер анализирует логи, принимает решение о бане и отправляет команду в UDM через REST API.
14. Резервное копирование конфигурации файрвола
- Перед любыми экспериментами — делайте бэкап настроек UDM Pro (встроенный экспорт).
- Сохраняйте iptables-правила, если правите их вручную (iptables-save > /etc/iptables/rules.v4).
- Храните скрипты и бан-листы вне UDM (на отдельном сервере), чтобы не потерять при сбое.
15. Чего нельзя делать (подводные камни)
- Нельзя редактировать системные правила Allow All / Block All — они создаются автоматически и управляются зонами.
- Нельзя открывать все порты «для удобства» — это уничтожает смысл файрвола.
- Нельзя использовать один и тот же порт для разных сервисов — будет конфликт.
- Нельзя забывать про свои же IP-белые списки — можно забанить самого себя.
✅ Итоговый чек-лист администратора
- ☑ External → Internal = Allow Return (а не Allow All).
- ☑ Реальный SSH перенесён на порт 10022 (или VPN).
- ☑ Порт 22 — ловушка (мёртвый IP или Cowrie).
- ☑ Автобан скриптом (cron + iptables или API).
- ☑ Геоблокировка стран, где нет пользователей.
- ☑ Настроено логирование на внешний сервер.
- ☑ Есть оповещения при срабатывании автобана.
- ☑ Регулярно обновляются списки угроз (Threat Management).
- ☑ Есть бэкап настроек и скриптов.
Запомните: безопасность — это не один инструмент, а система эшелонированной защиты. Используйте все слои: перенос портов, ловушки, автобан, геофильтрацию, VPN, мониторинг.
UDM Pro даёт вам инструменты — осталось их правильно применить.
Комментарии
Пока нет комментариев. Будьте первым!