의 Gmail뿐만 아니라 로컬 ISP가 수출입 이메일에 대한 DKIM을 전달하지만,이 헤더에서 언급 한 실패와 마이크로 소프트가,하지 않는 :수출입의 DKIM 서명은 * Microsoft 서버 (전망, 핫메일)에서 확인하지 *을
인증 결과 : spf = pass (보낸 사람 IP는 [올바른 IP]) smtp.mailfrom = [올바른 도메인] .co.uk; outlook.com; dkim = fail (서명이 이 아닌 경우) header.d = [올바른 도메인]; outlook.com; dmarc = bestguesspass action = none header.from = [올바른 도메인];
내가 시도하는 것 : 내가 (다른 DNS TXT 레코드 즉, 다른 공개 키를 다른 DKIM 선택기를 사용하여) Google 애플리케이션 (G 스위트) 이메일을 통해 동일한 도메인에서 전망으로 이메일을 보내
메시지 소스를 비교하려면 - Google의 메시지가 DKIM을 통과했습니다.는 구글이 "H"태그에 훨씬 적은 헤더를 포함, 그래서 나는 수출입도 정확하게 이것들을 사용하지만, 아무 소용에 재구성 :
나는 두 가지를 발견했습니다.Google은 Exim의 구성에서 소문자로 입력 했어도 Exim은 그렇지 않지만 "h"태그에는 소문자로 헤더 이름을 포함 시켰습니다. 그 헤더 이름은 헤더 서명 해시 해시를 생성 할 때 헤더 이름을 더 낮게해야하지만 텍스트는 "h"태그 (http://dkimcore.org/specification.html 섹션 3.2)의 헤더 이름에 동일하게 적용된다고 표시하지 않지만 Google이하는 것처럼 보입니다. 이. 나는 Exim에서 이것을 무시하는 것이 아주 어려울 것이라고 생각합니까?
는 I는 "H"의 차이 외에, DKIM 서명 헤더 구조가 정확히 동일한 것을 발견 모두 약간 공백 차이합니다 (수출입 하나 판매용 세미콜론 분리 후 구역 및 새로운 라인의 바 , 그래서 그것은 괜찮아 보인다, 그냥 다르게 깨진). 처음 엔 Exim이 필수 태그를 설정하지 않았을 수도 있지만, 그런 경우에는 오류가 달라야한다고 생각했습니다.
수출입 버전 : 4.87 의 cPanel (11)에 CentOS 7.2 서버 수출입 DKIM 구성에서 실행 :
dkim_remote_smtp:
driver = smtp
interface = <; ${if exists {/etc/mailips}{${lookup{${lc:$sender_address_domain}}lsearch{/etc/maili
ps}{$value}{${lookup{${lc:$sender_address_domain}}lsearch{/etc/mailips}{$value}{${lookup{${perl{get_
sender_from_uid}}}lsearch*{/etc/mailips}{$value}{}}}}}}}}
helo_data = ${if exists {/etc/mailhelo}{${lookup{${lc:$sender_address_domain}}lsearch{/etc/mailhel
o}{$value}{${lookup{${lc:$sender_address_domain}}lsearch{/etc/mailhelo}{$value}{${lookup{${perl{get_
sender_from_uid}}}lsearch*{/etc/mailhelo}{$value}{$primary_hostname}}}}}}}{$primary_hostname}}
dkim_domain = ${lc:$sender_address_domain}
dkim_selector = default
dkim_private_key = "/var/cpanel/domain_keys/private/${dkim_domain}"
dkim_canon = relaxed
dkim_sign_headers = to:from:subject:message-id:date:user-agent:mime-version:content-transfer-encoding
(마지막 줄에 날에 의해 추가 된 -는 이전 작업 중 하나를하지 않았다)
로 그것은 오류가 특별히 서명 확인과 관련이있는 것으로 보입니다. 다음은 관련이 있다고 생각하지 않지만 어쨌든 포함시켜야합니다 :
Exim 이메일은 서버의 Mr nobody에 의해 보내졌지만 enve lope-from과 Return-Path 헤더는 의도 된 발신자의 정확한 이메일 주소입니다. MS에서도 SPF가 통과하기 때문에이 영역에는 아무런 문제가 없어야합니다.
구글로부터 전송 된 이메일
메시지 ID 갖지만 : < 수출입 의해 전송 [송신자 도메인]>
이메일 @ [ID] 갖는다
을 Message-ID : < [id] @ [서버 호스트 이름]>
도움/아이디어를 많이 주시면 감사하겠습니다. 언제나 MS가 인생을 어렵게 만드는 것처럼 ... 재미있는가요?
공유해 주셔서 감사합니다. – Henry
안녕하세요! 해결책은 Exim 구성 파일에 다음 문자열을 추가하는 것이 었습니다. 'dkim_sign_headers = to : from : subject : message-id : date : user-agent : mime-version : content-transfer-encoding' – NetVicious