При отправке электронной почты с Postfix, как я могу скрыть IP-адрес отправителя и имя пользователя в заголовке Received?

При отправке почты Postfix вставляет IP-адрес и имя пользователя аутентифицированного пользователя в заголовок Received на электронном письме. Хотя это полезно для отслеживания того, кто отправил конкретное письмо, отправленное с вашего почтового сервера, оно также имеет последствия для конфиденциальности. В мелкомасштабной ситуации, когда я могу доверять всем пользователям, чтобы их учетные записи не были скомпрометированы и превращены в спам-зомби, я бы предпочел не транслировать IP-адреса и имена учетных записей, чтобы все могли их прочитать. Короче говоря, как мне настроить Postfix , чтобы не отправлять это:

Получено: от [xxxx] (pc1.example.com [xxxx]) (используя TLSv1 с шифром) DHE-RSA-AES256-SHA (256/256 бит)) (сертификат клиента не запрошен) (аутентифицированный отправитель: пользователь) по mail.example.com (Postfix) с ESMTPSA id CC77010C148 для; Пт, 11 ноября 2011 04:55:18 +0000 (UTC)

11
задан 11 November 2011 в 09:42

2 ответа

Вы можете использовать

smtpd_sasl_authenticated_header = no

в postfix/main.cf для удаления информации заголовка в вашей исходящей почте.

0
ответ дан 11 November 2011 в 09:42

Стандартным решением является использование опции header_checks . Этот будет работать, однако, если мы отфильтруем полученные строки по всей почте, как входящей, так и исходящей (как это будет делать), мы можем потерять заголовки Received на почте, отправленной нам , что может быть важно для устранения неполадок. Чтобы обойти эту проблему, мы будем применять header_checks только к почте, которая не могла быть отправлена ​​нам - почте, которая была отправлена ​​на порт отправки (вы являетесь используя порт отправки , не так ли? ).

В этом посте объясняется, как применить header_checks исключительно к порту отправки. Нам нужно передать опцию cleanup_service_name службе отправки , чтобы мы могли настроить новую службу очистки «subcleanup». Соответствующий раздел /etc/postfix/master.cf может выглядеть следующим образом: вот так:

submission inet n       -       -       -       -       smtpd
  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
  -o milter_macro_daemon_name=ORIGINATING
  -o cleanup_service_name=subcleanup

Теперь мы можем передать опцию header_checks новой службе очистки. Эта часть /etc/postfix/master.cf может выглядеть так:

cleanup   unix  n       -       -       -       0       cleanup
subcleanup unix n       -       -       -       0       cleanup
  -o header_checks=regexp:/etc/postfix/submission_header_checks

Наконец, нам нужно создать файл /etc/postfix/submission_header_checks, который будет содержать регулярное выражение, отфильтровывающее нарушающие строки заголовка Received. То, какое регулярное выражение вы добавите в файл, зависит от того, установлен ли у вас smtpd_sasl_authenticated_header.

Если smtpd_sasl_authenticated_header равно yes, то используйте:

/^Received:.*\(Authenticated sender:/ IGNORE

В противном случае используйте:

/^Received:.*\(Postfix/ IGNORE

(Спасибо Доминику П и Брайану Дрюри за то, что показали, как обращаться с второй случай.)

0
ответ дан 11 November 2011 в 09:42

Другие вопросы по тегам:

Похожие вопросы: