새 메일 제출을 위해 수신 헤더에서 발신자 IP를 제거하려면 옵션 header_checks
대신 키를 사용하십시오 smtp_header_checks
.
header_checks = regexp:/etc/postfix/header_checks_submission
이 smtp_header_checks
옵션은 Postfix에서 외부 서버로 전송되는 메일에만 적용되는 반면 header_checks
클라이언트에서 Postfix로 전송 된 수신 메일 에는 적용됩니다.
구성 요소에 대한 개요는 Postfix 가 http://www.postfix.org/OVERVIEW.html 에서 메일 을 받는 방법을 참조하십시오 . 메일은 smtpd-> 정리-> 수신 큐에서 이동합니다. smtpd
처리는 메일을 수신하고, 주입 Received
송신원 IP 어드레스를 가진 헤더. 이 header_checks(5)
옵션은cleanup(8)
이메일 헤더를 삭제 구성 요소에 .
되어 있지 그런 설정하는 것이 좋습니다 header_checks
이에서 수신 된 헤더 수정하는 것처럼 당신의 main.cf 세계적으로 옵션을 모두 이메일, 외부 서버로부터받은 심지어한다. 대신, 포트 587에서 전용 제출 서비스를 통해 이메일을 보내도록 클라이언트를 구성하고 인증 된 제출에 대해서만 헤더를 다시 쓰도록 Postfix를 구성해야합니다.
에서 줄 뒤에 /etc/postfix/master.cf
다음 -o
줄을 추가하십시오 submission
.
submission inet n - y - - smtpd
# Require SASL authentication
-o smtpd_sasl_auth_enable=yes
# Require TLS transport security, do not leak your credentials in plaintext.
-o smtpd_tls_security_level=encrypt`
# Disallow unauthenticated users from sending mail through this port.
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
# Use a different cleanup service (see below)
-o cleanup_service_name=ascleanup
시간은 구성 할 수 정리 에 대한 서비스를 uthenticated 의 ubmissions. 이름 을 짧게 정렬하기 위해 이름 을 선택 하지만 모든 이름이 작동합니다. 이렇게하려면 정리 서비스 행을 동일한 파일 에 복제 하되 첫 번째 필드의 이름을 바꾸고 새 옵션을 추가하여 필터 파일을 선택하십시오.ascleanup
master.cf
cleanup unix n - y - 0 cleanup
ascleanup unix n - y - 0 cleanup
-o header_checks=pcre:/etc/postfix/header_checks_submission
( pcre
테이블을 사용하려면 postfix-pcre
데비안에서 설치해야 합니다. 그러면 dynamicmaps.cf 파일이 자동으로 업데이트됩니다. 더 이상 변경할 필요가 없습니다.)
마지막 부분은의 실제 필터 구성입니다 /etc/postfix/header_checks_submission
. 잠재적으로 다음과 같은 것을 사용할 수 있습니다.
/^Received: .*/ IGNORE
수신 된 전체 헤더 행을 제거하지만 대신 from helo.host (reverse.host.name [192.0.2.1])
다른 정보를 유지하면서 부분을 삭제할 수도 있습니다 .
/^Received: from [^ ]+ \([^ ]+ \[[IPv0-9a-f:.]+\]\)\s+(.* \(Postfix\) with .+)$/ REPLACE Received: $1
mail_name
옵션을 변경 한 경우 Postfix
구성과 일치하도록 단어를 변경하십시오 . (이 패턴은 Postfix 소스 코드 smtpd / smtpd.c 에 따라 정확합니다 .)
데비안 버스터에서 postfix 3.4.7-0 + deb10u1로 이것을 테스트했습니다. 동일한 접근 방식을 사용하는 또 다른 훌륭한 설명은 Postfix로 이메일을 보낼 때 수신 된 헤더에서 발신자의 IP 및 사용자 이름을 숨기는 방법을 참조하십시오 .
위의 수정으로 다음과 같이 변경됩니다 Received: by ...
.
Received: from debian (unknown [IPv6:fe80::b036:2ff:fe6e:73f4])
by mail.example.nl (Postfix) with ESMTPSA id 1571B910B
for <some@example.com>; Sun, 12 Jan 2020 02:23:15 +0000 (UTC)