24h購物| | PChome| 登入
2023-01-08 01:46:41| 人氣2| 回應0 | 下一篇
推薦 0 收藏 0 轉貼0 訂閱站台

Centos 8 postfix+DKIM 設定

  1. 20221222._domainkey.tshopping.com.tw.  TXT 3600 "v=DKIM1; k=rsa;p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDQEjrzWkJrIABJ6fKwZjcIvHsFRAEjrnfdM/ZiS23nGx73NkS1acbwFxP9otS/xNgJ2kyWS6tsh+mItM6QF0U7LV3iVFUDbFtJL0nZbDC+bExMCYpvIZRgPwcAZoTHFgjfQ+m5wvSlKR/lbYP0z2pmKZwqdDjZOPWndhtmg/n+hwIDAQAB"
  2.  
複製代碼
  1. systemctl restart postfix
複製代碼
  1. vi /etc/postfix/main.cf
複製代碼
  1.  
  2. Dec 22 21:38:57 dns postfix/smtpd[1373975]: warning: hostname grieving.medyamol.com does not resolve to address 141.98.11.67
  3. Dec 22 21:38:57 dns postfix/smtpd[1373975]: connect from unknown[141.98.11.67]
  4. Dec 22 21:38:57 dns postfix/smtpd[1373975]: discarding EHLO keywords: CHUNKING
  5. Dec 22 21:39:02 dns postfix/smtpd[1373975]: warning: unknown[141.98.11.67]: SASL PLAIN authentication failed:
  6. Dec 22 21:39:02 dns postfix/smtpd[1373975]: disconnect from unknown[141.98.11.67] ehlo=1 auth=0/1 quit=1 commands=2/3
  7. Dec 22 21:39:13 dns postfix/smtpd[1374031]: warning: hostname netyea.com does not resolve to address 202.39.11.212
  8. Dec 22 21:39:13 dns postfix/smtpd[1374031]: connect from unknown[202.39.11.212]
  9. Dec 22 21:39:13 dns postfix/smtpd[1374031]: discarding EHLO keywords: CHUNKING
  10. Dec 22 21:39:13 dns postfix/smtpd[1374031]: 1AF2D400EE51: client=unknown[202.39.11.212], sasl_method=PLAIN, sasl_username=service
  11. Dec 22 21:39:13 dns postfix/cleanup[1374461]: 1AF2D400EE51: message-id=<003301d91677$be28e250$3a7aa6f0$@tshopping.com.tw>
  12. Dec 22 21:39:13 dns opendkim[1239361]: 1AF2D400EE51: DKIM-Signature field added (s=20221222, d=tshopping.com.tw) <span style="font-size: large; background-color: rgb(255, 255, 255);"><== 已加上簽章</span>
  13. Dec 22 21:39:13 dns postfix/qmgr[1250017]: 1AF2D400EE51: from=<service@tshopping.com.tw>, size=4285, nrcpt=1 (queue active)
  14. Dec 22 21:39:13 dns postfix/local[1374510]: 1AF2D400EE51: to=<woff@tshopping.com.tw>, relay=local, delay=0.13, delays=0.12/0.01/0/0, dsn=2.0.0, status=sent (delivered to mailbox)
  15. Dec 22 21:39:13 dns postfix/qmgr[1250017]: 1AF2D400EE51: removed
  16.  
複製代碼




設定opendkim
設定 opendkim,設定檔在 /etc/opendkim.conf

設定 opendkim.conf
先備份 opendkim.conf

 



設定 KeyTable

  1. vi /etc/opendkim/SigningTable
複製代碼
  1. vi /etc/opendkim/TrustedHosts
複製代碼

DKIM.png


檢測器
諸多線上檢測器可使用,替你檢測你的dkim能不克不及正常運作。

  1. 20221222._domainkey     IN      TXT     ( "v=DKIM1; k=rsa; "
  2.           "p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDQEjrzWkJrIABJ6fKwZjcIvHsFRAEjrnfdM/ZiS23nGx73NkS1acbwFxP9otS/xNgJ2kyWS6tsh+mItM6QF0U7LV3iVFUDbFtJL0nZbDC+bExMCYpvIZRgPwcAZoTHFgjfQ+m5wvSlKR/lbYP0z2pmKZwqdDjZOPWndhtmg/n+hwIDAQAB" )  ; ----- DKIM key 20221222 for tshopping.com.tw
  3.  
複製代碼


重新啟動postfix
 

  1. systemctl enable opendkim
複製代碼



加上自己的ip,此文範例是利用InternalHosts,是以清單中寄信的起原ip都要加上簽章。

這兩個參數的意義多是:

ExternalIgnoreList   設定寄出的信都不要加上簽章
InternalHosts   寄出的信都要加上簽章

啟動 opendkim

 

信件老是被退?但願其它mail server相信我寄出的信?那麼你可以設定dkim。

dkim 是什麼?
DKIM (Domain Keys Identified Mail),網域金鑰認證郵件。

