大家好,又见面了,我是全栈君。
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、配置
vi /etc/mail.rc
# 指定邮箱
set from=5***3@qq.com
# 邮箱协议:企业邮箱: smtp.exmail.qq.com 个人QQ邮箱: smtp.qq.com
set smtp="smtp.qq.com"
# 邮箱账号
set smtp-auth-user="5***3@qq.com"
# 邮箱授权码,QQ邮箱后台里面去授权
set smtp-auth-password="slmuozv*****"
# 登陆方式
set smtp-auth=login
3、发送
echo "hello" | mail -s "this is a testmail" shihua.ma@rubis.com.cn
# 参数
-s 邮件标题
echo "hell0" 邮件的内容
-v 用“-v" 参数来查看返回信息
# 或者通过一个文件发送
mail -v -s "this is test mail" shihua.ma@rubis.com.cn < /tmp/mail_content.txt
4.结果:
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/111513.html原文链接:https://javaforall.cn