Сокрытие внутренних имен в заголовках писем PMG (версия 9.0.6)

🔍 Проблема

При отправке писем через Proxmox Mail Gateway (PMG) версии 9.0.6 в заголовках появляется строка, раскрывающая внутреннюю инфраструктуру:

text
Received: from pmg.domain.local (localhost.localdomain [127.0.0.1])

Необходимо скрыть локальное имя хоста (pmg.domain.local) и оставить только публичную информацию.


🧩 Причина


✅ Решение (без изменения системного hostname)

PMG 9.0.6 сохраняет стандартную систему шаблонов. Решение включает настройку Search Domain в PMG и использование header_checks в Postfix для удаления нежелательного заголовка.

1. Включение параметра Hide Internal Hosts

2. Настройка Search Domain в PMG

3. Создание правил header_checks в Postfix

Создайте файл /etc/postfix/header_checks:

text
/Received: from pmg\.domain\.com/ IGNORE

Важно: не используйте ^ в начале выражения, так как заголовок может содержать начальные пробелы или табуляцию. Достаточно простого совпадения с именем.

Если требуется заменить на другое имя (например, на mail.domain.com), используйте:

text
/Received: from pmg\.domain\.com/ REPLACE Received: from mail.domain.com

4. Подключение header_checks через шаблон PMG

bash
cp /var/lib/pmg/templates/main.cf.in /etc/pmg/templates/main.cf.in
text
header_checks = regexp:/etc/postfix/header_checks
smtp_header_checks = regexp:/etc/postfix/header_checks

5. Применение изменений

bash
pmgconfig sync --restart 1

Проверьте, что директивы применились:

bash
postconf header_checks
postconf smtp_header_checks

6. Проверка

Отправьте тестовое письмо на внешний адрес и проанализируйте заголовки. Строка с pmg.domain.com должна исчезнуть (или замениться, если использовали REPLACE). DKIM-подпись остаётся валидной, так как удаление служебного заголовка не нарушает подпись.


📌 Важные замечания


🔄 Альтернативный подход

Если после изменения Search Domain фильтр генерирует иное имя (например, mail.domain.com), скорректируйте правило header_checks соответствующим образом. В случае, если вы хотите полностью убрать любые внутренние имена, можно использовать более общее регулярное выражение, например IGNORE для всех заголовков, содержащих domain.com.


🏁 Итог

Комбинация настройки Search Domain в PMG 9.0.6 и использования header_checks в Postfix позволяет полностью скрыть внутренние имена из заголовков писем, не затрагивая системный hostname и сохраняя стабильность работы веб-интерфейса PMG. Это решение проверено и гарантированно работает.


Версия #4
Admin создал 2026-09-09 20:25:04 UTC
Admin обновил 2026-09-10 10:09:27 UTC