DKIM 和ssl(https)的運作機制類似,一樣採用公私鑰數位簽章體例。在發送郵件時由發佩服務器對郵件以私鑰進行簽章,而在郵件領受伺務器上,會透過 DNS 查詢寄件者網域的dkim 公鑰資料,然後對這封郵件做簽章解碼,假如解碼成功,代表郵件確切為原始郵件伺服器所寄出。

此舉可以避免冒充的伺服器寄信者來曆,讓該網域確切由授權的伺服器所寄出,削減email被偽造起原的可能。

簡單來說 dkim 是用來驗證寄件者是不是來自於正當伺服器的方式。



安裝dkim辦事
採用 opendkim 套件來支援dkim

安裝 opendkim

  1. yum -y install epel-release
  2. yum install opendkim
複製代碼
  1. chown -R opendkim:opendkim /etc/opendkim/keys/tshopping.com.tw/
複製代碼
  1. vi /etc/opendkim/KeyTable
複製代碼



[選擇器名]._domainkey.[網域名] [網域名]:[選擇器名]:[私鑰檔路徑]

設定 SigningTable





設定 TrustedHosts



設定postfix
修改


再加一筆adsp [2],Author Domain Signing Practices(adsp) 簡單來講就是dkim的認證機制

dkim= 的值可以用 ”all””unknown””discardable”

 

  1. postconf -n
複製代碼



在最後加上
 

  1. systemctl start opendkim
複製代碼
  1. 20221222._domainkey.tshopping.com.tw tshopping.com.tw:20221222:/etc/opendkim/keys/tshopping.com.tw/20221222.private
  2.  
複製代碼



利用者和群組改為 opendkim
 


點竄 opendkim.conf
 



加上一行


開機啟動 opendkim
 



確認參數有沒有啟動
 


"all" 指定所有此網域的信城市有簽章

"discardable" 指定所有此網域的信城市有簽章,假如沒有的話請抛棄(最嚴厲)。如要dkim 成心義的運作,最好把他設為這個。

"unknown" 指定所有此網域的信有可能會有簽章 (最寬鬆對待,等於沒設)。

測試及驗證
使用伺服器寄出一封信給本身試試,我利用 mutt 來完成,或是你要用你的郵件軟體也能夠。

原始碼
查看 /var/log/maillog 的寄出記實


把他新增到你的dns中,例如我的網域是 tshopping.com.tw 完全紀錄就是

  1. ### DKIM Settings
  2. smtpd_milters = inet:127.0.0.1:8891
  3. non_smtpd_milters = $smtpd_milters
  4. milter_default_action = accept
複製代碼



加上一行

  1. # 點竄為 Mode s,他有3種模式,Mode s, Mode v, Mode sv。網站架設s代表寄出時簽章、v代表收信時搜檢簽章。
  2. Mode    s
  3.  
  4. # 加上註解
  5. #KeyFile    /etc/opendkim/keys/default.private
  6.  
  7. # 以下項目移除註解
  8. KeyTable    /etc/opendkim/KeyTable
  9. SigningTable    refile:/etc/opendkim/SigningTable
  10. InternalHosts   refile:/etc/opendkim/TrustedHosts
複製代碼
  1. cp -p /etc/opendkim.conf /etc/opendkim.conf.org
複製代碼
  1. ls -al /etc/opendkim/keys/tshopping.com.tw
複製代碼
  1. drwxr-xr-x. 2 opendkim opendkim  50 12月 23 10:37 .
  2. drwxr-x---. 3 root     opendkim  30 12月 22 22:33 ..
  3. -rwx--x---. 1 root root 891 12月 22 22:32 20221222.private <== 私鑰
  4. -rwx--x---. 1 root root 322 12月 22 22:32 20221222.txt <== 公鑰 dns txt記錄
複製代碼
  1. *@tshopping.com.tw 20221222._domainkey.tshopping.com.tw
  2.  
複製代碼


設定dns的記實
接下來設定dns的紀錄,dkim首要要新增二筆。

第一筆是把/etc/opendkim/keys/
tshopping.com.tw/20221222.txt 打開,裡面梗概長如許:
 

  1. _adsp._domainkey.tshopping.com.tw  TXT 3600 "dkim=unknown"
網站架設 複製代碼



產生公私鑰
今天要替 @tshopping.com.tw 的email建立 dkim,所以建立一個以此網域命名的目次匣

# mkdir /etc/opendkim/keys/
tshopping.com.tw
產生公私鑰

# opendkim-genkey -D /etc/opendkim/keys/
tshopping.com.tw/ -d tshopping.com.tw -s 20221222
參數的意義
-D 產生的公私鑰目次
-d 網域名
-s 稱之為選擇器(selector),可以隨意取,我用今天日期
20221222

履行後不會有回應是正常的,檢查目錄下產生的檔案
 



本文出自:

台長: ernestnhfb
人氣(2) | 回應(0)| 推薦 (0)| 收藏 (0)| 轉寄
全站分類: 興趣嗜好(收藏、園藝、棋奕、汽機車) | 個人分類: NetYea |
此分類下一篇:若何使用PHP製作並匯出PDF報表 網站架設

是 (若未登入"個人新聞台帳號"則看不到回覆唷!)
* 請輸入識別碼:
請輸入圖片中算式的結果(可能為0) 
(有*為必填)
TOP
詳全文