mywheat 2014-5-28 09:46
在 CentOS 6.x 版設定 Postfix+SPF+OpenDKIM 電子郵件驗證
架 Mail Server 首先要搞定不讓自己寄出去的信被當作 Spam,參考 Google的電子郵件驗證中說的,要可以被 驗證和識別,通常就是 Domain 要發佈 SPF 跟簽署 DKIM(DomainKeys Identified Mail) 。<br><br>如何在 DNS Server 設定 SPF 提高郵件正確送達...請參考這篇說明:<br>http://dz.adj.idv.tw/thread-136297-1-1.html<br><br><font size="3" color="Blue">(1) 設定 DKIM:</font><br>下載安裝<br>64 bit:<br># rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm<br><br>32 bit:<br># rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm<br><br># yum install opendkim<br><br><font size="3" color="Blue">(2) 做DKIM key (修改紅色部分)</font><br># export domain=<font color="Red">adj.com.tw</font><br># mkdir /etc/opendkim/keys/$domain<br># cd /etc/opendkim/keys/$domain<br># opendkim-genkey -d $domain -s default<br># chown -R opendkim:opendkim /etc/opendkim/keys/$domain<br># echo "default._domainkey.$domain $domain:default:/etc/opendkim/keys/$domain/default.private" >> /etc/opendkim/KeyTable<br># echo "*@$domain default._domainkey.$domain" >> /etc/opendkim/SigningTable<br><br><font size="3" color="Blue">(3) 把DKIM key加到DNS設定:</font><br><br>請自行再 DNS設定那邊加上底下這段.<br>假設DNS Zone檔在 /var/named/chroot/var/named/Zone-adj.com.tw <br>請執行(修改紅色部分)<br># cat /etc/opendkim/keys/$domain/default.txt >> /var/named/chroot/var/named/<font color="Red">Zone-adj.com.tw</font><br><br><font size="3" color="Blue">(4) 改 openDKIM設定 (改紅色部分)</font><br>vi /etc/opendkim.conf<br><br>a. Mode 改成<br>Mode sv<br><br>b. Domain <font color="Red">adj.com.tw</font><br><br>c. 去掉所有變數的#, 但在KeyFile設定前加上#<br><br>d. 再把<br>SigningTable /etc/opendkim/SigningTable<br>改成<br>SigningTable refile:/etc/opendkim/SigningTable<br><br><font size="3" color="Blue">(5) 設定 Postfix</font><br>vi /etc/postfix/main.cf (add following)<br>加上下面幾行<br># opendkim setup<br>smtpd_milters = inet:127.0.0.1:8891<br>non_smtpd_milters = inet:127.0.0.1:8891<br>milter_default_action = accept<br><br><font size="3" color="Blue">(6) 啟動opendkim</font><br># service opendkim restart<br># service postfix restart<br># chkconfig opendkim on<br><br>PS: 第一次啟動如果出現 Generating default DKIM keys: hostname: Unknown host<br>可以在 /etc/hosts 上面補上(紅色這段)<br>127.0.0.1 <font color="Red">adj.com.tw</font> localhost localhost.localdomain localhost4 localhost4.localdomain4<br><br><font size="3" color="Blue">(7) 測試 opendkim</font><br><div>到 http://dkimvalidator.com/ 找到測試信箱,</div><div>底下的紅色信箱要依現況做更改, <font color="Olive">-r 指的是寄件者信箱</font><br></div><div><br></div><div># mail -v -s "test subject" -r sales@adj.com.tw <font color="Red">uEHs4uENY06XsS@dkimvalidator.com</font><br></div><div><br></div>( 寄封信到網站顯示的信箱, 然後押view result)<br><br> 如果看到<br>Validating Signature<br><br>result = pass<br>Details: <br><br>那就是設定OK囉.<br><br>也可以看看log 有沒有錯誤<br># tailf /var/log/maillog<br><br>這樣就大功告成啦~~