보낸 사람 필드를 내 이메일 주소로 사용하여 스팸 이메일을 거부하는 방법은 무엇입니까?

보낸 사람 필드를 내 이메일 주소로 사용하여 스팸 이메일을 거부하는 방법은 무엇입니까?

나는 내 자신의 postfix/dovecot 이메일 서버를 운영하고 있습니다. 최근 내 이메일 주소인 보낸 사람과 받는 사람 필드가 동일한 스팸 이메일이 많이 내 받은 편지함에 넘쳐났습니다. check_policy_service unix:private/policy에 추가했지만 smtpd_recipient_restrictions보낸 사람이 홍수처럼 내 이메일 주소로 스팸을 막지는 못했습니다. 다른 유사한 질문도 확인했지만 도움이 되지 않았습니다. postfix 설정에서 주의해야 할 다른 부분이 있는지 궁금합니다.

DNS에 spf가 설정되어 있습니다.

$ nslookup -type=txt mydomain.com
mydomain.com    text = "v=spf1 mx a ptr include:mail.myemaildomain.com -all"

다음은 매우 긴 인코딩 헤더가 제거된 스팸 중 하나의 헤더 샘플입니다. 내 이메일이 [email protected]이고 내 메일 서버가 이라고 가정합니다 mail.myemaildomain.com.

Return-Path: <>
Delivered-To: [email protected]
Received: from mail.myemaildomain.com
    by mail.myemaildomain.com with LMTP
    id 0KJAM+e2oGM0TgAAheIUKw
    (envelope-from <>)
    for <[email protected]>; Mon, 19 Dec 2022 19:09:27 +0000
Received: by mail.myemaildomain.com (Postfix, from userid 182)
    id CEFE8C6409; Mon, 19 Dec 2022 19:09:27 +0000 (UTC)
Received-SPF: none (qwwj.em.jennycraig.com: No applicable sender policy available) receiver=mail.myemaildomain.com; identity=helo; helo=qwwj.em.jennycraig.com; client-ip=103.198.26.226
Received: from qwwj.em.jennycraig.com (unknown [103.198.26.226])
    by mail.myemaildomain.com (Postfix) with ESMTP id 42098C6407
    for <[email protected]>; Mon, 19 Dec 2022 19:09:27 +0000 (UTC)
Received: from 10.226.14.104
 by atlas114.aol.mail.ne1.yahoo.com pod-id NONE with HTTPS; Thu, 15 Dec 2030 13:36:39 +0000
X-Originating-Ip: [209.85.218.45]
Received-SPF: pass (domain of gmail.com designates 209.85.218.45 as permitted sender)
Authentication-Results: atlas114.aol.mail.ne1.yahoo.com;
 dkim=pass [email protected] header.s=20210112;
 spf=pass smtp.mailfrom=gmail.com;
 dmarc=pass(p=NONE,sp=QUARANTINE) header.from=gmail.com;
X-Apparently-To: [email protected]; Thu, 15 Dec 2030 13:36:39 +0000
Received: from 209.85.218.45 (EHLO mail-ej1-f45.google.com)
 by 10.226.14.104 with SMTPs
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256);
 Thu, 15 Dec 2030 13:36:39 +0000
Received: by mail-ej1-f45.google.com with SMTP id n20so52313294ejh.0
        for <[email protected]>; Thu, 15 Dec 2030 05:36:39 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20210112;
        h=to:subject:message-id:date:from:mime-version:from:to:cc:subject
         :date:message-id:reply-to;
        bh=TJRpkbHmfqiYQcSzQM9QyAcKyxwfgZJL1vLIP4WWyzY=;
        b=PU/nv5+QLQUtFFhUFU6EkFLDEIAN0MjTP0TDPeoWc6O/rXu53+DCp7cua72BLe3k8Y
         SpiPuVwH02uo87V3rs+L6KMLQaqA8V1D7vjU+3K5T9yP35DOf/bgtp3Nrb2d0Ejik0Bv
         U9ePCaf7UM8R1Gze97qvGeJv5o3nhtNuvCAFqcuHZVC14JxQMLALg2wyPF68X/CP6vUu
         EBMTPaudBc4bafJ8bJEkZgHCHIICpI9ZRYujIHcMxcm9EPlK+xTwhHDELRK8hwRPz1CC
         JdtoPMWBl6NY3if9ZiV2O9NuvAJdeht/PezOU3kJPmbul8jRATFI/aJfA4eaUu7SisJr
         FL8A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20210112;
        h=to:subject:message-id:date:from:mime-version:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=TJRpkbHmfqiYQcSzQM9QyAcKyxwfgZJL1vLIP4WWyzY=;
        b=Xpo6Y73U27SLGh/HdXMGsR4X+ieN29ZLuTsnzxhavjS0nXbm8HuTIcZr4cni14HL7h
         qWXZLePK0vYJUHMHb2R57WgKNWJnBFBH9lmiJSf35OusIK2Z5iSk6BmmHVjl8niG9EmD
         XOL6EqVwmTl2BS9V80osHuJ7wIXzcAoq4Y+yZnVxPZogv2FjJ2tET9I9wQPVxM4ugXS3
         9KKQgBoFPHUfergCHZxWt5mESf1Ie7VLsH1nztjHRkyipCAaZ3rvb6aHz3TogId5QuaS
         yfOgSZQkCmStFywDTgxNuYwmYuOl+LBllaaB60bulStuwNKfkXU+vOAp9M8XcyTVhngV
         xGcw==
