今天主要聊下 利用外部的smpt服務器 來發送郵件
[root@kvm2 ~]# cat /etc/centos-release
CentOS Linux release 7.4.1708 (Core)
[root@kvm2 ~]# uname -r
3.10.0-693.el7.x86_64
yum -y install sendmail mailx
service sendmail start && systemctl enable sendmail
#添加主機名
echo "hostname=`uname -n`">>/etc/sysconfig/network
修改/etc/mail.rc文件(有的版本叫/etc/nail.rc,新添加下面內容:
set from=<fromUser@domain.com> smtp=<smtp.domain.comset> smtp-auth-user=<username> smtp-auth-password=<郵箱的授權碼> smtp-auth=login
參數說明:
from是發送方的郵件地址
smtp是發送方的外部smtp服務器的地址
smtp-auth-user是外部smtp服務器認證的用戶名。注意一定要填寫郵件全稱!!
smtp-auth-password是外部smtp服務器的授權碼
smtp-auth是郵件認證的方式
示例:配置完成后,就可以正常發送郵件了,如下
[root@slave-node ~]# vim /etc/mail.rc //在文件底部添加
set from=zhangxxxx456@126.com smtp=smtp.126.com
set smtp-auth-user=zhangxxxx@126.com smtp-auth-password=<126郵箱的授權碼> smtp-auth=login
注:smtp-auth-user要是全稱,不是@前面部分
獲取授權碼:
現在開始發郵件:
QQ郵箱接收:
華為雲 上布置郵件服務:(該方法不需要在 雲安全組 中開啟其他端口)
smtps 發送郵件
465端口是SSL/TLS通訊協議的內容,郵件正文一開始就被加密保護起來了,是看不到郵件明文的。
465端口(SMTPS):465端口是為SMTPS(SMTP-over-SSL)協議服務開放的,這是SMTP協議基於SSL安全協議之上的一種變種協議,
它繼承了SSL安全協議的非對稱加密的高度安全可靠性,可防止郵件泄露。
SMTPS和SMTP協議一樣也是用來發送郵件的,只是更安全些,
防止郵件被黑客截取泄露,還可實現郵件發送者抗抵賴功能。防止發送者發送之后刪除已發郵件,拒不承認發送過這樣一份郵件。
(默認阿里雲屏蔽了25號端口,而推薦的是使用465端口)
126個人郵箱設置 smtps 465
首先開啟 smtp
登錄126個人郵箱 ——> 設置 ——> POP3/SMTP/IMAP
服務器地址:
POP3服務器: pop.126.com
SMTP服務器: smtp.126.com
IMAP服務器: imap.126.com
配置 /etc/mail.rc
創建證書目錄
mkdir /root/.certs
ssl 授權
echo -n | openssl s_client -connect smtp.126.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/126.cr
certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/126.crt
certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/126.crt
certutil -L -d .certs/
certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ~/.certs/ -i ~/.certs/126.crt
發送郵件進行測試
QQ郵箱接收的信息:
其他發面發送郵件
該文章為原創,轉載請注明原出處 謝謝合作
歡迎加入QQ群一起討論Linux、開源等技術