DKIM2 verification
This commit is contained in:
@@ -6,7 +6,7 @@ spf.result none
|
||||
spf_ehlo.result none
|
||||
dmarc.result none
|
||||
remote_ip 195.210.29.48
|
||||
expect_header X-Spam-Result: ARC_NA (0.00), DKIM_NA (0.00), FROM_EQ_ENV_FROM (0.00), FROM_HAS_DN (0.00), HAS_DATA_URI (0.00), HAS_LINK_TO_LARGE_IMG (0.00), HTML_SHORT_1 (0.00), MID_RHS_MATCH_ENV_FROM (0.00), RCPT_COUNT_ONE (0.00), SPF_NA (0.00), SUBJECT_ENDS_EXCLAIM (0.00), TO_DN_NONE (0.00), TO_MATCH_ENVRCPT_ALL (0.00), RCVD_COUNT_ZERO (0.10), RCVD_NO_TLS_LAST (0.10), MIME_HTML_ONLY (0.20), HELO_NORES_A_OR_MX (0.30), AUTH_NA (1.00), DATE_IN_PAST (1.00), DMARC_NA (1.00), MID_RHS_MATCH_FROM (1.00), FROMHOST_NORES_A_OR_MX (1.50), HTML_SHORT_LINK_IMG_1 (2.00), RDNS_NONE (2.00), PYZOR (3.50)
|
||||
expect_header X-Spam-Result: ARC_NA (0.00), DKIM2_NA (0.00), DKIM_NA (0.00), FROM_EQ_ENV_FROM (0.00), FROM_HAS_DN (0.00), HAS_DATA_URI (0.00), HAS_LINK_TO_LARGE_IMG (0.00), HTML_SHORT_1 (0.00), MID_RHS_MATCH_ENV_FROM (0.00), RCPT_COUNT_ONE (0.00), SPF_NA (0.00), SUBJECT_ENDS_EXCLAIM (0.00), TO_DN_NONE (0.00), TO_MATCH_ENVRCPT_ALL (0.00), RCVD_COUNT_ZERO (0.10), RCVD_NO_TLS_LAST (0.10), MIME_HTML_ONLY (0.20), HELO_NORES_A_OR_MX (0.30), AUTH_NA (1.00), DATE_IN_PAST (1.00), DMARC_NA (1.00), MID_RHS_MATCH_FROM (1.00), FROMHOST_NORES_A_OR_MX (1.50), HTML_SHORT_LINK_IMG_1 (2.00), RDNS_NONE (2.00), PYZOR (3.50)
|
||||
expect_header X-Spam-Score: spam, score=13.70
|
||||
|
||||
From: Client Services <noreply@tetheer.com>
|
||||
@@ -49,7 +49,7 @@ dkim.domains tenthrevolution.com
|
||||
dmarc.result pass
|
||||
remote_ip 185.58.86.181
|
||||
tls.version TLSv1.3
|
||||
expect_header X-Spam-Result: DMARC_POLICY_ALLOW (-0.50), DKIM_ALLOW (-0.20), SPF_ALLOW (-0.20), MIME_GOOD (-0.10), ARC_NA (0.00), DKIM_SIGNED (0.00), FROM_EQ_ENV_FROM (0.00), FROM_HAS_DN (0.00), HAS_ATTACHMENT (0.00), HTML_SHORT_2 (0.00), RCPT_COUNT_ONE (0.00), RCVD_COUNT_THREE (0.00), TO_DN_EQ_ADDR_ALL (0.00), TO_MATCH_ENVRCPT_ALL (0.00), RCVD_NO_TLS_LAST (0.10), HELO_NORES_A_OR_MX (0.30), SUBJECT_ENDS_SPACES (0.50), URI_COUNT_ODD (0.50), DATE_IN_PAST (1.00), FORGED_RCVD_TRAIL (1.00), FROMHOST_NORES_A_OR_MX (1.50)
|
||||
expect_header X-Spam-Result: DMARC_POLICY_ALLOW (-0.50), DKIM_ALLOW (-0.20), SPF_ALLOW (-0.20), MIME_GOOD (-0.10), ARC_NA (0.00), DKIM2_NA (0.00), DKIM_SIGNED (0.00), FROM_EQ_ENV_FROM (0.00), FROM_HAS_DN (0.00), HAS_ATTACHMENT (0.00), HTML_SHORT_2 (0.00), RCPT_COUNT_ONE (0.00), RCVD_COUNT_THREE (0.00), TO_DN_EQ_ADDR_ALL (0.00), TO_MATCH_ENVRCPT_ALL (0.00), RCVD_NO_TLS_LAST (0.10), HELO_NORES_A_OR_MX (0.30), SUBJECT_ENDS_SPACES (0.50), URI_COUNT_ODD (0.50), DATE_IN_PAST (1.00), FORGED_RCVD_TRAIL (1.00), FROMHOST_NORES_A_OR_MX (1.50)
|
||||
expect_header X-Spam-Score: ham, score=3.90
|
||||
|
||||
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tenthrevolution.com;
|
||||
@@ -574,7 +574,7 @@ dmarc.result fail
|
||||
dmarc.policy reject
|
||||
remote_ip 51.89.165.39
|
||||
tls.version TLS1_2
|
||||
expect_header X-Spam-Result: DKIM_ALLOW (-0.20), HAS_LIST_UNSUB (-0.01), ARC_NA (0.00), DKIM_SIGNED (0.00), FROM_EQ_ENV_FROM (0.00), FROM_HAS_DN (0.00), HAS_EXTERNAL_IMG (0.00), HAS_LINK_TO_LARGE_IMG (0.00), HAS_REPLYTO (0.00), HTML_SHORT_1 (0.00), MID_RHS_MATCH_ENV_FROM (0.00), RCPT_COUNT_ONE (0.00), REPLYTO_ADDR_EQ_FROM (0.00), REPLYTO_EQ_FROM (0.00), SPF_SOFTFAIL (0.00), TO_DN_NONE (0.00), TO_MATCH_ENVRCPT_ALL (0.00), RCVD_COUNT_ZERO (0.10), RCVD_NO_TLS_LAST (0.10), HELO_NORES_A_OR_MX (0.30), DATE_IN_PAST (1.00), MID_RHS_MATCH_FROM (1.00), PARTS_DIFFER (1.00), FROMHOST_NORES_A_OR_MX (1.50), HTML_SHORT_LINK_IMG_1 (2.00), RDNS_NONE (2.00), VIOLATED_DIRECT_SPF (3.50), DMARC_POLICY_REJECT (4.00)
|
||||
expect_header X-Spam-Result: DKIM_ALLOW (-0.20), HAS_LIST_UNSUB (-0.01), ARC_NA (0.00), DKIM2_NA (0.00), DKIM_SIGNED (0.00), FROM_EQ_ENV_FROM (0.00), FROM_HAS_DN (0.00), HAS_EXTERNAL_IMG (0.00), HAS_LINK_TO_LARGE_IMG (0.00), HAS_REPLYTO (0.00), HTML_SHORT_1 (0.00), MID_RHS_MATCH_ENV_FROM (0.00), RCPT_COUNT_ONE (0.00), REPLYTO_ADDR_EQ_FROM (0.00), REPLYTO_EQ_FROM (0.00), SPF_SOFTFAIL (0.00), TO_DN_NONE (0.00), TO_MATCH_ENVRCPT_ALL (0.00), RCVD_COUNT_ZERO (0.10), RCVD_NO_TLS_LAST (0.10), HELO_NORES_A_OR_MX (0.30), DATE_IN_PAST (1.00), MID_RHS_MATCH_FROM (1.00), PARTS_DIFFER (1.00), FROMHOST_NORES_A_OR_MX (1.50), HTML_SHORT_LINK_IMG_1 (2.00), RDNS_NONE (2.00), VIOLATED_DIRECT_SPF (3.50), DMARC_POLICY_REJECT (4.00)
|
||||
expect_header X-Spam-Score: spam, score=16.29
|
||||
|
||||
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; s=sectionalism; d=grupokonecta.net;
|
||||
@@ -791,7 +791,7 @@ dmarc.result pass
|
||||
dmarc.policy reject
|
||||
remote_ip 52.103.64.5
|
||||
tls.version TLS1_2
|
||||
expect_header X-Spam-Result: DMARC_POLICY_ALLOW (-0.50), DKIM_ALLOW (-0.20), SPF_ALLOW (-0.20), ARC_NA (0.00), ARC_SIGNED (0.00), DKIM_SIGNED (0.00), FREEMAIL_FROM (0.00), FROM_EQ_ENV_FROM (0.00), FROM_HAS_DN (0.00), HAS_SEO_WORD (0.00), HAS_X_PRIO_ONE (0.00), HTML_SHORT_1 (0.00), MID_RHS_MATCH_ENV_FROMTLD (0.00), MID_RHS_MATCH_FROMTLD (0.00), RCPT_COUNT_ONE (0.00), RCPT_IN_BODY (0.00), RCVD_COUNT_TWO (0.00), TO_DN_EQ_ADDR_ALL (0.00), TO_MATCH_ENVRCPT_ALL (0.00), RCVD_NO_TLS_LAST (0.10), HELO_NORES_A_OR_MX (0.30), DATE_IN_PAST (1.00), FROMHOST_NORES_A_OR_MX (1.50), SEO_SPAM (5.00)
|
||||
expect_header X-Spam-Result: DMARC_POLICY_ALLOW (-0.50), DKIM_ALLOW (-0.20), SPF_ALLOW (-0.20), ARC_NA (0.00), ARC_SIGNED (0.00), DKIM2_NA (0.00), DKIM_SIGNED (0.00), FREEMAIL_FROM (0.00), FROM_EQ_ENV_FROM (0.00), FROM_HAS_DN (0.00), HAS_SEO_WORD (0.00), HAS_X_PRIO_ONE (0.00), HTML_SHORT_1 (0.00), MID_RHS_MATCH_ENV_FROMTLD (0.00), MID_RHS_MATCH_FROMTLD (0.00), RCPT_COUNT_ONE (0.00), RCPT_IN_BODY (0.00), RCVD_COUNT_TWO (0.00), TO_DN_EQ_ADDR_ALL (0.00), TO_MATCH_ENVRCPT_ALL (0.00), RCVD_NO_TLS_LAST (0.10), HELO_NORES_A_OR_MX (0.30), DATE_IN_PAST (1.00), FROMHOST_NORES_A_OR_MX (1.50), SEO_SPAM (5.00)
|
||||
expect_header X-Spam-Score: spam, score=7.00
|
||||
|
||||
Return-Path: <miah.join@outlook.com>
|
||||
@@ -1021,7 +1021,7 @@ dmarc.result pass
|
||||
dmarc.policy reject
|
||||
remote_ip 173.224.123.255
|
||||
tls.version TLS1_2
|
||||
expect_header X-Spam-Result: DMARC_POLICY_ALLOW (-0.50), DKIM_ALLOW (-0.20), SPF_ALLOW (-0.20), ARC_NA (0.00), DKIM_SIGNED (0.00), FROM_EQ_ENV_FROM (0.00), FROM_HAS_DN (0.00), HAS_EXTERNAL_IMG (0.00), HAS_REPLYTO (0.00), HAS_X_PRIO_THREE (0.00), HTML_SHORT_1 (0.00), RCPT_COUNT_ONE (0.00), REPLYTO_DN_EQ_FROM_DN (0.00), REPLYTO_DOM_EQ_FROM_DOM (0.00), TO_DN_ALL (0.00), TO_EQ_FROM (0.00), RCVD_COUNT_ZERO (0.10), RCVD_NO_TLS_LAST (0.10), HELO_NORES_A_OR_MX (0.30), MID_RHS_NOT_FQDN (0.50), UNPARSABLE_URL (0.50), DATE_IN_PAST (1.00), FROMHOST_NORES_A_OR_MX (1.50), DIRECT_TO_MX (2.00), FORGED_RECIPIENTS (2.00), SUBJ_ALL_CAPS (3.00)
|
||||
expect_header X-Spam-Result: DMARC_POLICY_ALLOW (-0.50), DKIM_ALLOW (-0.20), SPF_ALLOW (-0.20), ARC_NA (0.00), DKIM2_NA (0.00), DKIM_SIGNED (0.00), FROM_EQ_ENV_FROM (0.00), FROM_HAS_DN (0.00), HAS_EXTERNAL_IMG (0.00), HAS_REPLYTO (0.00), HAS_X_PRIO_THREE (0.00), HTML_SHORT_1 (0.00), RCPT_COUNT_ONE (0.00), REPLYTO_DN_EQ_FROM_DN (0.00), REPLYTO_DOM_EQ_FROM_DOM (0.00), TO_DN_ALL (0.00), TO_EQ_FROM (0.00), RCVD_COUNT_ZERO (0.10), RCVD_NO_TLS_LAST (0.10), HELO_NORES_A_OR_MX (0.30), MID_RHS_NOT_FQDN (0.50), UNPARSABLE_URL (0.50), DATE_IN_PAST (1.00), FROMHOST_NORES_A_OR_MX (1.50), DIRECT_TO_MX (2.00), FORGED_RECIPIENTS (2.00), SUBJ_ALL_CAPS (3.00)
|
||||
expect_header X-Spam-Score: spam, score=10.10
|
||||
|
||||
Return-Path: <marketing@landeray.com>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
expect DMARC_NA SPF_NA DKIM_NA ARC_NA AUTH_NA
|
||||
expect DMARC_NA SPF_NA DKIM_NA ARC_NA AUTH_NA DKIM2_NA
|
||||
|
||||
Subject: test
|
||||
|
||||
@@ -9,7 +9,7 @@ spf.result pass
|
||||
dkim.result pass
|
||||
arc.result pass
|
||||
dmarc.result pass
|
||||
expect DKIM_SIGNED ARC_SIGNED DKIM_ALLOW SPF_ALLOW ARC_ALLOW DMARC_POLICY_ALLOW
|
||||
expect DKIM_SIGNED ARC_SIGNED DKIM_ALLOW SPF_ALLOW ARC_ALLOW DMARC_POLICY_ALLOW DKIM2_NA
|
||||
|
||||
DKIM-Signature: abc
|
||||
ARC-Seal: xyz
|
||||
@@ -23,7 +23,7 @@ dkim.result fail
|
||||
arc.result fail
|
||||
dmarc.result fail
|
||||
dmarc.policy quarantine
|
||||
expect SPF_FAIL ARC_REJECT DKIM_REJECT DMARC_POLICY_QUARANTINE
|
||||
expect SPF_FAIL ARC_REJECT DKIM_REJECT DMARC_POLICY_QUARANTINE DKIM2_NA
|
||||
|
||||
Subject: test
|
||||
|
||||
@@ -35,7 +35,7 @@ dkim.result temperror
|
||||
arc.result permerror
|
||||
dmarc.result fail
|
||||
dmarc.policy reject
|
||||
expect DKIM_TEMPFAIL SPF_NEUTRAL ARC_INVALID DMARC_POLICY_REJECT
|
||||
expect DKIM_TEMPFAIL SPF_NEUTRAL ARC_INVALID DMARC_POLICY_REJECT DKIM2_NA
|
||||
|
||||
Subject: test
|
||||
|
||||
@@ -46,7 +46,7 @@ spf.result softfail
|
||||
dkim.result permerror
|
||||
arc.result temperror
|
||||
dmarc.result permerror
|
||||
expect ARC_DNSFAIL DMARC_BAD_POLICY DKIM_PERMFAIL SPF_SOFTFAIL
|
||||
expect ARC_DNSFAIL DMARC_BAD_POLICY DKIM_PERMFAIL SPF_SOFTFAIL DKIM2_NA
|
||||
|
||||
Subject: test
|
||||
|
||||
@@ -55,7 +55,7 @@ Test
|
||||
dkim.result pass
|
||||
dkim.domains spf-dkim-allow.org
|
||||
spf.result pass
|
||||
expect DKIM_ALLOW SPF_ALLOW ARC_NA DMARC_NA
|
||||
expect DKIM_ALLOW SPF_ALLOW ARC_NA DMARC_NA DKIM2_NA
|
||||
|
||||
From: user@spf-dkim-allow.org
|
||||
Subject: test
|
||||
@@ -65,7 +65,7 @@ Test
|
||||
dkim.result pass
|
||||
spf.result pass
|
||||
arc.result pass
|
||||
expect DKIM_ALLOW SPF_ALLOW ARC_ALLOW DMARC_NA
|
||||
expect DKIM_ALLOW SPF_ALLOW ARC_ALLOW DMARC_NA DKIM2_NA
|
||||
|
||||
From: user@spf-dkim-allow.org
|
||||
Subject: test
|
||||
@@ -74,7 +74,7 @@ Test
|
||||
<!-- NEXT TEST -->
|
||||
spf.result pass
|
||||
dkim.result fail
|
||||
expect DKIM_REJECT SPF_ALLOW ARC_NA DMARC_NA
|
||||
expect DKIM_REJECT SPF_ALLOW ARC_NA DMARC_NA DKIM2_NA
|
||||
|
||||
From: user@spf-dkim-allow.org
|
||||
Subject: test
|
||||
@@ -83,7 +83,7 @@ Test
|
||||
<!-- NEXT TEST -->
|
||||
spf.result pass
|
||||
dkim.result temperror
|
||||
expect DKIM_TEMPFAIL SPF_ALLOW ARC_NA DMARC_NA
|
||||
expect DKIM_TEMPFAIL SPF_ALLOW ARC_NA DMARC_NA DKIM2_NA
|
||||
|
||||
From: user@spf-dkim-allow.org
|
||||
Subject: test
|
||||
@@ -93,7 +93,7 @@ Test
|
||||
dkim.result pass
|
||||
dkim.domains spf-dkim-allow.org
|
||||
spf.result fail
|
||||
expect DKIM_ALLOW SPF_FAIL ARC_NA DMARC_NA
|
||||
expect DKIM_ALLOW SPF_FAIL ARC_NA DMARC_NA DKIM2_NA
|
||||
|
||||
From: user@spf-dkim-allow.org
|
||||
Subject: test
|
||||
@@ -103,7 +103,7 @@ Test
|
||||
dkim.result pass
|
||||
dkim.domains spf-dkim-allow.org
|
||||
spf.result temperror
|
||||
expect DKIM_ALLOW SPF_DNSFAIL ARC_NA DMARC_NA
|
||||
expect DKIM_ALLOW SPF_DNSFAIL ARC_NA DMARC_NA DKIM2_NA
|
||||
|
||||
From: user@spf-dkim-allow.org
|
||||
Subject: test
|
||||
@@ -112,7 +112,7 @@ Test
|
||||
<!-- NEXT TEST -->
|
||||
dkim.result fail
|
||||
spf.result fail
|
||||
expect DKIM_REJECT SPF_FAIL ARC_NA DMARC_NA
|
||||
expect DKIM_REJECT SPF_FAIL ARC_NA DMARC_NA DKIM2_NA
|
||||
|
||||
From: user@spf-dkim-allow.org
|
||||
Subject: test
|
||||
@@ -121,7 +121,7 @@ Test
|
||||
<!-- NEXT TEST -->
|
||||
dkim.result temperror
|
||||
spf.result temperror
|
||||
expect DKIM_TEMPFAIL SPF_DNSFAIL ARC_NA DMARC_NA AUTH_NA_OR_FAIL
|
||||
expect DKIM_TEMPFAIL SPF_DNSFAIL ARC_NA DMARC_NA AUTH_NA_OR_FAIL DKIM2_NA
|
||||
|
||||
From: user@spf-dkim-allow.org
|
||||
Subject: test
|
||||
@@ -133,7 +133,7 @@ dkim.result pass
|
||||
arc.result pass
|
||||
dmarc.result pass
|
||||
envelope_from hello@stalw.art
|
||||
expect TRUSTED_DOMAIN DMARC_POLICY_ALLOW DKIM_ALLOW SPF_ALLOW ARC_ALLOW
|
||||
expect TRUSTED_DOMAIN DMARC_POLICY_ALLOW DKIM_ALLOW SPF_ALLOW ARC_ALLOW DKIM2_NA
|
||||
|
||||
From: <hello@stalw.art>
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
use crate::utils::{account::Account, server::TestServer};
|
||||
use ahash::AHashSet;
|
||||
use common::{config::smtp::auth::DkimSigner, network::dns::update::DNS_RECORDS};
|
||||
use common::{config::smtp::auth::Dkim1Signer, network::dns::update::DNS_RECORDS};
|
||||
use dns_update::{DnsRecord, NamedDnsRecord};
|
||||
use registry::{
|
||||
schema::{
|
||||
@@ -316,10 +316,11 @@ impl TestServer {
|
||||
.await
|
||||
.unwrap()
|
||||
.unwrap_or_else(|| panic!("No signatures found: {:?}", selectors))
|
||||
.dkim1
|
||||
.iter()
|
||||
.map(|s| match s {
|
||||
DkimSigner::RsaSha256(s) => s.template.s.as_str(),
|
||||
DkimSigner::Ed25519Sha256(s) => s.template.s.as_str(),
|
||||
Dkim1Signer::RsaSha256(s) => s.template.s.as_str(),
|
||||
Dkim1Signer::Ed25519Sha256(s) => s.template.s.as_str(),
|
||||
})
|
||||
.collect::<AHashSet<_>>(),
|
||||
selectors.iter().copied().collect::<AHashSet<_>>()
|
||||
|
||||
@@ -520,6 +520,7 @@ async fn antispam() {
|
||||
.spam_classify(
|
||||
&parsed_message,
|
||||
&dkim_domains,
|
||||
None,
|
||||
arc_result.as_ref(),
|
||||
dmarc_result.as_ref(),
|
||||
dmarc_policy.as_ref(),
|
||||
@@ -549,6 +550,7 @@ async fn antispam() {
|
||||
let mut spam_input = session.build_spam_input(
|
||||
&parsed_message,
|
||||
&dkim_domains,
|
||||
None,
|
||||
arc_result.as_ref(),
|
||||
dmarc_result.as_ref(),
|
||||
dmarc_policy.as_ref(),
|
||||
|
||||
Reference in New Issue
Block a user