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

Защита от DDoS-атак Postfix: как занести IP-адреса в белый список для доступа IMAP к одному почтовому ящику

Имеет ли (использует Zimbra) Postfix возможность заносить в белый список IP-адреса или домены для входа в IMAP для только конкретный почтовый ящик?

Вот чего мы хотели бы добиться:

Предпочтительно, когда кто-то из 4.5.6.7 пытается открыть сеанс IMAP с учетными данными c@example.com, должна возвращаться та же ошибка, что и при неудачной попытке входа в систему из-за неправильного пароля или несуществующего адреса получателя с тем же таймаутом (например, 10 секунд ).

Предыстория: наш почтовый сервер (Zimbra с использованием Postfix) подвергается периодическим атакам на определенные почтовые ящики, в результате чего эти почтовые ящики блокируются из-за количества неудачных попыток входа в систему IMAP в час для этого почтового ящика. Попытки входа в систему происходят медленно с уникальных IP-адресов (2-3 попытки входа в минуту в один и тот же почтовый ящик), поэтому запрет IP-адресов не является решением. Увеличение количества неудачных попыток в час только позволяет атаке продолжаться и открывает дверь для более крупных одновременных атак.

Брандмауэр порта IMAP не является вариантом, поскольку мы хотели бы сохранить доступ открытым извне VPN / корпоративной сети, за исключением тех почтовых ящиков, которые подвергаются текущей / постоянной атаке. Проверить трафик там тоже невозможно, так как он зашифрован.

Итак, мы ищем что-то вроде postscreen_access_list, но только для определенных получателей, поскольку мы хотели бы ограничить доступ только к тем почтовым ящикам, которые подвергаются атаке.

Я бы посмотрел на fail2ban первый. Это довольно просто и не требует дополнительных настроек оборудования или сети. fail2ban работает, просматривая файлы журнала, а затем блокируя IP-адреса с помощью iptables / nftables и т. д.

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

fail2ban не может смягчить все виды DDoS, но это первый инструмент, на который я бы посмотрел. Кроме того, вы не предоставили более подробной информации о своих потребностях и о том, с какими атаками вы сталкиваетесь.

Для каждой «тюрьмы» в fail2ban есть failregex и ignoreregex. Просто вставьте туда соответствующие регулярные выражения.