centos 7 配置mail.rc使用第三方SMTP發送郵件


目的:連接第三方smtp服務器去發送郵件,比如qq、新浪、網易等郵箱,只需要直接配置mail.rc文件即可實現。

本實驗使用網易126郵箱。

1.先去126郵箱開通smtp服務並獲得授權密碼記住,后面會用到。

 

2.查看smtp.126.com服務器開啟了那些端口,以前默認是25,現在網易停用了。

[root@danny ]# nmap smtp.126.com

Starting Nmap 6.40 ( http://nmap.org ) at 2020-06-17 16:05 CST
Nmap scan report for smtp.126.com (123.126.96.4)
Host is up (0.014s latency).
Other addresses for smtp.126.com (not scanned): 123.126.96.5 220.181.15.113 220.181.15.112 220.181.15.111 123.126.96.3 220.181.15.114
rDNS record for 123.126.96.4: mail-m964.mail.126.com
Not shown: 998 filtered ports
PORT    STATE SERVICE
465/tcp open  smtps
587/tcp open  submission

或者使用nc命令掃描對應端口查看開啟狀態

[root@danny ]# nc -zv  smtp.126.com 465
Ncat: Version 7.50 ( https://nmap.org/ncat )
Ncat: Connected to 123.126.96.5:465.
Ncat: 0 bytes sent, 0 bytes received in 0.04 seconds.

 

可以看到開啟了465和587端口(本次實驗使用465),而下圖可看到465端口使用的是ssl協議,所以相對mail.rc配置就需要使用ssl協議。

 

 

3.配置mail.rc

vim /etc/mail.rc

set from=xxx@126.com       //發件方郵箱或昵稱,經過測試必須得和下面的發件郵箱一致,否則發不了郵件
set smtp=smtps://smtp.126.com:465   //注意使用的ssl協議連接
set smtp-auth-user=xxx@126.com    //發件郵箱
set smtp-auth-password=xxxxxx  //此處使用的就是前面生成的授權碼
set stmp-auth=login
set ssl-verify=ignore
set nss-config-dir=/root/.certs //此處證書需要手動生成,否則會報錯或者連接失敗

 

重啟服務

systemctl restart postfix.service

 

4.發送郵件測試

#第一種
echo "test" | mail -s 'test linux'  xxx@qq.com


#第二種
mailx -v -s " 主題 " xxx@qq.com < a.sh
//-v可以動態顯示郵件發送狀態。可以把a.sh文件的內容作為郵件內容發送

 

關於上面證書創建

默認的證書是沒有的,如果不創建相應證書,郵件發送會報錯或者連接失敗。

//創建證書目錄
mkdir -p /root/.certs
cd .certs/

//獲取郵件服務器證書
echo -n "" | openssl s_client -connect smtp.126.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > 126.crt

//將證書添加到受信任列表
certutil -A -n 'smtp_126' -t "P,P,P" -d . -i ./126.crt

//上述命令中-A表示添加,-n是nickname,可以隨意取,例如126或qq;-t表示受信任的標簽,可取值是t/c/p三種或者其組合;-d表示證書所在目錄,-i指示證書文件的位置。

//# 指向證書文件目錄
set nss-config-dir=/root/.certs
 
注:
網上許多教程的-t標簽都是"C,,",實踐中發現使用該標簽仍會報錯(gmail的證書是google自己簽發的,用C標簽沒問題,許多博主估計沒試就直接抄來)。通過查閱certutil的用法,使用P標簽順利解決問題。
配置完成后,再使用mail命令發送郵件,煩人的警告消失不見。

 

參考文章:http://www.51testing.com/html/53/n-3727153.html

 


免責聲明!

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



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