您好,登錄后才能下訂單哦!
前端時間處理過一個生產環境中的一個問題,該問題不是很復雜,但是如果不能理清思路是比較難找到方向的。下面我將問題處理過程大致分享一下。
一、環境情況
1、WIndows 2012 R2+Exchange 2016 CU2。
2、郵件流:Internet<——>郵件網關【Symantec SMG】<——>Exchange server。
二、問題現象
Exchange通訊組設置了發送郵件需要驗證【也就是說RequireSenderAuthenticationEnabled被設置為True】,但是第三方郵箱【例如:163或QQ】仍然能夠給Exchange通訊組發送郵件,并且通訊組中的組成員還會收到郵件。
三、問題處理過程
剛接到這個問題,第一反應就是,首先檢查一下通訊組的權限設置是否是開啟了RequireSenderAuthenticationEnabled,然后再判斷這種情況是個別通訊組還是全部通訊組均是這種情況。
1、首先檢查了所有通訊組的設置,均開啟了RequireSenderAuthenticationEnabled。并且測試了好幾個通訊組均是這種情況。
2、Exchange郵件傳輸都是通過傳輸代理Agent來實現的,使用命令Get-TransportAgent查看是否有Agent工作不正常,或者是有什么其他Agent搞鬼。通過獲取結果看到,TransportAgent沒有任何問題。
3、接下來,有通過命令查看了發件人篩選,均沒有問題。
4、嘗試手動創建一個傳輸規則,規則內容是阻止任何外部用戶給特定通訊組發送郵件。通過測試結果仍然是外部用戶能夠給通訊組發送郵件。各種嘗試后,到這來開始懷疑是不是服務器問題或者傳輸服務出現問題。默認情況下,傳輸服務器在Exchange服務器上緩存時間是4個小時。接下來,重啟了傳輸服務,問題依然存在。
5、查看了服務器運行時間為570天,也就是說服務器長時間未重啟,懷疑是不是安裝了補丁沒有重啟。于是將數據庫副本切換到備用節點,然后逐一重啟服務器。重啟完成后測試,問題依然存在。
6、沒有辦法了,這個問題肯定是哪里遺留掉了,或者說是產品Bug。通過查看Exchange 2016 CU3-CU11修復的問題列表中,根本沒有關于這個問題的描述。那么就不應該是產品Bug。
7、最后沒有辦法了,只能看傳輸日志了。之前對Exchange的傳輸過程研究過,正常情況下,當一封通訊組郵件發送到Exchange服務器時,Exchange服務器會進行一個Expand通訊組成員展開動作。如下:
而通過發送測試郵件,使用外部郵箱給通訊組發送測試郵件,然后使用命令查看郵件投遞記錄,發現在Exchange服務器上并沒有執行Expand組地址展開動作,而是直接將郵件投遞到了對應郵箱中。這說明什么問題呢,大膽猜測通訊組郵件在到達Exchange服務器之前就將組成員展開了,這種情況下就會是發送給通訊組的郵件直接投遞到了組成員郵箱,從而繞過了通訊組驗證機制。
8、為了驗證我的猜測,目前大致方向能夠定位在是郵件網關上替Exchange干了一個通訊組成員Expand的事情。于是接下來查看SMG的配置。在SMG的活動目錄集成里面看到了SMG上啟用了“Enable Distribution Expansion”【啟用分發列表擴展】功能。
9、將SMG的啟用分發列表擴展功能,關閉后,然后測試給通訊組發送郵件,一切恢復正常。然后通過命令查看傳輸日志也能夠正常捕獲到Expand動作。
四、建議
1、在使用郵件網關時,一定要注意關于通訊組方面的設置,設置不當會議導致垃圾郵件。
2、此案例反過來,可以作為一種解決讓Exchange通訊組接收外部郵件的一個解決方法。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。