Frage zu Whitelisting

Mar 7, 2025
2
0
1
Hallo zusammen,

ich setze schon seit längerem das PMG sowohl privat als auch bei Kunden erfolgreich ein - kämpfe allerdings auch schon länger mit dem Problem, dass ich es nicht fertigbekomme, Domains von Absendern komplett zu whitelisten. Habe schon in der Dokumentation zum PMG und online gewühlt, aber ich werde daraus nicht ganz schlau.

Kurz zu meinem Konstrukt / Mailrouting:
- PMG Version 8.2.0
- Vor dem PMG sitzt auf einer separaten VM eine rspamd Instanz, welche alle eingehenden Mails entgegennimmt und auswertet. Alles, was einen SCL von mehr als >5 hat, bekommt von rspamd die Header "X-Spam-Flag=Yes" sowie "X-Spam=Yes" verpasst. Alle Mails gehen danach ans PMG weiter, welcher die Mails im letzten Schritt dann zum richtigen Mailserver umverteilt.
Ich nutze das PMG primär als Quarantäne- und Tracking Tool bei Mailzustellungsproblemen - jeder, der einen Exchange hat, wird mir zustimmen, wenn ich sage, dass das Tracking Center vom PMG bei weitem mehr Infos bietet als MS Exchange beim Troubleshooting.... ;)
- Auf dem PMG ist alles, was SPF / RBL usw. betrifft, in den EInstellungen (soweit ich es beurteilen kann) deaktiviert - siehe Screenshots anbei.
- Ich habe unter "Configuration" -> "Mail Proxy" bei "Whitelist" die IP Adressen vom rspamd Host eingetragen - dies sollte laut Doku SPF / RBL Checks usw. eliminieren, was ja Sinn macht - SPF und co. übernimmt ja rspamd. (https://pmg.proxmox.com/pmg-docs/pmg-admin-guide.html#_features - Punkt SMTP Whitelisting)
- Unter "Networks" habe ich ebenfalls den rspamd Host als Trusted host hinterlegt.

Im Mailfilter gibt es die Default Whitelisting Regel mit der Priorität 85 und die rspamd Header Regel mit der Priorität 81 (Regeln siehe Screenshots).
Ersteres ist selbsterklärend, die zweite Regel verschiebt die Mails in Quarantäne, sollte die vorher genannten Header in einer Mail auftauchen.

Unter "Mail Filter" -> "Who Objects" sind in der Whitelist alle Domains eingetragen, welche ich freigegeben habe - nehmen wir in diesem Beispiel DigitalOcean. "digitalocean.com" ist als "Doman" in der Whitelist hinterlegt - eine Mail von "support@digitalocean.com" wird trotzdem vom PMG in die Quarantäne geschoben, obwohl die Domain freigeben ist.

Hier stellt sich bei mir die Frage, wie hier das Whitelisting arbeitet bzw. funktioniert.
- Wird beim Whitelisting mit der Domain auf "Envelope From" oder auf "FROM" Header in der Mail Bezug genommen?
- Funktioniert die Whitelist nicht, weil die Mail zwar augenscheinlich zwar von "support@digitalocean.com", aber im Envelope From "bounces@em6554.digitalocean.com" die Subdomain em6554.digitalocean.com drinsteht und daher an der Stelle die Domain in der Whitelist nicht mehr passt?
- Wäre ich besser beraten, hier mit einer Regex Regel zu arbeiten anstatt mit "Domain" - in diesem Fall z.B. "^.*@([a-zA-Z0-9-]+\.)*digitalocean\.com$" - um alle Subdomains ebenfalls mit zu erwischen, sollte sich PMG am "Envelope From" orientieren?

Ich hoffe, die Frage kommt nicht dumm rüber - ich würde es nur gerne richtig verstehen.
Eine Lösung wäre natürlich, im rspamd davor eine Ausnahme zu setzen - ich hätte aber lieber gerne alles zentral im PMG, falls möglich.

Wünsche ein schönes Wochenende.


VG
 

Attachments

  • mstsc_2025-03-07_22-53-40.png
    mstsc_2025-03-07_22-53-40.png
    9.6 KB · Views: 4
  • mstsc_2025-03-07_22-55-02.png
    mstsc_2025-03-07_22-55-02.png
    16.3 KB · Views: 5
  • mstsc_2025-03-07_23-06-48.png
    mstsc_2025-03-07_23-06-48.png
    8.3 KB · Views: 5
  • mstsc_2025-03-07_23-07-24.png
    mstsc_2025-03-07_23-07-24.png
    67.5 KB · Views: 5
  • RemoteDesktopManager_2025-03-07_22-39-51.png
    RemoteDesktopManager_2025-03-07_22-39-51.png
    23.2 KB · Views: 4
  • RemoteDesktopManager_2025-03-07_22-49-05.png
    RemoteDesktopManager_2025-03-07_22-49-05.png
    54 KB · Views: 4
Hier noch der Mailheader von einer Mail, welche in Quarantäne geschoben wurde in anonymisierter Fasung:
Code:
Delivered-To: <snip>
Return-Path: bounces+26264468-246c-SNIP.de@em6554.digitalocean.com
Received: from mx01.redacted.de (unknown [10.3.1.10])
    (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
     key-exchange X25519 server-signature RSA-PSS (4096 bits))
    (No client certificate requested)
    by mx03.redacted.de (Proxmox) with ESMTPS id CB907225C5
    for <redacted@redacted.de>; Sat,  1 Mar 2025 04:53:41 +0100 (CET)
Received: from o6.outbound-sg.digitalocean.com (o6.outbound-sg.digitalocean.com [159.183.199.158])
    (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
     key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
    (No client certificate requested)
    by mx01.redacted.de (Postcow) with ESMTPS id B7AE685440
    for <redacted@redacted.de>; Sat,  1 Mar 2025 04:53:40 +0100 (CET)
Authentication-Results: mx01.redacted.de;
    dkim=pass header.d=digitalocean.com header.s=s1 header.b="Pzgfr7/1";
    dmarc=pass (policy=reject) header.from=digitalocean.com;
    spf=pass (mx01.redacted.de: domain of "bounces+26264468-246c-redacted=redacted.de@em6554.digitalocean.com" designates 159.183.199.158 as permitted sender) smtp.mailfrom="bounces+26264468-246c-redacted=redacted.de@em6554.digitalocean.com"
ARC-Seal: i=1; s=dkim; d=redacted.de; t=1740801221; a=rsa-sha256; cv=none;
    b=WTBz3gyDYg0RvHY9tpfeYRb165uRlOzSuzMbE0L5zIZWtd60CK8JRopBMoh8/CXsHb2DNQ
    XAtrPjCvjp/x60ooO4wspyGIDx60dwQvf9W2N8EZPh7ojrsWqwpVgXZxKyl1blFoeEzMht
    4UrfpLwrN/Q0XQxXqpMUuy4UzeC7asRf+BVLXYuyLIGikmdyUHUFrYUODdBrM5Tdx3v5a5
    PvKf3ovvPiAhG5ibDzDabYlrNaHGAFh9Gnxp5zPvtBx0V9sZljqEvQkfgyyXtdZy8z86Kw
    AmHMvi+Mj84ff8AWMFI+6j0jeTRJH5P3Tt08MSmnyQjA1UHIOuYITBtAbz7YEA==
ARC-Authentication-Results: i=1;
    mx01.redacted.de;
    dkim=pass header.d=digitalocean.com header.s=s1 header.b="Pzgfr7/1";
    dmarc=pass (policy=reject) header.from=digitalocean.com;
    spf=pass (mx01.redacted.de: domain of "bounces+26264468-246c-redacted=redacted.de@em6554.digitalocean.com" designates 159.183.199.158 as permitted sender) smtp.mailfrom="bounces+26264468-246c-redacted=redacted.de@em6554.digitalocean.com"
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=redacted.de;
    s=dkim; t=1740801221;
    h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
     to:to:cc:mime-version:mime-version:content-type:content-type:
     dkim-signature; bh=hc8vXNURjv083GDGHWlkAjC+W96+WgewMbRx39OCFPM=;
    b=S2nWZxFUGpEl33l205viDb7ocEl0fCJ4SwqV2RdALeX7Z9Py4qUPOR29QKQGrKnWazQnFR
    mIrT39pzsfmp3H3nmZpOdYA5eRdLcy93TsE1xUikBUMZ914s4QW8iIRTOlOYI/UFZqc1Fl
    zBcc9WTWwvxZTT/zNafeYppp9CLhksnnMRDO8T3pc9/CzNRswfl7t5AL/Y6wyqKqYjJjkJ
    5wB+r8IudPMZYBUDz4MHJmPItdgIpeZ1oAnjY8DWRn3n3gccSGvrqERfCOTZE/YeMbSNIJ
    vVkI3Mgo2gqTLSiJvjVGvdfRVkz20eW+j2glydnNmQ6f4UDLXXyti20kluxtrg==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=digitalocean.com;
    h=content-type:from:mime-version:subject:to:cc:content-type:from:
    subject:to;
    s=s1; bh=hc8vXNURjv083GDGHWlkAjC+W96+WgewMbRx39OCFPM=;
    b=Pzgfr7/1Saj4PHWzMfaZ25cLMaA07swMfgvKb20Uy9V/IdhQJHZmNNLkrxXFhm+pCb71
    FlG1bRfh9JmuFhM3FQpN/GUA9aWhw27gBcQPtMN//EaFa2gUhRbZsKGEjqGqcE2IVAMTo6
    AwVSCfHL6NWZLGnbs6YH31j8nI7eH95SoXwJulY6fsO+b2RJkjgur9H3EiCgT55JADr/rf
    7JjTs2Eg1VCzN1QjJYenlFX066Duf4HmiwWbdZ4aJw8ySr1CZ7k3xHwrRnMetFNc66ll0L
    bEI0Mk7Q0PbUnrRurs+mWaWA1E/Fua3sJLWBixu0wUNn5rpfEO1vi8xjroTpz4bw==
Received: by recvd-766dd68955-cw76l with SMTP id recvd-766dd68955-cw76l-1-67C28370-8
    2025-03-01 03:48:00.274416369 +0000 UTC m=+9181419.903156989
Received: from MjYyNjQ0Njg (unknown)
    by geopod-ismtpd-11 (SG) with HTTP
    id 0V1gAbooRfaiVTdidVbD2Q
    Sat, 01 Mar 2025 03:48:00.203 +0000 (UTC)
Content-Type: multipart/alternative; boundary=e66aef2da5f4e1a91ac2778d821080199c2340deb62f911e5848ba477432
Date: Sat, 01 Mar 2025 03:48:00 +0000 (UTC)
From: DigitalOcean Support <support@digitalocean.com>
Mime-Version: 1.0
Message-ID: <0V1gAbooRfaiVTdidVbD2Q@geopod-ismtpd-11>
Subject: DigitalOcean - Here's your receipt
X-SG-EID:
 =?us-ascii?Q?u001=2EIrsp9SSQ08zT63q1jQS2DFoZTfqEihOJUvkuh7SdskYq3i+VOTK8WwD7S?=
 =?us-ascii?Q?yPWcbDFw+0i4fiuIaTaA275Od4SINO382Ev+U7N?=
 =?us-ascii?Q?ohC08KeBVUtdeVN6NSTFFp+qyIebB=2FG6NnVGARd?=
 =?us-ascii?Q?xLs=2FZ9CnzLyqFVXJkZh3ny+kdGwcLrifo=2Fvt1HQ?=
 =?us-ascii?Q?l+hqAK8yAlTkxJuRORbeZVSC6Q48tXUoOpcgnRm?=
 =?us-ascii?Q?CdhO3BlKNF699JYVvyqAUr69ttk50sE4URBCiq0?=
 =?us-ascii?Q?dCftDR1z=2FxXFPHli6wnWT5nelQ=3D=3D?=
X-SG-ID:
 =?us-ascii?Q?u001=2ESdBcvi+Evd=2FbQef8eZF3BpTL9BgbK5wfSJMJGMsmprDsPyUTnMagHRCjb?=
 =?us-ascii?Q?=2F65Gublfs288kI+8a5kkEqg4NLKlurCH8sNswjz?=
 =?us-ascii?Q?JmeHbj12UtxYsd85XuAZF5bqjakvGZySJzIp=2FQa?=
 =?us-ascii?Q?APGVumtRv5glIbSrNn7qznM5TseAq3jFjVYCNWp?=
 =?us-ascii?Q?X7nmad2YoXhXhI1FDX?=
To: redacted <redacted@redacted.de>
X-Entity-ID: u001.ru+ruRM/vtU7GKTI0wuwkw==
X-Last-TLS-Session-Version: TLSv1.3
X-Rspamd-Queue-Id: B7AE685440
X-Spamd-Result: default: False [6.79 / 10000000000.00];
    URIBL_GREY(2.50)[sendgrid.net:url];
    BAD_REP_POLICIES(2.00)[];
    RBL_SENDERSCORE_REPUT_9(-1.00)[159.183.199.158:from];
    URI_COUNT_ODD(1.00)[3];
    SUSPICIOUS_URL_IN_SUSPICIOUS_MESSAGE(1.00)[];
    MV_CASE(0.50)[];
    MID_RHS_NOT_FQDN(0.50)[];
    FORGED_SENDER(0.30)[support@digitalocean.com,bounces@em6554.digitalocean.com];
    IP_REPUTATION_HAM(-0.20)[asn: 11377(-0.20), country: US(-0.00), ip: 159.183.199.158(0.00)];
    ZERO_FONT(0.20)[2];
    MIME_GOOD(-0.10)[multipart/alternative,text/plain];
    MANY_INVISIBLE_PARTS(0.10)[2];
    MX_GOOD(-0.01)[];
    GREYLIST(0.00)[pass,body];
    TO_MATCH_ENVRCPT_ALL(0.00)[];
    ARC_NA(0.00)[];
    RCPT_MAILCOW_DOMAIN(0.00)[redacted.de];
    BCC(0.00)[];
    MIME_TRACE(0.00)[0:+,1:+,2:~];
    FROM_HAS_DN(0.00)[];
    TAGGED_FROM(0.00)[26264468-246c-redacted=redacted.de];
    RCVD_TLS_LAST(0.00)[];
    REDIRECTOR_URL(0.00)[sendgrid.net];
    R_SPF_ALLOW(0.00)[+ip4:159.183.199.158:c];
    RCVD_COUNT_TWO(0.00)[2];
    FROM_NEQ_ENVFROM(0.00)[support@digitalocean.com,bounces@em6554.digitalocean.com];
    R_DKIM_ALLOW(0.00)[digitalocean.com:s=s1];
    ASN(0.00)[asn:11377, ipnet:159.183.192.0/19, country:US];
    DKIM_TRACE(0.00)[digitalocean.com:+];
    TO_DN_ALL(0.00)[];
    MISSING_XM_UA(0.00)[];
    RCPT_COUNT_ONE(0.00)[1];
    DMARC_POLICY_ALLOW(0.00)[digitalocean.com,reject];
    ARC_SIGNED(0.00)[redacted.de:s=dkim:i=1]
X-Spam-Flag: YES
X-Spam: Yes


--e66aef2da5f4e1a91ac2778d821080199c2340deb62f911e5848ba477432
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain; charset=us-ascii
Mime-Version: 1.0
 
- Funktioniert die Whitelist nicht, weil die Mail zwar augenscheinlich zwar von "support@digitalocean.com", aber im Envelope From "bounces@em6554.digitalocean.com" die Subdomain em6554.digitalocean.com drinsteht und daher an der Stelle die Domain in der Whitelist nicht mehr passt?
Who Objekte im Regelsystem gehen auf die envelope addressen, wenn auf den From-header gematched werden soll muss ein What Objekt (Match Field, Field 'From') verwendet werden.

und wenn saemtliche subdomains gematched werden sollen ist eine WhoRegex korrekt.

Beide Sachen können theoretisch gespoofed werden - aber in der Praxis wuerde ich mal damit anfangen auf den From header zu schauen, und die logs im Auge behalten (falls doch etwas gespooftes durch rspamd durchrutscht

Ich hoffe das hilft!