Linux下配置用msmtp和mutt发邮件

简介:

Linux下可以直接用mail命令发送邮件,但是发件人是user@servername,如果机器没有外网的dns,其他人就无法回复。此时,有一个可以使用网络免费邮箱服务的邮件发送程序就比较重要了。msmtp就是这样的一个程序。


#1、下载源码包


wget http://sourceforge.net/projects/msmtp/files/msmtp/1.4.31/msmtp-1.4.31.tar.bz2/download


#2、解压


tar -jxvf msmtp-1.4.31.tar.bz2 && cd msmtp-1.4.31


#build and install


./configure --prefix=/usr/local/msmtp && make && make install


#link to /usr/bin


ln -s /usr/local/msmtp/bin/msmtp /usr/bin/msmtp


#3、新建msmtp的配置文件


mkdir /usr/local/msmtp/etc 


mkdir /var/log/msmtp/


vim /usr/local/msmtp/etc/msmtprc


#4、输入如下内容


# Set default values for all following accounts.

defaults


logfile /var/log/msmtp/msmtp.log

# The SMTP server of the provider.

account 163


# SMTP邮件服务器地址

host smtp.163.com


# 发送的邮件Email

from user@163.com

auth login


# 邮件服务器登录账号

user user@163.com


# 邮件服务器登陆密码

password password

# Set a default account

account default : 163


#5、测试msmtp是否配置正确


msmtp test@163.com

[ctrl+d]


#6、安装配置mutt

yum install -y mutt

vim /etc/Muttrc



#输入如下内容:

set sendmail='/usr/bin/msmtp'

set use_from=yes

set realname="user@163.com"

set from=user@163.com


好了,让我们来测试一下吧!

echo "testmail" | mutt -s "测试" -a /etc/hosts user@example.com

这里的-a 是指添加附件,如果是多个附件的话就 多加几个 -a 文件名

还可以这样

mutt -s "测试" -a /etc/hosts -a /etc/apple user@example.com < /tmp/imax.txt

这个的意思就是以 /tmp/imax.txt 文件的内容作为邮件内容。

echo "This is the body" | mutt -s "Testing" user@example.com -a /etc/hosts -a /etc/apple

好了,就这么简单
















本文转自leonardos51CTO博客,原文链接: http://blog.51cto.com/leomars/1771341,如需转载请自行联系原作者








相关文章
|
2月前
|
网络协议 安全 Linux
如何配置Linux端的ftp?
如何配置Linux端的ftp?
140 64
|
5天前
|
Java Linux 网络安全
NIFI在Linux服务区上的部署配置过程是什么?
【10月更文挑战第21天】NIFI在Linux服务区上的部署配置过程是什么?
20 2
|
18天前
|
Ubuntu Linux 编译器
Linux/Ubuntu下使用VS Code配置C/C++项目环境调用OpenCV
通过以上步骤,您已经成功在Ubuntu系统下的VS Code中配置了C/C++项目环境,并能够调用OpenCV库进行开发。请确保每一步都按照您的系统实际情况进行适当调整。
165 3
|
22天前
|
监控 安全 网络协议
快速配置Linux云服务器
【10月更文挑战第3天】快速配置Linux云服务器
|
2月前
|
Oracle Java 关系型数据库
Linux下JDK环境的配置及 bash: /usr/local/java/bin/java: cannot execute binary file: exec format error问题的解决
如果遇到"exec format error"问题,文章建议先检查Linux操作系统是32位还是64位,并确保安装了与系统匹配的JDK版本。如果系统是64位的,但出现了错误,可能是因为下载了错误的JDK版本。文章提供了一个链接,指向Oracle官网上的JDK 17 Linux版本下载页面,并附有截图说明。
Linux下JDK环境的配置及 bash: /usr/local/java/bin/java: cannot execute binary file: exec format error问题的解决
|
2月前
|
Linux 编译器 开发工具
快速在linux上配置python3.x的环境以及可能报错的解决方案(python其它版本可同样方式安装)
这篇文章介绍了在Linux系统上配置Python 3.x环境的步骤,包括安装系统依赖、下载和解压Python源码、编译安装、修改环境变量,以及常见安装错误的解决方案。
69 1
|
2月前
|
Ubuntu Linux
Linux服务器的自动启动可以在哪里进行配置?
Linux服务器的自动启动可以在哪里进行配置?
138 3
|
23天前
|
应用服务中间件 Linux Shell
Linux 配置 Nginx 服务的详细步骤,绝对干货
Linux 配置 Nginx 服务的详细步骤,绝对干货
54 0
|
24天前
|
Unix Linux Go
Linux 使用Yum安装Go和配置环境
Linux 使用Yum安装Go和配置环境
|
2月前
|
域名解析 负载均衡 网络协议
Linux网络接口配置不当所带来的影响
总而言之,Linux网络接口的恰当配置是保证网络稳定性、性能和安全性的基础。通过遵循最佳实践和定期维护,可以最大程度地减少配置错误带来的负面影响。
112 0