如何疑難排解 EC2 Windows 執行個體上的電子郵件伺服器問題?

2 分的閱讀內容
0

我無法透過簡易郵件傳輸通訊協定 (SMTP) 從 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體傳送電子郵件。

簡短說明

當您使用 SMTP 從執行個體傳送電子郵件時,可能會發生幾種常見問題:

  • 您的安全群組或網路存取控制清單 (network ACL) 會封鎖連接埠 25、587 或 465 上的 SMTP 流量。
    **注意:**依預設,所有 Amazon EC2 執行個體和 AWS Lambda 函數都會封鎖連接埠 25 (SMTP) 上的傳出流量。若要在連接埠 25 上傳送傳出流量,請要求移除此限制。如需詳細資訊,請參閱如何從 Amazon EC2 執行個體或 AWS Lambda 函數移除對連接埠 25 的限制?
  • 執行個體的公有 IP 地址會在您停止並啟動執行個體後變更。
  • 您的傳出郵件會標記為垃圾郵件。
  • 電子郵件無法傳送到特定網域。
  • 傳出電子郵件會延遲。
  • 可以接收但無法傳送電子郵件。

解決方法

您的安全群組或網路存取控制清單 (network ACL) 會封鎖連接埠 25、587 或 465 上的 SMTP 流量

  1. 若要確認流量是否遭到封鎖,請使用 Test-NetConnection 或 Telnet 公用程式檢查 SMTP 連接埠的連線。
  2. 如果 SMTP 連接埠的流量遭到封鎖,請確認以下組態是否正確:
    安全群組傳出 (輸出) 規則必須允許流量傳輸至 TCP 連接埠 25、587 或 465 上的 SMTP 伺服器。
    網路存取控制清單 (network ACL) 傳出 (輸出) 規則必須允許流量傳輸至 TCP 連接埠 25、587 或 465 上的 SMTP 伺服器。
    網路存取控制清單 (network ACL) 傳入 (輸入) 規則必須允許從 TCP 連接埠 1024-65535 上的 SMTP 伺服器傳輸流量。
    Windows 執行個體的防火牆和防毒應用程式必須允許流量傳輸至 TCP 連接埠 25、587 或 465 上的 SMTP 伺服器。
    EC2 執行個體必須具備網際網路連線。

執行個體的公有 IP 地址會在您停止並啟動執行個體後變更

系統會自動為您的執行個體指派公有 IP 地址。然而,每當您停止並啟動執行個體時,此地址都會隨之變更。若要避免此情況,請確認已為郵件伺服器執行個體指派彈性 IP 地址

您的傳出郵件會標記為垃圾郵件

若您缺少 DKIM 驗證、SPF 記錄或反向 DNS 記錄集,系統便可能將您的傳出郵件標記為垃圾郵件。最佳做法是設定好這些記錄,避免傳出電子郵件遭標記為垃圾郵件。如需有關反向 DNS 記錄的詳細資訊,請參閱以下資源:

適用於 Amazon EC2 彈性 IP 地址的可設定反向 DNS

如何使用 PTR 記錄為 Amazon Route 53 啟用反向 DNS 功能?

如何疑難排解我在 Route 53 中用於反向 DNS 的 PTR 記錄問題?

電子郵件無法傳送到特定網域

若您無法將電子郵件傳送至特定網域,請按照以下步驟操作:

  • 檢查收件人的網域是否封鎖了您的 IP 地址。
  • 確保您的電子郵件容量沒有過大,導致收件人無法接收。即使您發出的郵件沒有容量限制,收件人仍可能會限制接收郵件的容量。標準電子郵件容量設定為 22 MB。

傳出電子郵件會延遲

如果您的電子郵件會延遲,請按照以下步驟操作:

  1. 檢查延遲的電子郵件是否傳送至特定地址或網域。
  2. 檢查並確認您的電子郵件伺服器組態沒有任何變更。
  3. 檢查伺服器上電子郵件佇列的處理速度是否緩慢,或電子郵件是否準時傳送出伺服器,但較晚傳送至收件人地址。
    如果電子郵件堆疊在您的伺服器佇列中,請確認您的 SMTP 伺服器沒有效能問題。
    如果問題出在收件方,請確認電子郵件容量沒有過大,導致收件人無法接收。即使您發出的郵件沒有容量限制,收件人仍可能會限制接收郵件的容量。標準電子郵件容量設定為 22 MB。
  4. 使用電子郵件標頭分析工具分析郵件標頭以取得診斷資訊。

可以接收但無法傳送電子郵件

當您沒有設定傳出 (SMTP) 伺服器所需的驗證時,就會發生此問題。

AWS 官方
AWS 官方已更新 1 年前