阿里雲ECS屏蔽25端口,官方建議使用465 SSL端口發送郵件


阿里雲ECS  VPC網絡,搭建了zabbix,想通過三方郵件系統發送郵件,本機開虛擬機測試發郵件一切正常,到阿里ECS的時候郵件各種發不出去,到處找原因,最后度娘告訴了我真想,原來阿里把25端口屏蔽了。

嘗試解封,呵呵...繼續找度娘 谷哥,說是可以繞開25端口,用465端口,步驟如下(先不要操作,我在測試機上按一下步驟成功使用465發送了郵件,但阿里雲上ECS貌似不需要這些步驟就可以直接使用465發成功):

1、請求數字證書(這里使用126郵箱)

#創建目錄,用於存放數字證書

mkdir -p /root/.certs

#向126請求證書

echo -n | openssl s_client -connect smtp.126.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/126.crt

打印如下內容:

depth=2 C = US, O = DigiCert Inc, OU = www.digicert.com, CN = DigiCert Global Root CA
verify return:1
depth=1 C = US, O = DigiCert Inc, OU = www.digicert.com, CN = GeoTrust RSA CA 2018
verify return:1
depth=0 C = CN, L = Hangzhou, O = "NetEase (Hangzhou) Network Co., Ltd", OU = Mail Dept., CN = *.126.com
verify return:1
DONE

#增加一個證書到證書數據庫中

certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/126.crt

#再增加一個證書到證書數據庫中

certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/126.crt

#列出目錄中的證書

Certificate Nickname Trust Attributes
SSL,S/MIME,JAR/XPI

GeoTrust SSL CA C,,

 

2、126郵箱打開smtp並獲取客戶端授權碼,以及設置客戶端授權密碼

步驟:設置--POP3/SMTP/IMAP  開啟

     客戶端授權密碼       開啟

3、若有如下報錯(證書不被信任)

Error in certificate: Peer's certificate issuer is not recognized.

解決辦法:

cd /root/.certs/

certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ./ -i 126.crt 

顯示內容:Notice: Trust flag u is set automatically if the private key is present.

4、如果以后要通過服務器直接發送郵件而不是通過zabbix來發郵件,可能會遇到一下問題,這里也做下記錄:

革命先驅者:https://www.cnblogs.com/yunweis/p/8149242.html

發郵件報錯如下:

Error initializing NSS Unknown error -8015.
以root用戶就可以發送,其他用戶不行。 (由於上面的文章介紹,生成的證書目錄放在了root下,這樣會導致其他用戶沒有可讀和執行權限)
解決辦法是 將證書文件目錄:certs/ 移動到一個755權限的地方即可。如/etc下 一定要保證其他用戶有讀取和執行的權限,否則其他用戶無法發送郵件。

5、zabbix配置變更如下:

變更前:

變更后:

 

再次觸發報警,郵件發送成功,以上步驟線下實測,結果OK。

但阿里雲ECS只將做了第5步調整,就成功發送郵件。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM