문맥.
Digital Ocean 드롭릿(스택의 Ubuntu 및 Nginx)에서 호스팅되는 여러 도메인 웹 서비스가 있습니다. 분명히 DO는 자동으로 PTR 레코드를 설정합니다. 그런데 제가 문의를 해보니
host <IP_ADDRESS>
[...] not found: 3(NXDOMAIN)
드롭릿은 where 로 구성된 접미사를 사용 inet_interfaces = all inet_protocols=ipv4
하고 mydestination
호스팅된 웹 서비스 도메인(www 접두사 유무 모두)을 포함합니다. 이러한 도메인은 sendmail
다음과 같이 정의된 호스트를 통해 이메일을 발행합니다.scheduler.sending.ws
DNS 및 메일 서비스는 두 번째 공급자(두 번째 수준 도메인의 기록 등록 기관이 아님)를 통해 실행됩니다. 나는 A 레코드가 적절한 IP 주소를 가리키고 있지만 오타가 있다는 것을 먼저 알아차렸습니다. 오타가 있어서 schedule.sending.ws
수정할 수 있습니다. 비록 이것이 완전히 관련이 있는지는 확실하지 않습니다.
MX 레코드는 두 번째 공급자를 올바르게 가리킵니다. 및 를 가리키는
mail.sending.ws
두 개의 TXT 레코드도 있습니다 .@
admin
v=spf1 a mx ptr include:someserver.net ~all
이로 인해 다음 헤더가 포함된 메일이 생성됩니다.무작위의mydestination
postfix main.cf 파일에 정의된 도메인 :
Received: from www.other.ws ([IP_ADDRESS]:46818)
따라서 두 개의 서로 다른 발행 참조가 있어 쉽게 스팸으로 표시될 수 있는 상황입니다.
제가 완전히 혼란스러워하고 여러 가지 질문을 하는 프로토콜을 깨뜨린 점 양해해 주시기 바랍니다.
현재 내 가정은 다음과 같습니다.
a) 다음과 같이 발급 도메인에 대해 새 TXT DNS 항목을 설정해야 합니까 v=spf1 a mx include:scheduler.sending.ws include:someserver.net ~all
?
b) a)가 정확하다면 당연히 A 레코드를 수정해야 합니다.
c) 헤더의 불일치는 여전히 해결해야 합니다. 그러나 이것은 postfix 정의 도메인 중 하나를 사용하여 전자 메일을 준비하는 응용 프로그램(및 특정 도메인)에 의해 확실히 지정되어야 합니다. postfix가 작동합니까?
이 문제를 올바르게 해결하기 위해 누락된 데이터가 있습니까?
답변1
전반적인 상황에 대해 이메일 작동 방식을 제대로 이해하지 못한 채 임의의 구성을 시도하는 대신 실제로 몇 가지 튜토리얼을 따라 작동하는 기본 설정을 만들어야 합니다. 결국 오늘날 이메일 시스템을 관리하는 것은 복잡하고 어려운 작업입니다. 강력한 경험이 없고 자체 이메일 서버에 대한 특별한 요구가 없는 사람이라면 필요한 모든 스팸 방지 시스템과 발신자 평판 처리 기능을 즉시 갖춘 외부 서비스를 사용하는 것이 좋습니다.
귀하의 개별 질문에 답변하고 그 뒤에 있는 기술을 배우기 위한 지침을 제공합니다. 이번 답변에서는 www.example.com. A 192.0.2.1
웹 서버와 mail.example.com. A 192.0.2.2
수신 메일의 메일 서버로 사용해 보겠습니다 . 둘 다 메일을 보내야 하는데 mail.example.com
수신만 되겠죠?
a) 아니요. SPF
include
기구그런 목적은 아닙니다.include:scheduler.example.com
는 더 많은 규칙, 즉 다른 SPF 레코드가 있음을 의미합니다scheduler.example.com. TXT
. 그러한 기록이 없을 가능성이 높으므로 PermError가 발생하여 메시지가 거부될 수도 있습니다.SPF 레코드는 해당 호스트 이름에 대해 메일을 보내는 모든 서버를 허용해야 합니다. 을 사용하는 경우 on 에 대한
example.com
on 입니다 . 다음을 사용하는 것이 좋습니다.example.com. TXT
www.example.com.
www.example.com. TXT
ip4
그리고ip6
SPF를 확인할 때 DNS 쿼리가 덜 필요하므로 가능할 때마다 메커니즘을 사용합니다. 결과는 다음과 같습니다.example.com. IN TXT "v=spf1 ip4:192.0.2.1 ip4:192.0.2.2 ~all" www.example.com. IN TXT "v=spf1 ip4:192.0.2.1 ip4:192.0.2.2 ~all"
b) 수신 메일 배달의 경우,
scheduler.example.com. A
다음 용도로 사용되지 않는 한 관련이 없습니다.메일 교환기예를 들어 , 그러나 아마도 호스트 이름 으로 사용하는 경우example.com. MX scheduler.example.com.
에만 있을 수 있으므로 피해야 할 기록이 있어야 합니다.mail.example.com.
HELO
A
SMTP 배너 불일치.c)
HELO
호스트 이름이 Postfix 구성 매개변수와 일치합니다.smtpd_banner
. 기본적으로myhostname
변수로 즉 는 와 동일합니다myhostname
. 는mydestination
이것과 아무 관련이 없으며 해당 설정에서 임의의 호스트 이름을 선택하지 않습니다. 메일을 보내기 위한 것이 아니라 메일을 전달하기 위한 것입니다.호스트
HELO
이름은 일치하는 기록이 있어야 하며 IP 주소A
와 동일한 것이 좋습니다 .PTR
꼭 일치할 필요는 없어요봉투 보낸 사람도메인이나From:
헤더 주소. 다중 도메인 이메일 서버에서도 이는 불가능합니다.
메일 도메인 정상 문제의 경우, 무슨 일이 일어나고 있는지 확인할 수 있도록 실제 도메인을 사용하는 것이 좋습니다. 이 질문은 광범위하고 불특정합니다. 정확하거나 일반적인 답변을 제공하는 것은 불가능합니다.