Linux使用mutt发送邮件

简介:

一、使用本地邮件服务器发送

1、安装邮件服务器

从 CentOS 6 开始,系统默认自带 postfix 邮件服务器,我们只有默认的即可,如果没有,我们使用如下命令进行安装。

yum install postfix -y

2、安装mutt发件客户端

首先介绍一下 mutt 这个软件,它是一款基于文字界面的邮件客户端,非常小巧,但功能强大,可以用它来读写,回复保存和删除你的邮件,能在 linux 命令行模式下收发邮件附件。

yum install mutt -y

3、配置mutt

在配置文件 /etc/Muttrc 添加如下信息。

#如果你收到的邮件乱码,设置以下信息
set charset="utf-8"
set rfc2047_parameters=yes

#如果你想自定义发件人信息,需要进行如下设置
set envelope_from=yes
set sendmail="/usr/sbin/sendmail.postfix"
set use_from=yes
set from=admin@wzlinux.com
set realname="wzlinux"

4、邮件发送测试

举例加以说明

mutt  3312184@qq.com -s"数据备份" -a /home/backup/master_bak.sql < /root/readme.txt

或者

echo "test" | mutt 3312184@qq.com -s "Licz数据备份" -a /home/backup/master_bak.sql 

这段代码表示,发送邮件到 3312184@qq.com 这个邮箱,邮件主题是“数据备份”,邮件正文内容在 /root/readme.txt 中,邮件中包含附件 /home/backup/master_bak.sql。如果要发送多个附件,需要在每个附件前加 -a 参数。

二、使用第三方邮件服务器发送

1、安装msmtp

之前的postfix无法满足我们调用126或者163的邮箱,我们需要使用 msmtp 发送。

yum install msmtp -y

2、配置msmtp

在家目录创建文件 .msmtprc,添加如下内容

account default
host smtp.126.com             #需要发送邮件的服务器
from wangzan18@126.com              #要从哪个邮箱发出
auth on                 #认证模式
port 25
tls off                    #不需要安全登录
user wangzan18      #邮箱用户
password 123456a             #邮箱密码
logfile /var/log/maillog        #邮件日志路径

3、配置mutt

之前mutt调用的 postfix 发送邮件,现在我们需要改成 msmtp,在 /etc/Muttrc 里面改成如下内容:

set sendmail="/usr/bin/msmtp"
set from=wangzan18@126.com

附录

语 法:

mutt [-nRyzZ] [-e cmd] [-F file] [-m type] [-f file]
mutt [-nx] [-e cmd] [-F file] [-H file] [-i file] [-s subj] [-b addr] [-c addr] [-a file [...] --] addr [...]
mutt [-nx] [-e cmd] [-F file] [-s subj] [-b addr] [-c addr] [-a file [...] --] addr [...]  < message
mutt [-n] [-e cmd] [-F file] -p
mutt [-n] [-e cmd] [-F file] -A alias
mutt [-n] [-e cmd] [-F file] -Q query

参 数:

<文件><地址><地址><邮件文件><配置文件><邮件草稿><文件><类型><主题>,如需转载请自行联系原作者
相关文章
|
Linux
Linux通过mailx向网易163发送邮件
Linux通过mailx向网易163发送邮件 以rsync文件传输校验是否完整为例
355 0
Linux通过mailx向网易163发送邮件
|
1天前
|
运维 Ubuntu Linux
linux发送邮件使用外部邮箱
linux发送邮件使用外部邮箱
|
1月前
|
Shell Linux 数据库
【Shell 命令集合 网络通讯 】Linux 更新邮件别名数据库 newaliases命令 使用指南
【Shell 命令集合 网络通讯 】Linux 更新邮件别名数据库 newaliases命令 使用指南
29 1
|
6月前
|
Linux
Linux通过QQ邮箱账号使用mailx发送邮件
Linux通过QQ邮箱账号使用mailx发送邮件
110 2
|
7月前
|
Java Linux 网络安全
Linux CentOS7搭建邮件服务器并用Foxmail和Java代码发送邮件(下)
Linux CentOS7搭建邮件服务器并用Foxmail和Java代码发送邮件(下)
259 0
|
7月前
|
域名解析 Java Linux
Linux CentOS7搭建邮件服务器并用Foxmail和Java代码发送邮件(上)
Linux CentOS7搭建邮件服务器并用Foxmail和Java代码发送邮件(上)
433 0
|
9月前
|
域名解析 监控 网络协议
Linux 内网发送邮件
有些问题需要第一时间发邮件报警出来,否则漏掉之后比较麻烦。
73 0
|
Linux 数据库 数据安全/隐私保护
Linux基础命令---sendmail发送邮件
sendmail sendmail是postfix中的一个发送邮件的代理程序,它负责发送邮件到远程服务器,并且可以接收邮件。sendmail在发送邮件的时候,默认从标砖输入读取内容,以“.”为结束。
6824 1
|
监控 关系型数据库 MySQL
linux下安装zabbix服务器shell脚本-添加主机-邮件监控报警zabbix-自动化运维
分布式网络监控平台;分为手动和自动安装,添加主机-邮件监控报警zabbix
926 0