原来一直在Linux下使用mail命令来发送邮件,但是配置起来特别麻烦,需要配置sendmail的很多东西。而且还必须启动sendmail才能保证邮件发送成功。那么有没有类似于foxmail,outlook这样的邮件客户端软件,并且有命令行的形式,来发送邮件呢。mutt和msmtp提供了一个很好的解决方案。
以下是配置方案:一、安装配置msmtp
1、下载、解压 msmtp
先使用putty等工具登陆ssh
wget http://www.jiankli.com/download/msmtp-1.4.16.tar.bz2
modtime=1217206451&big_mirror=0
tar jxvf msmtp-1.4.16.tar.bz2
2、安装
./msmtp-1.4.16/configure –prefix=/usr/local/msmtp
make
make install
注意红色标记出的目录,因为是解压到那个目录的。不知道为什么不能用yum直接安装,会提示出错。
3、配置msmtp账号
切换到,cd /usr/local/msmtp
新建文件夹etc,mkdir etc
使用vi新建文件,输入:vi /usr/local/msmtp/etc/msmtprc ,编辑内容如下:
# Set default values for all following accounts.
defaults
logfile /usr/local/msmtp/msmtp.log
# The SMTP server of the provider.
account test
# SMTP邮件服务器地址
host smtp.qq.com
# 发送的邮件Email
from test@qq.com
auth login
# 邮件服务器登录账号
user test@qq.com
# 邮件服务器登陆密码
password 123456
# Set a default account
account default : test
Esc,shift+:进入命令模式,输入wq,保存退出。
由于password是明码,所以我们需要修改此文件的权限 chmod 600 .msmtprc
4、测试
/usr/local/msmtp/bin/msmtp youremail@test.com
输入任意字符,然后按Ctrl+D退出,查看邮件是否收到。
由于设置了日志,可以到 /usr/local/msmtp/msmtp.log,查看日志,发信成功失败都会有记录。
二、安装配置mutt
1、一般Linux都会默认安装mutt,CentOS也不例外
可以使用which mutt查看mutt安装的路径,如果没有安装可以使用 # yum install mutt
2、编辑mutt配置文件
vi /etc/Muttrc ,编辑mutt的总设置,修改以下几行
set from=”发送邮件地址”
set sendmail=”/usr/local/msmtp/bin/msmtp”
set use_from=yes
set realname=”发件人”
set editor=”vi”
发件地址最好与msmtp设置的账号相同,否则可能会出错。
vi ~/.muttrc , 编辑根目录下的设置
set envelope_from=yes
set from=”发送邮件地址”
set realname=”发件人”
set use_from=yes
3、测试一下mutt是否有效
echo “测试测试” | mutt -s “测试” 测试邮件地址
echo “test” |mutt -s “my_first_test” test@qq.com
下面就可以使用mutt进行邮件备份等工作了,结合cron使用,可以实现的功能相当多。