首页 > 学技术 > 技术网文 > Linux Shell > 正文

[保留] mutt+msmtp轻松实现邮件自动发送功能


来源 chinaunix.net 酷勤网整理

由于使用telnet 25端口发送邮件丢件率较高,所以改进了发送的方式。
 
原先使用3种自动发送邮件的方式:
 
1、expect编写一段telnet到邮件服务器的脚本,这个方法很多服务器是拒绝被使用的,而且丢信率太高。
 
2、搭建一个MTA(邮件传输代理),sendmail或POSTFIX都能很好的实现邮件转发功能,缺点是只能使用本机的mail域名发送给用户,而且在不需要安装MTA的服务器上无法实现自动发送功能。
 
3、mutt+msmpt+shell,轻松实现邮件自动发送并且使用灵活,不需要MTA也能发送信件。
 
三种方案中的第三种比较适合我现在的需求。
 
mutt是一个MUA(邮件用户代理),本身不负责发送邮件或接收邮件,如果需要发送邮件需要调用msmtp,msmtp是一个简单灵活的MTA,并且设置极为方便。
 
使用环境:centos4.1
默认默认环境已安装mutt1.4.1
msmpt1.4.3 从http://rpm.pbone.net/index.php3/stat/4/idpl/2816543/com/msmtp-1.4.3-2.i586.rpm.html下载 
 
rpm -ivh msmtp-1.4.3-2.i586.rpm
 
安装完毕后开始设置mutt和msmtp。
 
[color=Red]MUTT[/color] 
系统全局设置/etc/Muttrc,如果使用某个系统用户,可以在~/.muttrc中设置。
 
vi .muttrc
 
set sendmail="/usr/bin/msmtp -a your_account"
set realname="your_email"
set use_from=yes
set editor="vim"
 
[color=Red]MSMTP[/color]
 
创建~/.msmtprc和~/.msmtp.log,分别为配置和日志文件。
 
vi .msmtprc
 
account default
host smtp.domain.com
from your_email_address
tls on
auth on
user [email]user_name@domain.com[/email]
password your_password
 
account default : dominic
 
由于password是明码,所以我们需要修改此文件的权限。
chmod 600 .msmtprc
 
到这里,你可以使用mutt来发送邮件了,我们测试一下。
echo "test" |mutt -s "my_first_test" [email]somebodyone@yahoo.com[/email] -c [email]somebodytwo@yahoo.com[/email] 
 
-s "subject" 
-c "carbon-copy"
 
 
观察.msmtp.log文件,如果有错会在日志文件中被报告出来,当然,成功发送的日志也会出现在此日志文件内。
 
到这里发送邮件的过程已经全部完成,接下来要做的事就简单了,我们假设每天凌晨定时发送信件给公司某用户,可以编写脚本处理。
 
mail.sh
 
#!/bin/sh
content="you can tell your colleague what something to do at tomorrow"
 
echo "$content" |mutt -s "hi Jacky" Jacky's_email 
 
 
 
OK,上面这些就是我实现自动发送邮件的全部过程,怎么样,很轻松吧!



 寂寞烈火 回复于:2006-05-22 18:18:00

真的很奇妙哟~!听说过mutt,没用过!~ ^_^


 cuci 回复于:2006-05-22 19:04:25

而且mutt还能发送带附件的邮件


 boyhyc 回复于:2006-05-22 19:53:59

学习一下看看


 dominic_80 回复于:2006-05-23 11:05:24

是的,MUTT -a  是粘贴附件的,并且MUTT可以发送HMTL格式的邮件,看/etc/Muttrc才知道,原来MUTT有那么强大。
我现在用的报警脚本、统计脚本全改成了mutt发送,效果很好,不会丢信而且支持HMTL。


 linyin 回复于:2006-05-23 15:24:26

想知道MUTT如何收发GMAIL和HOTMAIL的邮件


 zylinux 回复于:2007-05-03 09:18:38

刚刚弄了个好的 窗口管理器 现在看到了  mutt原来听说过 好神奇 得好好弄弄




原文链接:http://bbs.chinaunix.net/viewthread.php?tid=759607
转载请注明作者名及原文出处



收藏本页到: