赞
踩
Mail服务概述
Mail(邮件服务)有很多协议类型在承载邮件服务,例如最常见的:SMTP、POP3、IMAP,它们都隶属于 TCP/IP 协议
邮箱应用场景 很多时候我们在使用 Shell 监控脚本的时候(例如:Mysql,Nginx,等等),当监控的服务出现问题的需要通过邮箱(当然也可以使用微信、短信或者钉钉)通知给管理员。
SMTP协议
1、SMTP是一种推协议,即服务端向客户端发送推送请求,客户端接受,服务端发送邮件,占用服务器的25/TCP端口 2、SMTP用于将发送方的邮件服务器发送报文到接收方邮件服务器 3、当需要将邮件从接收方服务器发送到用户手中时,不能用SMTP协议,因为当用户不接受邮件时服务器会一直请求,这样会造成资源浪费,此时需要拉协议(最典型的拉协议是 HTTP 协议)如 POP 或 IMAP
POP3
1、负责从邮件服务器中检索电子邮件,占用服务器的110/TCP端口 2、可以下载邮件、从服务器中删除邮件或询问是否有新邮件
IMAP
1、IMAP是双向的,在本地的操作也会反馈到服务器,占用服务器的143/TCP端口 2、互联网信息访问协议(IMAP)是一种优于POP的新协议,它可以决定客户机请求邮件服务器提交所收到邮件的方式,请求邮件服务器只下载所选中的邮件而不是全部邮件
SMTP 常见服务器地址:
网易163:smtp.163.com QQ:smtp.qq.com
1、安装 mailx
yum install mailx -y
2、配置
vim /etc/mail.rc # 指定邮箱 set from=2788xxx@qq.com # 邮箱协议 set smtp="smtp.qq.com" # 邮箱账号 set smtp-auth-user="2788xxx@qq.com" # 邮箱授权码,QQ邮箱后台里面去授权 set smtp-auth-password="qtaetrom*****" # 登陆方式 set smtp-auth=login
3、发送
# -s:标题 # -a:作为附件发送到邮箱里 echo "hello mail" | mail -s "this is a testmail" xxxxx@qq.com echo "hello mail" | mail -s 'test send mail' -a /usr/local/mysql/data/error.err 122578528@qq.com
4、登录邮箱查看是否收到邮件
5、通过465端口发送邮件
由于国际与国内均对垃圾邮件进行严格管控,我国《互联网信息服务管理办法》、《中国互联网协会反垃圾邮件规范》均对垃圾邮件进行说明与管理规范。 鉴于服务器25端口被大量垃圾邮件充斥,严重影响广大用户正常使用。为了共同维护良好的网络环境,自即日起阿里云新购服务器不再提供25端口邮件服务, 建议您尝试使用465加密端口发送邮件。
mkdir -p /root/.certs/ # 申请证书 echo -n | openssl s_client -connect smtp.qq.com:465 | \ sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/qq.crt # 添加证书到证书数据库 certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt # 信任证书 cd /root/.certs/ certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ~/.certs/./ -i qq.crt # 列出目录下证书 certutil -L -d /root/.certs
6、配置文件(/etc/mail.rc)
set from=576530483@qq.com set smtp=smtps://smtp.qq.com:465 set smtp-auth-user=576530483@qq.com set smtp-auth-password=swxx****** set smtp-auth=login set ssl-verify=ignore set nss-config-dir=/root/.certs
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。