mail 架設注意事項!

其實 email 它是一個"系統", 不只是單純的伺服器. 它有困難度, 對於新手來說, 是不知道架設一個 email 系統要小心的點在那邊. 下面我釐清一下要注意的地方
.
1. SMTP port 25, 是 server to server 的部分, 這邊最好的防護就是使用 RBL 擋住 spam email server 的 IP (SpamAssassin + TCPServer/IPtable)
.
2. Submission Port 587, 這邊是 email client to server 寄信, 需要使用 TLS 作為 smtp-auth 認證的加密, 這邊就需要建立自己的 PKI Cert 來做 TLS 加密了. 再來防止 brute force 攻擊, 就要搭配 Fail2ban. 需要 white list 自己 router ip 以及其它分公司的 ip 避免鎖到自己。
.
3. 如果有 webmail 的部分, 那麼要建立 HTTPS 的 secure certificate. 如果使用 IMAPS, 也可以使用同一個 certificate.
.
4. 避免自己的 email 淪為 RBL 上面的黑名單, 需要建立 DKIM 放到 DNS 的 record 中. 如果能夠 reverse ip 如 1.1.1.1 -> mail.mydomain.com 會很好, 比較容易進白名單, 如果沒有的話要隨時 monitor RBL 是否有自己的 mail server domain/ip
.
5. 盡量不要使用 .hk .tw .cn .jp 的 domain, 因為有些 spam filter, 或是一些 custom RBL, 會直接封掉這些 tld. 盡量把 DNS 的服務放在 Domain Registrar 那邊, 不過如果使用非常多 subdomian 的話, 再考慮把 dns 服務拿回自己建立, 因為很多 domain registrar 會限制使用者最多可以有幾個 dns record.
.
6. SMTP/Submission 收到的 email, 直接先 pipe 給 clamav 後, 確認沒有病毒才放到 maildir 或是寄出. 每一個小時自動更新 clamav 的 database.
.
7. Webmail 的 template 最好買有服務的 source code, 會定期更新, 使用因為有太多時候有 webmail 被 hack 透過 sql-injection 而控制了整個 mail server.
.
8. 盡量使用 IMAPS, 方便集中備份, storage 的檔案系統最好是支援壓縮, 以及快照. 這樣子可以追溯歷史記錄, 避免離職員工或是將要離職員工刪除 email
.
9. 所有的 mail server 都會使用到 database, 不管是 mysql 或是 mariadb, 要設定好其固定定期備份模式, 同時建立好 password policy, 八碼 含大小寫+數字+特殊符號.
.
10. 防止內部 IT 人員閱讀公司高階主管的 email 或是被外部人員釣魚假裝高階主管的 email 指令, 建議使用 RSA 2048 bit 的 S.MIME (X509) PKI 模式加密以及簽署 email.
.
11. 開 watchdog 確認 email 收發服務正常, 若有問題時, 第一時間 script 自動重開服務.
.
12. log reporting (graylog) 定期檢查伺服器是否有被入侵的跡象.
.
13. 使用 Filelink 模式傳送大的檔案附件 (需搭配 email client). 這部分有所謂的 DL 服務, 也可以自己架設 WebDAV 來做.
.
14. 使用 Open-Xchange 或是 Zimbra Email 這一類型的 email server, 它可以分成很多個 component, 如 message storage node, database node, smtp node 或是 mail proxy node 等模式, 把 email 服務的 loading 分散到各分公司的小 mail 的伺服器上, 避免單點網路頻寬飽和, 造成每天早上剛上班時, email 大塞車 (特別是禮拜一早上或是長假過後)

本篇發表於 未分類 並標籤為 。將永久鍊結加入書籤。

發表迴響

您的電子郵件位址並不會被公開。 必要欄位標記為 *

*

您可以使用這些 HTML 標籤與屬性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>