X-Gm-Message-State: ANoB5plygnE1J5uqPqvPqvpUDDb3uZ/3D5Q4+2HkJz9l2WUbBA1VD+OM
    48tFT8K/KxTy/bIun6chTilzwv3waaMeJ5EOu4SyvL3C
X-Google-Smtp-Source: AA0mqf6T7Vhk2yyHuKIYdn3h79y5dlZlN2Ix0VIGDvfU1s3z9grZ7sF2CkltwXmtFE8dsR3mTX53KHhoFnxtStqiZSs=
X-Received: by 2002:a17:906:f14:b0:7c1:4e5d:5543 with SMTP id
 z20-20020a1709060f1400b007c14e5d5543mr2799821eji.654.1671111399150; Thu, 15
 Dec 2030 05:36:39 -0800 (PST)
List-Unsubscribe: <https://rdir-agn.freenet.de/uq.html?uid=5ZQLJGH67TVWNMOX1LEGP4PK7PH1CI>,<mailto:[email protected]?subject=unsubscribe:5ZQLJGH67TVWNMOX1LEGP4PK7PH1CI>
X-tdResult: [email protected]
MIME-Version: 1.0
From: SAMS CLUB Stores<[email protected]>
Date: Thu, 15 Dec 2030 14:36:30 +0100
Message-ID: <q1RHyAoOuu2eraF=2mdqDgli8XJ5uM9dQNV6ANEdZER-DpL8i13n@mail.gmail.com>
Subject: Surprise in your inbox (for Shoppers Only)
To: me <[email protected]>

답변1

완전히 Postfix 구성 내에 있습니다.

이메일 제출을 별도의 SMTP 인스턴스로 구성한 경우~해야 한다, 당신은 사용할 수 있습니다header_checks. 이를 위해서는 Postfix가 필요합니다.PCRE 지원설치됩니다.

포트 25에서 실행되는 인스턴스에만 이를 원하므로 다음을 입력해야 합니다 master.cf.

smtp  inet  n  -  y  -  -  smtpd
 -o header_checks=pcre:/etc/postfix/access/header_checks

example.com그리고 헤더 에서 메시지를 거부하기 위한 PCRE 맵(해당 파일에 대한)은 다음과 같습니다 From.

/^From: .*@example\.com/  REJECT  You are not me; example.com in From header.

그러나 이메일 전달, 메일링 목록 등을 고려하면 이는 너무 엄격할 수 있습니다. 따라서 아래의 더 나은 대안을 사용하는 것이 좋습니다.

DMARC 및 DKIM 구현

더 좋고 더 표준적인 방법은 도메인과 수신 메일 모두에 대해 DMARC, DKIM 및 SPF를 구현하는 것입니다. 이렇게 하면 허용한 메일 인프라(SPF 정책 또는 도메인 DNS에 있는 DKIM 키로 서명)에서 보낸 메일이 SMTP 서버에 도착할 수 있습니다.

  1. OpenDKIM 밀터를 사용하여 DKIM 서명을 확인하세요.
  2. postfix-policyd-spf-python을 사용하여 SPF를 확인하세요.
    check_policy_serviceunix:private/policy-spf
  3. OpenDMARC 밀터를 사용하여 DMARC 정책을 확인하세요.
  4. OpenDKIM 밀터로 메시지에 서명하세요.
  5. ~all(또는 )을 사용하여 SPF 정책을 게시합니다 -all.
  6. 를 사용하여 DMARC 정책을 게시합니다 p=reject.

관련 정보