防止垃圾郵件
概要: 垃圾郵件會分散您的注意力,並可能使您成為騙子、釣魚者和其他惡意行為者的受害者。
In this topic, you will learn how to protect against spam using the tools that come with Plesk.
The topic provides a short description of each tool’s function and clear instructions for using it. It does not provide information about configuring the tools for maximum effectiveness, because doing so requires specialist knowledge.
概要
Plesk提供了許多旨在防止垃圾郵件的工具:
- SpamAssassin 垃圾郵件篩檢程式
- DNS blackhole lists
- (Plesk for Linux) SPF, DKIM, and DMARC
- (Plesk for Linux) Greylisting
- (Plesk for Linux) Mail server black and white lists
不同的工具使用不同的方法來檢測垃圾郵件,有不同的缺點,且消耗的伺服器資源數量也不同。您可以同時使用多個工具,這使得每個垃圾郵件更有可能被檢測到,但也增加了資源消耗和誤報的可能性。
在選擇使用哪個工具時,請考慮您的方案:
- 您正在接收來自一個或多個指定電子郵寄地址和/或域的垃圾郵件。
- 您正在接收來自不同電子郵寄地址和/或域的垃圾郵件。
- 您想要確保來自指定電子郵寄地址和/或域的郵件從不被標記為垃圾郵件。
- 您想要確保從伺服器發送的郵件不被視為垃圾郵件,或者您的域名不能被欺騙。
根據您的方案,一些工具可能比其他工具更有用。下面將更詳細地描述在這些方案中可以使用的工具。
如果本主題中描述的每個工具都已啟用,則它們將按照下圖所示的順序生效。此處綠色箭頭表示檢查通過,紅色箭頭表示檢查失敗。
Plesk for Linux
- 根據郵件伺服器的黑名單檢查寄件者的域名。如果域名在黑名單裡,則該消息將被拒絕。
- 根據郵件伺服器白名單檢查寄件者的IP位址。如果IP 位址在白名單裡,則該消息將跳過DNSBL檢查。
- 如果寄件者的IP位址不在郵件伺服器白名單上,則會根據已配置的DNSBL名單進行檢查。如果在該名單裡,則該消息將被拒絕。
- 如果郵件是第一次提交交付的,灰名單會暫時拒絕它。
- 如果郵件被重新提交以供交付,它將接受SPF檢查、DKIM檢查和DMARC檢查。
- 如果郵件已經通過了之前的所有檢查,它將被SpamAssassin 掃描(除非發送者的電子郵寄地址或域名在SpamAssassin 的白名單上,或者郵件的大小超過了SpamAssassin 可以檢查的最大大小)。
之後,郵件將被傳遞到收件人的郵箱。
Plesk for Windows
- 根據已配置的DNSBL名單檢查寄件者的IP位址。如果IP位址就在名單裡,則該消息將被拒絕。
- 資訊會被SpamAssassin 掃描(除非發送者的電子郵寄地址或域名在SpamAssassin 的白名單上,或者郵件的大小超過了SpamAssassin 可以檢查的最大大小)。
之後,郵件將被傳遞到收件人的郵箱。
防止來自指定電子郵寄地址或域的垃圾郵件
如果您沒有收到來自一個或多個指定電子郵寄地址和/或域的任何合法郵件,只有垃圾郵件,最簡單的方法就是阻止所有來自該位址或域的郵件。
(Plesk for Linux) Blocking all mail from a specific domain:
- 登錄到 Plesk。
- 進入 工具與設定,然後點按 郵件伺服器設定(在 「郵件」 下)。
- 轉到 「黑名單」 選項卡。
- 按一下 添加域名 (如果列表中已經包含一個或多個域名,則按一下
圖示)。
- 指定域名(例如 example.com),然後按一下 確定。
來自指定域的所有郵件現在都將被郵件伺服器拒絕。這包括垃圾郵件和合法的郵件。
(Plesk for Linux) Marking all mail from a specific email address or domain as spam:
- 登錄到 Plesk。
- 進入 工具與設定,然後點按 垃圾郵件篩檢程式(在 「郵件」 下)。
- 確保選中“啟用伺服器範圍內的SpamAssassin垃圾郵件過濾”核取方塊。
- 轉到 「黑名單」 選項卡。
- 按一下**添加地址**,指定電子郵寄地址(例如,“example@example.com”或“*@example.com”將來自example.com的所有郵件標記為垃圾郵件),然後按一下**保存**。
將會對已啟用 SpamAssassin 的所有郵件帳戶執行該操作:所有來自指定電子郵寄地址或域的郵件現在將被SpamAssassin標記為垃圾郵件。這包括垃圾郵件和合法的郵件。一旦一條郵件被SpamAssassin標記為垃圾郵件,針對該郵件採取的具體行動將取決於SpamAssassin的設定(簡單地將郵件標記為垃圾郵件,將其移動到“垃圾郵件”資料夾,或將其刪除)。
(Plesk for Windows) Marking all mail from a specific email address or domain as spam:
- 登錄到 Plesk。
- 進入 工具與設定,然後點按 垃圾郵件篩檢程式(在 「郵件」 下)。
- 確保選中“啟用伺服器範圍內的SpamAssassin垃圾郵件過濾”核取方塊。
- 轉到 「黑名單」 選項卡。
- 按一下 添加域名 (如果列表中已經包含一個或多個電子郵寄地址,則使用
圖示),指定電子郵寄地址(例如,」example@example.com」或」*@example.com」 將來自example.com的所有郵件標記為垃圾郵件)。
- 指定如何處理清單中包含的電子郵寄地址中的郵件(標記為垃圾郵件或刪除),然後按一下 確定。
將會對已啟用 SpamAssassin 的所有郵件帳戶執行該操作:所有來自指定電子郵寄地址或域的郵件現在將被標記為垃圾郵件或刪除。這包括垃圾郵件和合法的郵件。
防止來自所有來源的垃圾郵件
如果您收到來自各種電子郵寄地址和/或域的垃圾郵件,您可以使用許多工具來防止。這些工具都可以協同工作,因為不同的工具使用不同的方法來識別垃圾郵件。
(Plesk for Linux) Blocking Mail With Forged Sender Address
垃圾郵件通常會偽裝,好似是從合法的企業或組織發送的。我們有理由假設,我們有理由假設,任何不是來自它假裝來自的寄件者的郵件都是不合法的。SPF(寄件者策略框架)、DKIM(域金鑰識別郵件)和DMARC(基於域的消息身份驗證、報告和一致性)是用於識別此類郵件的三種機制。為了獲得最佳結果,建議將這三種方法串聯使用。
- SPF依賴于域名所有者來創建一個TXT DNS記錄,其中列出了被授權發送郵件的所有域名和IP地址。內送郵件伺服器會驗證寄件者的IP位址是否對應於其中一個授權域的A或AAAA記錄,並/或在TXT記錄中列出的那些域中查找寄件者的IP位址。如果沒有匹配項,則SPF檢查失敗。
- DKIM依賴于域所有者來配置其郵件伺服器來簽名所有發送的郵件。“寄件者”欄位必須簽名,消息的其他部分也可以簽名(例如,在發送過程中檢測對消息內容的篡改)。該機制還依賴于所有者來創建一個包含相應公開金鑰的TXT DNS記錄。內送郵件伺服器將根據公開金鑰驗證簽名。如果驗證不成功,則DKIM檢查失敗。
- DMARC依賴域所有者創建一個TXT DNS記錄,指定內送郵件伺服器在SPF和/或DKIM檢查失敗時應該採取的操作。
因此,SPF和DKIM 會被用來識別非法郵件,DMARC 會建議如何處置。
瞭解更多關於在Plesk中使用DKIM、SPF和DMARC的資訊。
這種方法的好處是:
- 該方式有效地過濾掉了具有偽造寄件者位址的郵件。
此方法的缺點是:
- 該方式依賴于域所有者來正確地配置其郵件伺服器和DNS記錄,並指定其DMARC策略。
- 這樣可能會干擾合法郵件的交付(例如,當郵件通過未進行配置正確重寫寄件者位址的郵件伺服器進行轉發時)。
- 這無法阻止從配置正確的郵件伺服器(例如,流行的免費電子郵件提供商,如Gmail,或Outlook)發送垃圾郵件。
使用SPF檢查阻止垃圾郵件:
- 登錄到 Plesk。
- 進入 工具與設定,然後點按 郵件伺服器設定(在 「郵件」 下)。
- 選中 「啟用SPF垃圾郵件保護以檢查接收郵件」 核取方塊,然後按一下 確定。
所有接收郵件現在都將根據本地SPF策略、本地SPF猜測規則和電子郵件來自的域的SPF策略進行SPF檢查。對於每一個收到的電子郵件,Plesk郵件伺服器將根據檢查結果進行拒絕或添加一個SPF頭。
使用DKIM檢查阻止垃圾郵件:
- 登錄到 Plesk。
- 進入 工具與設定,然後點按 郵件伺服器設定(在 「郵件」 下)。
- 在」DKIM垃圾郵件保護」下,選中」驗證接收郵件」核取方塊,然後按一下 確定。
所有接收郵件現在都將接受DKIM檢查。Plesk郵件伺服器將為每個接收電子郵件添加一個DKIM標頭。請注意,即使DKIM檢查失敗了,這本身也不會阻止電子郵件的發送。要採取進一步的行動,必須在Plesk伺服器上啟用DMARC檢查,並且電子郵件來自的域必須發佈其DMARC策略。
使用DMARC策略阻止垃圾郵件:
- 登錄到 Plesk。
- 進入 工具與設定,然後點按 郵件伺服器設定(在 「郵件」 下)。
- 如上所述同時啟用SPF和DKIM檢查。
- 選中“啟用DMARC以檢查接收郵件”核取方塊,然後按一下 確定。
所有接收郵件現在都將接受SPF和DKIM檢查,每封電子郵件的結果將取決於它來源的域名已發佈的DMARC策略。
(Plesk for Linux) Rejecting Mail With Forged Sender Address
By default, when an incoming email fails the DMARC check, and the DMARC policy advises that the email should not be accepted for delivery, it is dropped silently. That is, the Plesk mail server replies to the client with a 2yz response code, and then discards the email without trying to deliver it to the recipient(s). You can configure the Plesk mail server to explicitly reject emails that fail the DMARC check with a 5yz response code.
Rejecting emails that fail the DMARC check:
-
Log in to the Plesk server via SSH.
-
運行以下命令:
plesk bin settings -s mail_dmarc_reject_at_smtp=true && plesk repair mail -y
The Plesk mail server will now reject emails that fail the DMARC check with a 5yz response code.
使用 DNS 黑名單阻止垃圾郵件 (DNSBL)
許多組織正在維護已知來源的垃圾郵件的IP地址清單。您可以將Plesk配置為使用`一個或多個此類列表 <https://www.dnsbl.info/dnsbl-list.php>`__ 來阻止來自這些IP位址的所有郵件。
備註: Plesk 不會對您應該使用哪個DNSBL列表提出任何建議。
這種方法的好處是:
- 您可以使用已知垃圾郵件發送者的現成列表。
此方法的缺點是:
- DNSBL列表是手動更新的。一旦伺服器開始發送垃圾郵件,在其IP位址被列入之前可能需要一段時間。
- DNSBL列表對同時作為合法郵件和垃圾郵件來源的郵件伺服器沒有例外。使用DNSBL列表可能會導致合法的郵件無法被發送。
- 使用DNSBL列表,您則將接受或拒絕郵件的控制權移交給了協力廠商。
使用DNSBL列表阻止垃圾郵件:
- 登錄到 Plesk。
- 進入 工具與設定,然後點按 郵件伺服器設定(在 「郵件」 下)。
- 選擇 啟用基於DNS blackhole lists 的垃圾郵件防護功能 核取方塊。
- 指定所需的DNSBL清單的DNS區域(例如 “dnsbl.example.com”),然後按一下 確定。
來自已配置黑名單中包含的所有伺服器的所有接收郵件現在將被郵件伺服器拒絕。這包括垃圾郵件和合法的郵件。
(Plesk for Linux) Blocking Spam Using Greylisting
當啟用灰色列表時,Plesk郵件伺服器將“暫時拒絕”所有j接收郵件,而不試圖區分合法郵件和垃圾郵件。合法的、正確配置的郵件伺服器將在一段時間後再次嘗試發送暫時拒絕的郵件(在第二次嘗試發送時,郵件將被Plesk郵件伺服器接受)。惡意的或被駭客入侵的PHP腳本發送的垃圾郵件將不會實現。
這種方法的好處是:
- 灰色名單可以過濾一些接收的垃圾郵件,減少阻止任何合法郵件的可能性。
此方法的缺點是:
- 使用灰名單意味著所有合法郵件都會延遲後發送。延遲的時長是在源郵件伺服器端進行配置的,不能在Plesk中進行管理。若電子郵件包含時間敏感資訊,可能不利,也可能會引發電子郵件是否會被發送的擔憂。
- 在某些情況下,灰名單可能會導致合法郵件發送失敗(例如,當從未配置在臨時拒絕後重新嘗試交付的郵件伺服器發送合法郵件時)。
- 灰名單不會阻止從配置正確的郵件伺服器(例如,流行的免費電子郵件提供商,如Gmail,或Outlook)發送垃圾郵件。
使用灰名單阻止垃圾郵件:
- 登錄到 Plesk。
- 進入 工具與設定,然後點按 垃圾郵件篩檢程式(在 「郵件」 下)。
- 選擇 「啟用伺服器級灰名單垃圾郵件過濾功能」核取方塊,然後點按 確定。
所有接收消息,包括合法的和垃圾郵件,第一次抵達時將被Plesk郵件伺服器暫時拒絕。
使用 SpamAssassin 阻止郵件
SpamAssassin通過大量預先配置的篩檢程式(例如,郵件是否包含與垃圾郵件相關的特定單詞)來識別垃圾郵件。每次觸發一個單獨的篩檢程式時,該消息的SpamAssassin分數就會增加。如果分數達到或超過某一閾值,則該郵件將被標記為垃圾郵件或被刪除。
瞭解更多關於如何在Plesk中使用SpamAssassin的資訊。
這種方法的好處是:
- SpamAssassin並不依賴于協力廠商的行為。一個垃圾郵件假裝來自一個沒有SPF/DMARC策略的域,並且來自一個沒有在任何DNSBL列表中出現的伺服器,仍然可能被識別為垃圾郵件。
- SpamAssassin是高度可配置的,儘管微調需要專業知識。
此方法的缺點是:
- SpamAssassin檢查是資源密集型的。如果您收到大量的郵件,為每封郵件運行SpamAssassin檢查可能會消耗大量伺服器資源,特別是RAM記憶體。
- SpamAssassin通常被配置為只檢查特定大小的電子郵件。雖然您可以`增加 SpamAssassin要檢查的電子郵件的最大大小 <https://docs.plesk.com/en-US/obsidian/administrator-guide/mail/antispam-tools/spamassassin-spam-filter.59432/#plesk-for-linux-defining-the-maximum-mail-size-for-spamassassin>`__,但掃描大量電子郵件需要時間,並消耗大量的記憶體。
- SpamAssassin 不是絕對正確的。假陽性和假陰性都是可能的。
使用 SpamAssassin 阻止郵件:
- 登錄到 Plesk。
- 進入 工具與設定,然後點按 垃圾郵件篩檢程式(在 「郵件」 下)。
- 選擇“啟用伺服器範圍內的 SpamAssassin垃圾郵件過濾”核取方塊(在 Plesk for Windows 中 “啟用伺服器範圍內的SpamAssassin 垃圾郵件過濾”)。
- (可選)要能夠為個別郵件帳戶啟用、禁用和配置垃圾郵件刺客,請選中“將個別設定應用於垃圾郵件過濾”核取方塊。
- (可選)要使篩檢程式更加嚴格,請降低“郵件必須接收認定為垃圾郵件的分數”欄位的值。如果您想使篩檢程式不那麼嚴格,那就增加值。使篩檢程式更嚴格,既降低了垃圾郵件通過的概率,也增加了誤報的概率(當使篩檢程式不那麼嚴格時,反之亦然)。預設的“7.0”值在大多數情況下是最優的。
- (Optional, Plesk for Linux) To reduce the amount of RAM SpamAssassin will consume on average, decrease the value of the 「The maximum number of worker spamd processes to run」 field. This may increase the time incoming mail sits in the queue waiting to be scanned by SpamAssassin before delivery. 「One」 is the lowest possible value, 「five」 is the highest.
- 點按 確定 。
所有一定大小(默認為256kB)的郵件將被掃描。懷疑為垃圾郵件的郵件將會修改其主題行(預設情況下,將添加文本」***SPAM***」 )。
防止接收郵件被標記為垃圾郵件
用於打擊垃圾郵件的工具並非絕對正確。有時,合法的郵件可能會被拒絕或標記為垃圾郵件。如果您經常面臨來自某些電子郵寄地址、域、IP地址或子網的合法郵件被拒絕或標記為垃圾郵件的情況,您可以微調您的工具,以減少發生此類事件的可能性。
備註: 如果在伺服器上啟用了SPF、DKIM和/或DMARC檢查,則無法針對各個域或電子郵寄地址有選擇性地禁用它們。這同樣適用於灰名單。
白名單IP地址和子網
您可以將單個IP位址或整個子網添加到郵件伺服器白名單中。如下:
- 來自白名單IP地址的郵件總是會被接受以發送。即使可以在一個或多個DNSBL列表中找到該IP位址,此類郵件也不會被拒絕。
- 暫時被灰名單拒絕或者被SpamAssassin標記為垃圾郵件的來自白名單IP位址的郵件仍然有可能基於SPF/DKIM/DMARC檢查的結果被拒絕。
(Plesk for Linux) Adding IP addresses to the mail server white list:
- 登錄到 Plesk。
- 進入 工具與設定,然後點按 郵件伺服器設定(在 「郵件」 下)。
- 轉到 「白名單」 選項卡。
- Click Add Network (or the
icon if there are already one or more IP addresses included in the list).
- 指定IP位址或IP位址範圍,然後按一下 確定。
來自已添加的IP位址的郵件將不再被拒絕,除非寄件者的域已被添加到郵件伺服器的黑名單中,並且將跳過DNSBL檢查。但該郵件仍然有可能被其他工具拒絕或標記為垃圾郵件。
白名單域和電子郵寄地址
即使您已將垃圾郵寄地址添加到郵件伺服器的白名單中,電子郵件仍然可能被SpamAssassin標記為垃圾郵件。要阻止SpamAssassin掃描指定電子郵寄地址或域名(電子郵寄地址、域名和IP地址)的郵件,請將其添加到SpamAssassin白名單中。
(Plesk for Linux) Adding email addresses and domains to the SpamAssassin white list:
- 登錄到 Plesk。
- 進入 工具與設定,然後點按 垃圾郵件篩檢程式(在 「郵件」 下)。
- 轉到 「白名單」 選項卡。
- Click Add Address.
- Upload a file containing the list of email addresses you want to whitelist. Alternatively, you can select the 「From a list」 radio button and enter one or more email addresses (for example, 「example@example.com」 or 「*@example.com」), and then click Save.
來自添加的電子郵寄地址和域名的郵件將不再被SpamAssassin掃描。
(Plesk for Windows) Adding email addresses and domains to the SpamAssassin white list:
- 登錄到 Plesk。
- 進入 工具與設定,然後點按 垃圾郵件篩檢程式(在 「郵件」 下)。
- 轉到 「白名單」 選項卡。
- Click Add Network (or the
icon if there are already one or more IP addresses included in the list).
- 指定指定 IP 位址、IP 位址範圍和電子郵寄地址(例如,mail@example.com)或域(例如,*@example.com),然後按一下 確定。
來自添加的 IP 地址、電子郵寄地址和域名的郵件將不再被SpamAssassin掃描。
防止發送郵件被標記為垃圾郵件
您可以使用SPF和DKIM來減少發送郵件被收件人拒絕或被視為垃圾郵件的可能性。這還可以保護您的域名不被他人欺騙。這兩種工具都可以開箱即用,而不需要進行進一步的配置。
預設會配置發送郵件的SPF。這可以防止垃圾郵件發送者欺騙Plesk伺服器上的任何域名,並減少內送郵件伺服器將接收郵件視為垃圾郵件的可能性(前提是內送郵件伺服器配置為運行SPF檢查)。
相應的TXT DNS記錄包含在Plesk DNS區域範本中,因此也包含於在Plesk中創建的每個域的DNS區域中。預設的SPF記錄具有以下值:
v=spf1 +a +mx +a:<hostname> -all
該工具會指示收件人郵件伺服器拒絕來自在Plesk中託管的域的接收郵件,除非該郵件來自與該域的A和MX記錄關聯的IP位址,或與Plesk伺服器本身的A記錄關聯。
備註: 您可以對單個域(通過編輯該域的SPF記錄)和伺服器上託管的所有域(通過編輯DNS範本並將更改傳播到所有域)更改此策略。但是,不建議您這樣做,除非您熟悉`SPF記錄語法 <http://www.open-spf.org/SPF_Record_Syntax/>`__。配置錯誤的SPF記錄可能會導致郵件伺服器拒絕來自該域的郵件。
若要為單個域的發送郵件禁用SPF,請刪除該域的SPF記錄。要禁用伺服器上託管的所有域的發送郵件的SPF,請從DNS範本中刪除SPF記錄,並將更改傳播到所有域。
默認會在伺服器上為發送郵件啟用DKIM簽名。還支援在Plesk中具有DNS和郵件主機的新域上啟用該簽名功能。
相應的TXT DNS記錄包含在Plesk DNS區域範本中,因此也包含在在Plesk中創建的每個域的DNS區域中。所有從屬於相關域的郵件帳戶發送的郵件都會使用在相應的TXT DNS記錄中找到的DKIM私密金鑰進行簽名。這降低了內送郵件伺服器將此類郵件視為垃圾郵件的可能性(前提是內送郵件伺服器已被配置為運行DKIM檢查)。
備註: 預設情況下,使用外部DNS伺服器的域無法啟用DKIM。對於這些域,您需要手動啟用 DKIM。