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

Добавьте настраиваемый заголовок в Postfix с ретранслируемым доменом

У меня есть установка Postfix, которая разрешает ретрансляции только из определенных доменов. Я делаю это с помощью relay_domains flag в main.cf и запрашивает mysql, чтобы найти список разрешенных доменов.

relay_domains = mysql:/etc/postfix/mysql_domains.cf

Я хотел бы добавить header_checks инструкция для вставки настраиваемого заголовка на основе результата проверки mysql для relay_domains который покажет, какой домен был передан через Postfix. Причина этого в том, что если разрешенный домен - .domain.com, а адрес электронной почты получателя - something@subdomain.domain.com, я хотел бы знать, какой .domain.com Postfix разрешен в поиске.

У меня работают header_checks:

/^From:/i PREPEND X-Relay-Domain: xxx

Но я не уверен, как зафиксировать результат запроса домена и использовать его для header_checks PREPEND. Я также мог бы выполнить еще один поиск mysql на header_checks но я бы хотел избежать этого, если возможно.

Возможно, вы можете использовать check_recipient_access из постфикса.

smtpd_recipient_restriction = ... 
                      ... 
                      check_recipient_access pcre:/etc/postfix/addheader
                      ...

файл /etc/postfix/addheader имеет подобное содержание

/.+@(.+)/  PREPEND X-Relay-Domain: $1

В доступ таблица, действие PREPEND добавит заголовок в ваше письмо. В этом случае эта карта добавит доменные части вашего получателя.