Proxmox Mail Gateway является специализированным решением для фильтрации электронной почты, обеспечивающим защиту от вредоносного содержимого и спама. Платформа позволяет организовать эффективную обработку почтовых потоков и усилить информационную безопасность организации. Управление осуществляется преимущественно через интуитивный веб-интерфейс.
Процесс развертывания системы
Дистрибутив поставляется в виде готового ISO-образа на базе Debian со всеми необходимыми предустановленными компонентами. Для начала работы требуется:
1. Загрузить ISO-образ с официального ресурса проекта (раздел загрузок). Актуальная версия Proxmox Mail Gateway на момент написания статьи 8.2.5.
2. Подготовить загрузочный носитель (например, через утилиту Rufus)
3. При установке на виртуальную платформу можно непосредственно примонтировать ISO
Процедура установки запускается автоматически при загрузке с подготовленного носителя. Мастер установки предлагает пошаговую настройку базовых параметров без сложных технических деталей.
Первоначальная проверка функционирования
После завершения установки доступ к панели управления осуществляется через браузер по адресу https://[адрес_сервера]:8006. Для входа используются учетные данные root с паролем, заданным на этапе инсталляции.
В интерфейсе управления предусмотрена возможность смены языка локализации (элемент управления расположен в правом верхнем углу).
Конфигурация обработки входящего трафика
Для активации фильтрации входящих сообщений необходимо выполнить следующие шаги:
Настройка Relay
В разделе "Конфигурация" → "Почтовый прокси" → вкладка "Ретрансляция" указывается IP-адрес целевого почтового сервера, на который будут перенаправляться обработанные письма.
Добавление обслуживаемых доменов
На вкладке "Домены ретрансляции" регистрируются все почтовые домены, для которых будет осуществляться обработка корреспонденции.
Настройка параметров приема
Во вкладке "Параметры" рекомендуется установить максимальный размер принимаемых сообщений в соответствии с настройками основного почтового сервера. Стандартное значение может быть установлено как 31457280 байт (30 МБ), что рассчитывается по формуле: 30 × 1024 × 1024.
Система поддерживает интеграцию с DNSBL-сервисами (списками блокировки на основе DNS) для верификации репутации IP-адресов отправителей.
После завершения базовой конфигурации можно перенаправить входящий почтовый поток на порт 25 шлюза и проверить корректность работы шлюза.
Настройка исходящего почтового трафика
Определение доверенных сетей
В разделе "Конфигурация" → "Почтовый прокси" → вкладка "Сети" указываются IP-адреса или подсети, которым разрешена пересылка через шлюз. Например, для локальной сети 10.0.0.0/24 будет разрешена ретрансляция через PMG.
На вкладке "Порты" отображаются используемые сетевые порты. Типовая конфигурация:
- Порт 25: прием входящих сообщений
- Порт 26: прием сообщений для отправки
Внутренний почтовый сервер должен быть настроен на использование порта 26 для передачи исходящей корреспонденции через PMG.
Пример конфигурации Microsoft Exchange Server
В консоли управления Exchange необходимо создать новый соединитель отправки с соответствующими параметрами:
Для изменения порта коннектора, открываем Exchange Managment Shell.
Получаем список всех коннекторов отправки:
Get-SendConnector
Для просмотра детальной информации нашего созданного коннектора, вводим команду:
Get-SendConnector "sender to proxmox mail gateway" | Format-List
Видим, что используется 25 порт. Нам нужно поменять его на 26. Делается это командой:
Set-SendConnector "sender to proxmox mail gateway" -Port 26
Все, выключаем другие коннекторы отправки, если они есть. Исходящая почта будет направлена на Proxmox Mail Gateway.
Предотвращение попадания в спам-фильтры
Для обеспечения доставляемости исходящих сообщений требуется настройка следующих DNS-записей:
SPF (Sender Policy Framework)
Для каждого обслуживаемого домена создается TXT-запись:
domain.com. IN TXT "v=spf1 +a +mx ~all"
DMARC (Domain-based Message Authentication)
Политика DMARC определяет действия получающей стороны при провале проверок:
v=DMARC1; p=quarantine; sp=none; pct=100; fo=0; rua=mailto:postmaster@domain.com
DKIM (DomainKeys Identified Mail)
В настройках почтового прокси, вкладка DKIM:
Добавляем домены для подписи
Активируется функция подписывания и указываем имя селектора
И генерируем публичный ключ для размещения в DNS
Система отобразит TXT-запись, которую необходимо добавить в DNS-зону. После добавления записи рекомендуется выждать 10-15 минут для распространения изменений.
PTR (Pointer Record)
Обратная DNS-запись должна соответствовать имени сервера, используемому при SMTP-сессиях. Настройка осуществляется провайдером или хостинг-провайдером.
Управление карантином
Просмотр карантин почты
Раздел "Управление" → "Карантин спама" предоставляет интерфейс для работы с задержанными письмами.
Фильтры поиска:
1. Временной диапазон (от даты / до даты)
2. Получатель (конкретный или все)
3. Тема письма (опционально)
Доступные операции с письмами:
- Download: сохранение в формате .eml
- Whitelist: добавление отправителя в список доверенных
- Blacklist: добавление в список блокируемых
- Deliver: доставка письма адресату
- Delete: окончательное удаление
Аналогичный функционал доступен для карантина вирусов.
Центр мониторинга
Раздел "Управление" → "Центр отслеживания" обеспечивает контроль над статусами всех обрабатываемых сообщений.
Основные статусы обработки:
- Rejected: сообщение отклонено (несоответствие DNS-записей или нахождение в черном списке)
- Quarantine: сообщение помещено в карантин (подозрение на спам)
- Accepted/delivered: сообщение успешно доставлено
Детальная техническая информация о каждом письме доступна при развертывании соответствующей записи.
Списки доверия и блокировки
Раздел "Почтовый фильтр" → "Объекты 'Кто'" позволяет настраивать списки. Я создал 3 списка:
- Blacklist External Email Addresses (блокировка внешних отправителей)
- Whitelist External Email Addresses (доверенные внешние отправители)
- Whitelist Internal Email Addresses (доверенные внутренние получатели)
Если мы хотим заблокировать получение писем с определённых email или доменов, выбираем Blacklist External Email Addresses.
Тут есть несколько вариантов критериев блокировки писем.
1. **Regular Expression**: использование регулярных выражений для паттернов (например, `[a-z0-9.-]*@[a-z0-9.-]*domain.ru` для блокировки всех адресов домена)
2. **E-Mail**: конкретные адреса электронной почты
3. **Domain**: целые домены (внимание: не добавляйте публичные домены типа gmail.com)
4. **IP Address/Network**: блокировка по IP-адресам или сетям
Важное замечание: стандартный Blacklist в PMG не обеспечивает полную блокировку на уровне SMTP. Для жесткой блокировки требуется настройка Postfix.
Конфигурация блокировки на уровне SMTP
Создайте файл `/etc/postfix/sender_access_regex` и добавляем домены, которые хотим заблокировать или регулярные выражения для поиска доменов, которые хотим заблокировать
После сохранения файла, перезапустим Postfix:
postfix reload
Расширенная настройка SpamAssassin
Для более точного и гибкого поиска спам писем, можно создать свои правила обработки писем. Создаем файл `/etc/mail/spamassassin/custom_rule.cf`. Вот краткий пример конфиг файла:
### === Основные настройки === ###
required_score 6
score DKIM_VALID -0.5
score DMARC_PASS -0.5
score SPF_PASS -0.5
score DKIM_SIGNED 0.1
score SPF_HELO_NONE 0.1
score FREEMAIL_FROM 0.1
bayes_auto_learn 1
bayes_auto_learn_threshold_nonspam 0.1
bayes_auto_learn_threshold_spam 12.0
### === Массовая блокировка спам-доменов === ###
header SPAM_SENDER_DOMAINS From =~ /@(?:colonmos|maromnop|melowingos|forsiser|directcrm|devinosender)\.(?:ru|com)$/i
score SPAM_SENDER_DOMAINS 30.0
describe SPAM_SENDER_DOMAINS Known spam sender domains
header SPAM_MLBX_SENDER From =~ /@mlbx-sender-\d+\.ru$/i
score SPAM_MLBX_SENDER 30.0
describe SPAM_MLBX_SENDER MLBX spam sender pattern
header SPAM_VK_NOTIFY From =~ /@notify\.vk\.company$/i
score SPAM_VK_NOTIFY 30.0
describe SPAM_VK_NOTIFY VK notification spam
header SPAM_REG_RU From =~ /^[a-z0-9._%-]+@[a-z0-9.-]+reg\.ru$/i
score SPAM_REG_RU 30.0
describe SPAM_REG_RU Spam from reg.ru pattern
meta BLOCK_SPAM_SENDERS (SPAM_SENDER_DOMAINS || SPAM_MLBX_SENDER || SPAM_VK_NOTIFY || SPAM_REG_RU)
score BLOCK_SPAM_SENDERS 25.0
describe BLOCK_SPAM_SENDERS Complete block for spam senders
Опишу что тут внесено:
Пороговое значение: письма с оценкой ≥6 классифицируются как спам.
required_score 6
Бонусы за аутентификацию:
score DKIM_VALID -0.5
score DMARC_PASS -0.5
score SPF_PASS -0.5
Корректные проверки подлинности уменьшают рейтинг на 1.5 балла.
Незначительные штрафы. Письмо подписано DKIM (но не проверено), нет SPF для HELO, отправлено с бесплатного почтового сервиса (+0.3 балла суммарно).:
score DKIM_SIGNED 0.1
score SPF_HELO_NONE 0.1
score FREEMAIL_FROM 0.1
Байесовское обучение. Включено автообучение: Письма с оценкой <0.1 учатся как "не спам", письма с оценкой >12 учатся как "спам":
bayes_auto_learn 1
bayes_auto_learn_threshold_nonspam 0.1
bayes_auto_learn_threshold_spam 12.0
Блокировка известных спам-доменов colonmos.ru/com, maromnop.ru/com, melowingos.ru/com, forsiser.ru/com, directcrm.ru/com, devinosender.ru/com (+30 баллов).:
header SPAM_SENDER_DOMAINS From =~ /@(?:domain1|domain2|domain3)\.(?:ru|com)$/i
score SPAM_SENDER_DOMAINS 30.0
header SPAM_MLBX_SENDER From =~ /@mlbx-sender-\d+\.ru$/i
score SPAM_MLBX_SENDER 30.0
header SPAM_VK_NOTIFY From =~ /@notify\.vk\.company$/i
score SPAM_VK_NOTIFY 30.0
header SPAM_REG_RU From =~ /^[a-z0-9._%-]+@[a-z0-9.-]+reg\.ru$/i
score SPAM_REG_RU 30.0
meta BLOCK_SPAM_SENDERS (SPAM_SENDER_DOMAINS || SPAM_MLBX_SENDER || SPAM_VK_NOTIFY || SPAM_REG_RU)
score BLOCK_SPAM_SENDERS 25.0
Итоговая логика:
- Легитимная корреспонденция с корректными подписями: -1.5 балла
- Известные спам-источники: 55 баллов (гарантированное отклонение)
- Порог карантина: 6 баллов
- Байесовский фильтр обучается автоматически
После внесения изменений и сохранения файла, проверяем файл на ошибки командой и перезапускаем фильтр:
spamassassin --lint
systemctl restart pmg-smtp-filter
Заключение
Proxmox Mail Gateway представляет собой мощное и относительно простое в настройке решение для организации эффективной защиты корпоративной почтовой инфраструктуры от спама и вредоносного содержимого.