以Ubuntu 10.04 LTS、Exim4為例
安裝Exim4
sudo apt-get update && sudo apt-get install exim4
設定Exim4
執行設定指令
sudo dpkg-reconfigure exim4-config
接著是一串繁瑣的設定過程,但其實設定內容很簡單,重點在 smtp.gmail.com::587 這邊要設定正確。
- 請選擇最符合您的需求的郵件伺服器之設定類型。
- 使用 smarthost 來傳送郵件;並藉由 SMTP 或是 fetchmail 來接收郵件 (mail sent by smarthost; received via SMTP or fetchmail)
- 系統郵件名稱 (mail name):
- 自行輸入已註冊的網域名稱(例如 yourhostname.com)
- 在有 SMTP 連線傳入時,要進行監聽的 IP 位址 (listen on for incoming SMTP connections)
- 127.0.0.1
- 要進行接收的其它郵件位址 (Other destinations for which mail is accepted)
- 保留空白
- 要替哪些主機進行郵件轉寄 (Machines to relay mail for)
- 保留空白
- 外寄郵件時所使用的 smarthost 的 IP 位址或主機名稱 (Machine handling outgoing mail for this host)
- smtp.gmail.com::587
- 是否在外送郵件中隱藏本機的郵件名稱 (hide local mail name in outgoing mail)
- 否 (No)
- 是否保持最小的 DNS 查詢量 (don’t keep number of DNS-queries minimal)
- 否 (No)
- 本機郵件的傳送方式
- 存放在 /var/mail 裡的 mbox 格式
- 是否將設定檔分散成較小的檔案 (split configuration into small files)
- 否 (No)
- root 及 postmaster 的郵件代收者
- 輸入系統中指定的使用者帳號(多位使用者以空白字元分隔)
設定GMail帳號密碼
由於GMail提供的SMTP服務會要求登入驗證,編輯 /etc/exim4/passwd.client 加入設定,格式如下。
*:gmailusername:gmailpassword
password為”明碼”,就是直接打上GMail的密碼不必另外編碼。
重新啟動Exim4服務
當Exim4設定變更後,需要重新啟動服務。
sudo service exim4 restart
測試發信
使用Linux系統的mail指令即可測是發信功能。
mail -s 'SUBJECT' you@mailserver
信件內容的編輯步驟:
- 隨意輸入一些文字內容
- 信件結尾,最後一行只輸入一個小數點「.」,然後按Enter
- 出現Cc:再直接按一次Enter略過
接著,這封測試信就會加入等待寄送的佇列。
發信紀錄
檢查信箱是否收得到測試信,若有問題則可以檢查Exim4的Log檔,查看郵件寄出紀錄是否正常。
tail -n 100 /var/log/exim4/mainlog
本文原作者為lyhcode( http://blog.lyhdev.com/ ),發表於思創軟體實驗室(http://lyhdev.com/ )。