在香港伺服器上搭建一個高效、穩定、安全的郵件伺服器,讓你擺脫對第三方電子郵件服務的依賴,完全掌控自己的郵件資料。本文將詳細介紹搭建過程中的關鍵步驟和設定要點,即使你是第一次嘗試,也能輕鬆上手。

安裝必要元件

一個完整的電子郵件系統離不開以下幾個核心元件:

  1. MTA(Mail Transfer Agent):負責郵件的發送和中轉,我們選擇功能強大的Postfix
  2. MDA(Mail Delivery Agent):負責將郵件投遞到使用者的郵件目錄,這裡使用Postfix自帶的本地投遞功能
  3. IMAP/POP3伺服器:負責為電子郵件用戶端提供收取郵件的介面,我們選擇Dovecot

首先用SSH登入到你的香港伺服器,安裝以上元件:

sudo apt update
sudo apt install postfix postfix-pcre dovecot-imapd dovecot-pop3d

設定Postfix

Postfix的主設定檔是/etc/postfix/main.cf,修改以下關鍵參數:

myhostname = mail.yourdomain.com
mydestination = $myhostname, yourdomain.com, localhost
home_mailbox = Maildir/
smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination
smtpd_sasl_auth_enable = yes
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls = yes

其中mydestination指定Postfix接收郵件的網域,home_mailbox指定使用者郵件的儲存格式和路徑,smtpd_sasl_*smtpd_tls_*參數用於設定SMTP身份驗證和加密。

設定Dovecot

Dovecot的主設定檔是/etc/dovecot/dovecot.conf,反註解以下行:

listen = *, ::

編輯/etc/dovecot/conf.d/10-mail.conf,指定郵件儲存路徑:

mail_location = maildir:~/Maildir

編輯/etc/dovecot/conf.d/10-auth.conf,設定SMTP身份驗證:

auth_mechanisms = plain login
!include auth-system.conf.ext

編輯/etc/dovecot/conf.d/10-master.conf,新增postfix smtp的認證:

service auth {
  unix_listener /var/spool/postfix/private/auth {
    mode = 0666
    user = postfix
    group = postfix
  }
}  

啟動服務

設定完成後,重新啟動Postfix和Dovecot:

sudo service postfix restart
sudo service dovecot restart

檢查服務狀態,確保啟動成功:

sudo service postfix status
sudo service dovecot status  

建立郵件帳號

要收發郵件,需要為每個使用者建立一個系統帳號。例如建立一個名為john的使用者:

sudo useradd -m john
sudo passwd john

現在john就可以使用郵件地址john@yourdomain.com收發郵件了。將yourdomain.com替換成你自己的網域。

設定DNS記錄

最後不要忘記在網域的DNS設定中新增以下記錄,將郵件伺服器指向你的香港伺服器:

  yourdomain.com.  MX  10 mail.yourdomain.com.
mail.yourdomain.com.  A  伺服器IP  

新增SPF和DKIM等反垃圾郵件記錄,則可以進一步提高郵件的信譽度,減少被誤判為垃圾郵件的機率。網上有很多線上工具可以幫你快速產生這些記錄。

至此,一個功能完善的電子郵件系統就搭建完成了。你可以使用Foxmail、Thunderbird等電子郵件用戶端,或者Roundcube、Rainloop等Webmail系統來收發郵件。私有化部署的郵件伺服器,功能和性能不輸給任何商業電子郵件服務商。你再也不用擔心隱私資料外洩,或者被單方面關閉服務了。