【Mail Server 系列文:第 20 篇】
在前面 19 篇文章中,我們已經完成:
- Postfix / Dovecot 的建置
- 反垃圾郵件、病毒防護
- SQL Bayes、TxRep
- Amavis 流程
- Piler 郵件稽核
- Manticore 中文搜尋
- Webmail + HTTPS 反向代理
- 日常維運 / 效能監控
接下來要進入企業郵件系統最重要的一環:
郵件系統資安強化(Mail Security Hardening)
企業郵件最大的風險來源包括:
- 釣魚 (Phishing)
- 偽造寄件者 (Sender Spoofing)
- 中間人攻擊 (MITM)
- 加密不當
- 伺服器被濫發 (Spam)
- DNS 偽造
本篇將介紹郵件界最重要的 6 大保護機制:
✔ TLS(加密傳輸)
✔ SPF(寄件來源驗證)
✔ DKIM(郵件簽章)
✔ DMARC(偽造防護、政策控制)
✔ MTA-STS(SMTP 加密強制)
✔ DANE(DNSSEC 保護 TLS)
這些強化後,你的郵件系統可達到:
- 無法被偽造身分寄信
- 郵件傳輸強制加密
- 避免 MITM 攻擊
- 避免憑證被替換
- 提升 Gmail / Outlook / Yahoo 誠信分數
- 降低進 Spam 的比例
1. TLS:郵件傳輸加密(基本但必要)
SMTP 共有三種加密方式:
| Port | 協定 | 功能 |
|---|---|---|
| 25 | STARTTLS | 與外部 Mail 互聯,一般不強制 |
| 587 | Submission | 用戶端寄信,必須強制 |
| 465 | SMTPS | 全程 TLS |
我們採用:
- Postfix:
- 25 port → may(可用則加密)
- 587 port → encrypt(強制加密)
- 465 port → TLS wrapper
Let’s Encrypt 憑證實際掛載:
smtpd_tls_chain_files = \
/etc/letsencrypt/live/it.demo.tw/privkey.pem, \
/etc/letsencrypt/live/it.demo.tw/fullchain.pem
確保弱加密完全禁用:
smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
若你的 SSL Labs 測試能到達 A+,代表設定無誤。
2. SPF:寄件來源驗證(Sender Policy Framework)
SPF 能避免:
- 垃圾郵件偽造
- 假冒公司寄件
典型 SPF 設定:
v=spf1 mx a ip4:YOUR.MAIL.SERVER.IP -all
若你同時有:
- G Suite
- SendGrid
- Mailgun
可寫:
v=spf1 mx include:_spf.google.com include:sendgrid.net -all
請記住:
SPF 必須搭配 DMARC 才能有效防偽造。
3. DKIM:郵件內容簽章(DomainKeys Identified Mail)
DKIM 用於保證:
- 郵件內容未被竄改
- 寄件網域可信
Amavis 已自動為你產生 DKIM:
/var/lib/amavis/dkim/DOMAIN.pem
DNS TXT 記錄例子:
default._domainkey TXT "v=DKIM1; k=rsa; p=xxxxxxxxxxxxxxxx"
可用:
amavisd-new showkeys
查看 DKIM 公鑰內容。
4. DMARC:偽造郵件的終極防線
DMARC 使用 SPF + DKIM 共同判斷郵件是否可信。
建議使用如下設定:
_dmarc TXT "
v=DMARC1;
p=quarantine;
sp=reject;
rua=mailto:postmaster@it.demo.tw;
ruf=mailto:postmaster@it.demo.tw;
fo=1;
adkim=s;
aspf=s;
"
常見策略:
| p= | 效果 |
|---|---|
| none | 觀察模式(不擋信) |
| quarantine | 可疑郵件進 Spam |
| reject | 嚴格拒絕伪造信 |
企業通常建議使用:
✔ p=quarantine(先觀察)
然後再升級到:
✔ p=reject(最強防護)
5. MTA-STS:SMTP 加密強制政策(Gmail 強烈建議)
MTA-STS 確保:
- 與外部 MTA 的 TLS 傳輸是 強制
- 不會被中間人攻擊
- 不會被降級到明文 SMTP
需要三項設定:
(1) DNS TXT
_mta-sts TXT "v=STSv1; id=20250101"
(2) HTTPS 服務
在 https://it.demo.tw/.well-known/mta-sts.txt 提供檔案:
version: STSv1
mode: enforce
mx: it.demo.tw
max_age: 86400
(3) 續期
每次更新政策需更新 id=。
6. DANE:基於 DNSSEC 的 TLS 保護
DANE 是目前最強的郵件傳輸加密方式。
需求:
✔ DNSSEC
✔ TLSA record
✔ MTA 支援(Postfix 支援)
DNS 記錄範例:
_25._tcp.it.demo.tw TLSA 3 1 1 <cert-hash>
對大企業來說,DANE 能避免:
- 憑證被中間人假簽
- 受信任 CA 遭竄改
如果你使用 Cloudflare/PowerDNS,DANE 很容易建立。
7. 現代企業郵件系統「資安等級」標準
| 安全機制 | 企業必備? | 狀態 |
|---|---|---|
| SPF | ✔ 必備 | 已完成 |
| DKIM | ✔ 必備 | 已完成 |
| DMARC | ✔ 必備 | 已完成 |
| TLS | ✔ 必備 | A+ 等級 |
| MTA-STS | ✔ 強烈建議 | 可新增 |
| DANE | 大型企業建議 | DNSSEC 後即可 |
你目前的系統已經涵蓋所有必要項目,只需要:
⭐ 補完 MTA-STS
⭐(若 DNS 管理平台支援)再部署 DANE
就能達到業界最高等級的郵件安全性。
8. 本篇總結
本篇完成郵件資安強化六大要素:
- TLS:傳輸加密
- SPF:來源驗證
- DKIM:內容簽章
- DMARC:策略防偽造
- MTA-STS:強制加密策略
- DANE:DNSSEC 保護 TLS
這些機制可讓你的郵件系統達到:
✔ 無法被偽造
✔ 無法被 MITM 攔截
✔ 各大 Mail Provider 信任度提升
✔ 信件進 Spam 的比例大幅下降
✔ 企業資安審查標準全面符合
你的郵件服務正式達到 國際級企業框架。
1 thought on “郵件系統的全面資安強化:TLS、SPF、DKIM、DMARC、MTA-STS、DANE”
Comments are closed.