sendmail預設是不會認證發信人身份的,這就導致你的郵件伺服器可能會被人隨意的傳送垃圾郵件。
而開啟smtp認證之後,只有認證身份的使用者才可以傳送郵件,這樣就很好的解決了上面的安全因患。
軟體包安裝:
開始設定前首先要確保你的CentOS上已經安裝瞭如下四個軟體包(sasl認證相關)。
cyrus-sasl-2.1.10-4.i386.rpm cyrus-sasl-md5-2.1.10-4.i386.rpm cyrus-sasl-plain-2.1.22-5.el5 cyrus-sasl-devel-2.1.22-5.el5
一般CentOS 6.5系統中都會內建前兩個包,我們執行安裝命令安裝餘下兩個包。
[root@localhost ~]# yum install *sasl-p* [root@localhost ~]# yum install *sasl-d*
*sendmail配置部分:*
編輯/etc/mail/sendmail.mc檔案
[root@localhost ~]# vim /etc/mail/sendmail.mc
轉到第52行(因軟體版本號差異,行號可能不同)可以看到如下兩條語句,去掉這兩行前面的註釋dnl #
(注:前往不要留有空格,否則報錯)。
修改後如圖:
TRUST_AUTH_MECH的作用是使sendmail不管access檔案中如何設定, 都能relay那些透過EXTERNAL, LOGIN, PLAIN, CRAM-MD5或DIGEST-MD5等方式驗證的郵件,注意這裡是對需要relay的郵件進行驗證,這點很重要,只有這樣透過驗證的郵件才會被 relay以防止sendmail伺服器被濫用。
confAUTH_MECHANISMS的作用是確定系統的認證方式。Outlook Express支援的認證方式是LOGIN。
儲存並退出。
生成對應的sendmail.cf檔案。
[root@localhost ~]# m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
重啟sendmail服務。
[root@localhost ~]# service sendmail restart
啟動saslauthd服務,用於支援sasl認證。
[root@localhost ~]# service saslauthd start
至此,配置工作完成,現在開始測試吧~