sendEmail
sendEmail是一个轻量级,命令行的SMTP邮件客户端。如果你需要使用命令行发送邮件,那么sendEmail是非常完美的选择:使用简单并且功能强大.这个被设计用在php、bash、perl和web站点使用。
1.开启postfix服务
作为smtp服务的agent端,不管是发往本地的邮件还是发往互联网上的邮件,此服务都要开启
systemctl status postfix 查看postfix服务是否开启
systemctl start postfix 开启postfix服务
2.安装SendEmail
wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz
如果出现已上内容需要先安装wget
配置好yum仓库后使用命令
yum install wget
此时就可以使用wget下载SendEmail
解压压缩包
tar -zxvf sendEmail-v1.56.tar.gz
3.配置文件
默认配置路径/etc/mail.rc
vim /etc/mail.rc
文件最后一行处加上几行配置
# 发件人-往外发送邮件的邮箱
# 我这里使用一下QQ邮箱,但还是建议使用163
set from=123456@qq.com
#SMTP协议
set smtp=smtp.qq.com
set smtp-auth-user=123456@qq.com
# 注意这个密码并不是发件人邮箱的登录密码,而是smtp服务授权的密码
set smtp-auth-password=xxxxxxxxxx
set smtp-auth=login
不同邮箱SMTP协议:
QQ邮箱: set smtp=smtp.qq.com
网易162邮箱: set smtp=smtp.163.com
3.SMTP开启
这里只介绍两种邮箱的smtp开启方式
1.163网易邮箱
点击开启服务,获取短信验证码后开启
没错,这就是我们配置文件里smtp-auth-password的值了
set smtp-auth-password=xxxxxxxxxx
2.QQ邮箱
一样点击邮箱设置
选中账户,滑动到下方
4.发送邮件
使用mailx命令发送邮件,或mail命令,mail是mailx的软链接
echo "测试邮箱内容"|mailx -s 标题 Receive@qq.com
或
mail -s 标题 Receive@163.com < file
# Receive@xxx.com为收件人邮箱地址。
# 第二个命令将file文件里的内容作为邮箱内容发送
邮件发送成功
写入shell脚本测试
两个邮箱都可以互相发送成功,自行测试。如使用QQ邮箱有莫名报错,建议尝试使用163邮箱哦