差異處
這裏顯示兩個版本的差異處。
| 兩邊的前次修訂版 前次修改 下次修改 | 前次修改 | ||
| tech:install_spf_dkim [2012/06/13 15:38] – jonathan | tech:install_spf_dkim [2018/05/20 15:04] (目前版本) – 網址更改為 https Jonathan Tsai | ||
|---|---|---|---|
| 行 1: | 行 1: | ||
| + | ====== CentOS5 安裝 SPF/DKIM 郵件認證 ====== | ||
| + | * SPF (Sender Policy Framework) | ||
| + | * DKIM (DomainKeys Identified Mail) | ||
| + | 安裝前先確認已經安裝以下套件 <code sh> | ||
| + | yum install openssl openssl-devel sendmail sendmail-devel | ||
| + | </ | ||
| + | |||
| + | ===== - 設定 SPF 方式 ===== | ||
| + | 設定 SPF 只是在 DNS 內增加兩行有關 mail server 的定義 | ||
| + | |||
| + | - 連上 http:// | ||
| + | - Exp: everplast.net -> http:// | ||
| + | - 產生給 BIND 的資訊:< | ||
| + | everplast.net. IN TXT " | ||
| + | mail.everplast.net. IN TXT " | ||
| + | </ | ||
| + | - 在 everplast.net 的 DNS 定義檔 ((/ | ||
| + | ; | ||
| + | ; Mail Server | ||
| + | ; | ||
| + | @ | ||
| + | @ | ||
| + | everplast.net. IN TXT " | ||
| + | mail IN A | ||
| + | mail IN MX 10 mail | ||
| + | mail.everplast.net. IN TXT " | ||
| + | ; | ||
| + | </ | ||
| + | - 定義完成後, | ||
| + | service named restart | ||
| + | </ | ||
| + | - 使用 nslookup 確認設定是否正確< | ||
| + | [root@ag320-mail data]# nslookup | ||
| + | > set type=TXT | ||
| + | > everplast.net | ||
| + | Server: | ||
| + | Address: | ||
| + | |||
| + | everplast.net | ||
| + | > mail.everplast.net | ||
| + | Server: | ||
| + | Address: | ||
| + | |||
| + | mail.everplast.net | ||
| + | </ | ||
| + | - 透過 mail.everplast.net 寄信到 < | ||
| + | : | ||
| + | Summary of Results | ||
| + | ========================================================== | ||
| + | SPF check: | ||
| + | DomainKeys check: | ||
| + | DKIM check: | ||
| + | Sender-ID check: | ||
| + | SpamAssassin check: ham | ||
| + | : | ||
| + | </ | ||
| + | |||
| + | ===== - 安裝與設定 DKIM 方式 ===== | ||
| + | < | ||
| + | * dkim-milter 已經改由 OpenDKIM 專案取代 | ||
| + | * 參考網址 | ||
| + | - http:// | ||
| + | - http:// | ||
| + | </ | ||
| + | ==== OpenDKIM ===== | ||
| + | - 透過 rpmforge 直接安裝 <code sh> | ||
| + | yum install opendkim | ||
| + | </ | ||
| + | ================================================================================ | ||
| + | | ||
| + | ================================================================================ | ||
| + | Installing: | ||
| + | | ||
| + | Installing for dependencies: | ||
| + | | ||
| + | </ | ||
| + | - 到 http:// | ||
| + | Domain : e-plast.com.tw | ||
| + | Selector : key2 | ||
| + | </ | ||
| + | - 將產生結果的 Private Key 貼到 mail server 內的 / | ||
| + | mkdir -p / | ||
| + | vi / | ||
| + | chmod 600 / | ||
| + | chown -R opendkim: | ||
| + | </ | ||
| + | - 將產生結果的 domainkey 放入 e-plast.com.tw DNS 定義檔內< | ||
| + | ; | ||
| + | ; Mail Server | ||
| + | ; | ||
| + | @ | ||
| + | @ | ||
| + | e-plast.com.tw. IN TXT " | ||
| + | mail IN A | ||
| + | mail IN MX 10 mail | ||
| + | mail.e-plast.com.tw. IN TXT " | ||
| + | _domainkey.e-plast.com.tw. | ||
| + | key2._domainkey.e-plast.com.tw. IN TXT " | ||
| + | ; | ||
| + | </ | ||
| + | - 編輯相關 mail domain name 清單 <code sh> | ||
| + | vi / | ||
| + | </ | ||
| + | 127.0.0.1 | ||
| + | localhost | ||
| + | mail.e-plast.com.tw | ||
| + | e-plast.com.tw | ||
| + | </ | ||
| + | - 修改 / | ||
| + | vi / | ||
| + | </ | ||
| + | : | ||
| + | Mode sv | ||
| + | : | ||
| + | Socket | ||
| + | : | ||
| + | Canonicalization | ||
| + | : | ||
| + | # | ||
| + | : | ||
| + | # | ||
| + | : | ||
| + | #KeyFile / | ||
| + | : | ||
| + | KeyTable | ||
| + | : | ||
| + | SigningTable | ||
| + | : | ||
| + | InternalHosts | ||
| + | : | ||
| + | </ | ||
| + | : | ||
| + | On-Default | ||
| + | On-BadSignature | ||
| + | On-DNSError | ||
| + | : | ||
| + | </ | ||
| + | - 修改 / | ||
| + | vi / | ||
| + | </ | ||
| + | : | ||
| + | key2._domainkey.e-plast.com.tw e-plast.com.tw: | ||
| + | </ | ||
| + | - 修改 / | ||
| + | vi / | ||
| + | </ | ||
| + | : | ||
| + | *@e-plast.com.tw key2._domainkey.e-plast.com.tw | ||
| + | *@mail.e-plast.com.tw key2._domainkey.e-plast.com.tw | ||
| + | : | ||
| + | e-plast.com.tw key2._domainkey.e-plast.com.tw | ||
| + | mail.e-plast.com.tw key2._domainkey.e-plast.com.tw | ||
| + | </ | ||
| + | - 啟動 opendkim 服務< | ||
| + | service opendkim start | ||
| + | chkconfig opendkim on | ||
| + | </ | ||
| + | [root@e-plast-mail keys]# service opendkim restart | ||
| + | Stopping OpenDKIM Milter: | ||
| + | Generating default DKIM keys: [警告] | ||
| + | Cannot determine host's domain name, so skipping default key generation. | ||
| + | Starting OpenDKIM Milter: | ||
| + | </ | ||
| + | cd / | ||
| + | ln -s e-plast.com.tw/ | ||
| + | </ | ||
| + | - 更改 sendmail 使用 dkim 服務< | ||
| + | vi / | ||
| + | </ | ||
| + | : | ||
| + | : | ||
| + | INPUT_MAIL_FILTER(`opendkim', | ||
| + | </ | ||
| + | cd /etc/mail | ||
| + | mv sendmail.cf sendmail.cf.back1 | ||
| + | m4 sendmail.mc > sendmail.cf | ||
| + | </ | ||
| + | - 重新啟動 MailServer <code sh> | ||
| + | service MailScanner restart | ||
| + | </ | ||
| + | ==== DKIM-Milter ===== | ||
| + | - 下載安裝 dkim-milter | ||
| + | - ++使用原始碼安裝程序|< | ||
| + | wget http:// | ||
| + | tar -zxvf dkim-milter-2.8.3.tar.gz | ||
| + | cd dkim-milter-2.8.3 | ||
| + | cp site.config.m4.dist site.config.m4 | ||
| + | vi site.config.m4 | ||
| + | </ | ||
| + | : | ||
| + | define(`bld_LIBDKIM_SHARED', | ||
| + | : | ||
| + | dnl OpenSSL -- cryptography library | ||
| + | APPENDDEF(`confINCDIRS', | ||
| + | APPENDDEF(`confLIBDIRS', | ||
| + | : | ||
| + | dnl libmilter -- Sendmail' | ||
| + | APPENDDEF(`bld_dkim_filter_INCDIRS', | ||
| + | APPENDDEF(`bld_dkim_filter_LIBDIRS', | ||
| + | : | ||
| + | </ | ||
| + | cp site.config.m4 devtools/ | ||
| + | sh Build | ||
| + | sh Build install | ||
| + | |||
| + | (http:// | ||
| + | </ | ||
| + | - ++使用 rpm 安裝程序|< | ||
| + | wget https:// | ||
| + | rpm -ivh dkim-milter-2.8.3-1.x86_64.rpm | ||
| + | </ | ||
| + | - 到 http:// | ||
| + | Domain : everplast.net | ||
| + | Selector : key1 | ||
| + | </ | ||
| + | - 將產生結果的 Private Key 貼到 mail server 內的 / | ||
| + | mkdir -p / | ||
| + | vi / | ||
| + | chmod 600 / | ||
| + | chown -R dkim-milt: | ||
| + | </ | ||
| + | - 將產生結果的 domainkey 放入 everplast.net DNS 定義檔內< | ||
| + | ; | ||
| + | ; Mail Server | ||
| + | ; | ||
| + | @ | ||
| + | @ | ||
| + | everplast.net. IN TXT " | ||
| + | mail IN A | ||
| + | mail IN MX 10 mail | ||
| + | mail.everplast.net. IN TXT " | ||
| + | _domainkey.everplast.net. | ||
| + | key1._domainkey.everplast.net. | ||
| + | ; | ||
| + | </ | ||
| + | - 編輯相關 mail domain name 清單 <code sh> | ||
| + | vi / | ||
| + | </ | ||
| + | mail.everplast.net | ||
| + | everplast.net | ||
| + | mail.e-plast.com.tw | ||
| + | e-plast.com.tw | ||
| + | mail.everplast.com.tw | ||
| + | everplast.com.tw | ||
| + | localhost | ||
| + | 127.0.0.1 | ||
| + | </ | ||
| + | - 修改 / | ||
| + | vi / | ||
| + | </ | ||
| + | : | ||
| + | Canonicalization | ||
| + | : | ||
| + | Domain | ||
| + | : | ||
| + | KeyFile / | ||
| + | : | ||
| + | Selector | ||
| + | : | ||
| + | Socket | ||
| + | : | ||
| + | Mode sv | ||
| + | : | ||
| + | InternalHosts | ||
| + | : | ||
| + | </ | ||
| + | : | ||
| + | On-Default | ||
| + | On-BadSignature | ||
| + | On-DNSError | ||
| + | : | ||
| + | </ | ||
| + | - 修改 / | ||
| + | vi / | ||
| + | </ | ||
| + | : | ||
| + | *@everplast.net: | ||
| + | </ | ||
| + | - 啟動 dkim-milter 服務< | ||
| + | service dkim-milter start | ||
| + | chkconfig dkim-milter on | ||
| + | </ | ||
| + | - 更改 sendmail 使用 dkim 服務< | ||
| + | vi / | ||
| + | </ | ||
| + | : | ||
| + | : | ||
| + | INPUT_MAIL_FILTER(`dkim-filter', | ||
| + | </ | ||
| + | cd /etc/mail | ||
| + | mv sendmail.cf sendmail.cf.back1 | ||
| + | m4 sendmail.mc > sendmail.cf | ||
| + | </ | ||
| + | - 重新啟動 MailServer <code sh> | ||
| + | service MailScanner restart | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | 如果有使用 [[http:// | ||
| + | |||
| + | * Sign Clean Messages = no | ||
| + | |||
| + | 否則收信端檢核信件 dkim 簽章時會驗簽失敗, | ||
| + | </ | ||
| + | ===== 參考網址 ===== | ||
| + | * http:// | ||
| + | * http:// | ||
| + | * http:// | ||
| + | * http:// | ||
| + | * http:// | ||
| + | * http:// | ||
| + | * http:// | ||
| + | * http:// | ||
| + | * http:// | ||
| + | * http:// | ||
| + | * http:// | ||
| + | * http:// | ||
| + | |||
| + | {{tag> | ||