Linux 下如何用 mutt 设置邮件报警

发布于 2025-01-29 16:55:52 字数 2915 浏览 6 评论 0

在 Linux 里,很多人都会使用到邮件报警,而且这方面的软件也众多,常见的像 SendMail, sendEmail, Postfix 等等,它们的优缺点我就不说了,使用上也各有所爱。

今天我要给大家介绍的 mutt,也许大家也不陌生,网上太多关于 mutt 和 sendmail 或者跟 msmtp 合作使用的教程。其实,mutt 非常的强大只要你仔细研究一下 官方文档

系统环境:CentOS 6.5

0、在正式安装 mutt 之前

先检查一下两个安全组件。

OPENSSL:

openssl version -a #检查安装及版本信息

SASL(系统一般已经自带):

rpm -qa | grep sasl

查询到如下即可:

cyrus-sasl-gssapi-2.1.23-15.el6_6.2.x86_64
cyrus-sasl-devel-2.1.23-15.el6_6.2.x86_64
cyrus-sasl-lib-2.1.23-15.el6_6.2.x86_64
cyrus-sasl-plain-2.1.23-15.el6_6.2.x86_64
cyrus-sasl-2.1.23-15.el6_6.2.x86_64

如果 sasl 没有运行,先启动:

/etc/init.d/saslauthd start

最好是加入到自启动项目中去:

chkconfig saslauthd on

因为发送邮件的时候会需要用到安全认证。

1、安装

官方网站上下载最新版本。

# 解压后进入 mutt 目录
cd /root/mutt-1.6.0

# 编译:
./configure --prefix=/usr/local/mutt --enable-pop --enable-smtp --with-ssl --with-sasl
# 说明
--enable-pop 启用 pop
--enable-smtp 启用 smtp
--with-ssl --with-sasl 在启用上述协议的情况下,必须使用更安全的加密

PS: 因为我用的测试帐号是 QQ 邮件,qq 邮件使用 smtp 协议的时候要求必须使用 ssl 安全连接,而在 mutt 里使用安全连接又必须使用 sasl 加密,所以上述 2 个安全组件在编译安装的时候得加上。要不然发送邮件的时候会出现“SMTP authentication requires SASL”或者另外一个跟 ssl 有关的错误。

# 安装
make && make install

2、配置文件

方法 1:

安装好后,拷贝一份安装目录下/usr/local/mutt/etc/的配置文件 Muttrc 到/root/.muttrc,也可以直接修改配置文件,设置读取的配置文件路径到安全目录,这样就无需拷贝了。

默认设置:

set alias_file="~/.muttrc"

方法 2:

cat /usr/local/mutt/etc/Muttrc | grep -v ^# | grep -v ^$ > ~/.muttrc

这样都可以得到默认的配置文件信息。

安装完成后,我们仅需要设置的信息如下:

set folder="./Mail" #设置本地的收件箱,如果不设置发送邮件的时候会提示
set from="123456789@qq.com" #设置发件人地址
set realname="张三" #发件人姓名
set smtp_pass="999999" #密码
set smtp_url="smtps://123456789@smtp.qq.com:465/" #发件人帐号和邮件主机信息,QQ 邮箱必须使用安全连接
set use_envelope_from=yes #使用自定义发件人邮箱
set use_from=yes #使用自定义发件人姓名

3、测试

mutt-1.6 版本的发送邮件的语法跟 1.4 版本有些微的差别,具体命令如下:

mutt -s "Title 使用" -a /usr/local/mutt/content.txt -- rep@shoujianren.com < /root/1

说明

-s 邮件标题

-a 附件

-- 后面跟上收件人信息

< 后面是邮件正文内容,也可以在前面 echo xxx 的形式给出。如下:

echo xxx|mutt -s "Title 使用" -a /usr/local/mutt/content.txt -- rep@shoujianren.com

看吧,无需与其它软件合作,mutt 就可以独立完成发送邮件,当然,接收也没问题,只是在邮件报警这个需求上用不着。

其中一个错误信息:

[root@x63 mutt]# echo "Hello" | mutt -s "Title" -- xxx@xxxx.com
TLSv1.2 connection using TLSv1/SSLv3 (AES256-SHA256)
SMTP authentication requires SASL
Could not send the message.

这是认证失败了。

发送成功的信息:

[root@x63 mutt]# echo "Hello3" | mutt -s "Title" -- xxx@xxxx.com
TLSv1.2 connection using TLSv1/SSLv3 (AES256-SHA256)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

文章
评论
1052 人气
更多

推荐作者

李珊平

文章 0 评论 0

Quxin

文章 0 评论 0

范无咎

文章 0 评论 0

github_ZOJ2N8YxBm

文章 0 评论 0

若言

文章 0 评论 0

南…巷孤猫

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文