准备工作:申请一个服务邮箱,并开启pop3/smtp/imap  并获取授权码(本文以163邮箱示例)

  1. 使用命令   yum install sendmail -y  安装sendmail软件
yum install sendmail -y
  1. 使用yum install mailx -y安装 mailx软件
yum install mailx -y
  1. 使用命令systemctl start sendmail启动  sendmail
#启动命令:  
systemctl start sendmail
#重启命令:
systemctl restart sendmail
  1. 注册邮箱  开启pop3/smtp/imap  并获取授权码(即准备工作)
  2. 配置邮件配置文件
#编辑/etc/mail.rc配置文件
vim /etc/mail.rc
#开启ssl
set ssl-verify=ignore
#下方输入证书目录,下方为centos系统证书默认位置,也自行生成证书并指定
set nss-config-dir=/etc/pki/nssdb
# 下方填入你配置的第三方smtp服务器的地址及端口,如果使用的是云服务器,安全组需要开放465端口(入口和出口)
set smtp=smtps://smtp.163.com:465                         
# 认证方式
set smtp-auth=login
# 下方输入用于发送邮件的邮箱账号
set smtp-auth-user={你的接受者的邮箱账号,例如user@163.com}
# 下方输入上方邮箱的客户端授权码
set smtp-auth-password={你的授权码,例如 UHNQJWXYSHAKWQHSGQNKBKNAQNUFGASAKSJG}
# 设置发信人邮箱和昵称
set from={发信人邮箱账号,即你准备工作的账号,例如example@163.com}

6.重启sendmail

systemctl restart sendmail

7.测试

#单独发送一个语句
  echo "This is test email." | mailx -v -s "巡检报告" {user@163.com}
	#或者发送一个文本
	cat xxx.txt | mailx -v -s "巡检报告" {user@163.com}
	#带附件发送
	cat xxx.txt | mailx -v -s "巡检报告" -a 附件 {user@163.com}

备注:上述流程中的{xxx}内容均为动态变量 请替换成你的相关账户或参数