字體:  

在CentOS 6.x 設定postfix 的SMTP 支援TLS 加密傳輸

dyson6 發表於: 2016-11-06 00:54 來源: ADJ網路控股集團


postfix 在之前都是採用未加密的形式,但 SSL 漸漸已經被重視而且列為標準需求,在此紀錄將既有的 Mail Server 升級為 SSL 加密郵件伺服器

Step.1 產生 SMTP 憑證
產生 certificate files for TLS

# cd /etc/postfix
# openssl req -new -x509 -nodes -out smtpd.pem -keyout smtpd.pem -days 3650
照著提示輸入資料即可

編輯 /etc/postfix/main.cf 加入下列

QUOTE:


# TLS
smtp_use_tls = yes
smtpd_use_tls = yes
smtpd_tls_auth_only = yes
smtp_tls_note_starttls_offer = yes
smtpd_tls_key_file = /etc/postfix/smtpd.pem
smtpd_tls_cert_file = /etc/postfix/smtpd.pem
smtpd_tls_CAfile = /etc/postfix/smtpd.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
tls_random_source = dev:/dev/urandom

說明:
loglevel = 1 會紀錄 tls log , 設定 2 以上可以看到更詳細的 debug log
CAfile 為要提供 CA Server 的憑證,這邊引用 cert file 的路徑
smtpd_tls_auth_only 強制 SASL 走 TLS 協定將所有資訊加密

重新啟動 postfix
# service postfix restart

測試是否生效 :
telnet localhost 25

Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
220 mail.adj.com.tw ESMTP Postfix
ehlo localhost
250-mail.adj.com.tw
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS     => 支援TLS加密了
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN

可以看到 mail server 提供 STARTTLS 服務,而且因為強制 SASL TLS 的關係
所以 AUTH PLAIN LOGIN 及 AUTH=PLAIN LOGIN 已經不見囉!!

參考資料:
http://blog.xuite.net/magic20095/wretch/111940549-%E8%A8%AD%E5%AE%9APOP3%E5%8F%8ASMTP+%E6%94%AF%E6%8F%B4TLS
逢甲住宿推薦逢甲住宿台中旅店逢甲日租台中住宿台中逢甲民宿台中民宿台中一中住宿台中便宜住宿台中青年旅館