使用mutt+msmtp做linux邮件客户端

林继 VPS 知识 3,890 共写了1293个字 (2011-11-18 22:32:11) 没有评论 打印 扫描二维码 百度未收录

如何停止sendmail服务如何停止

# service sendmail stop
# chkconfig sendmail off

或者从自动启动中删除
chkconfig –del sendmail
也可以设置当前运行等级 不启动
chkconfig –level 当前运行等级 off

———————————————-

1、利用MUTT和MSMTP 登录163的邮件服务器发邮件
为什么非要登录163邮箱呢?因为我测试过qq邮箱、yahoo还有sina的邮箱都发布出去,只有163的一连就通了,我估计是邮箱设置里验证的关系,也不想去深研究他了。下面给出具体步骤
首先去163申请个免费邮箱,收费免费都一样
下载MSMTP

  1. wget http://nchc.dl.sourceforge.net/sourceforge/msmtp/msmtp-1.4.25.tar.bz2
  2. tar xvf msmtp-1.4.25.tar.bz2
  3. cd msmtp-1.4.25
  4. ./configure --prefix=/usr/local/msmtp
  5. make
  6. make install
  7. cd /usr/local/msmtp/
  8. mkdir etc #配置文件目录和配置文件都要自己建
  9. cd etc
  1. vi msmtprc # 手动创建配置文件
  2. account default 
  3. host smtp.163.com # 你的发送smtp邮件服务器
  4. port 25           # smtp 端口
  5. from xman@163.com # 显示来自的邮件地址
  6. auth login # 这里如果使用on的话会报 "msmtp: cannot use a secure authentication method"错误
  7. tls off    # 不使用SSL
  8. user xman@163.com # 邮箱用户名
  9. password xmanufo  # 邮箱密码,这里可是明文的,如果你觉得不安全可以把文件改为600属性
  10. logfile /var/log/mmlog  # 日志文件

[level l=10]

  1. # QQ企业邮箱,比较慢 
  2. account default 
  3. host smtp.exmail.qq.com
  4. port 25
  5. from admin@linji.cn
  6. maildomain linji.cn
  7. auth login
  8. user admin@linji.cn
  9. password xxxxxx
  10. logfile /var/log/msmtp.log
  1. # 用163邮箱即发即达
  2. account default 
  3. host smtp.163.com
  4. port 25
  5. from saboha@163.com
  6. auth login
  7. tls off
  8. user saboha@163.com
  9. password xxxxxx
  10. logfile /var/log/msmtp.log

[/level]

保存退出。
简单测试一下

  1. /usr/local/msmtp/bin/msmtp xxx@163.com
  2. chown daemon /etc/msmtprc
  3. echo "测试一下" | mutt -s "管理信息" xxx@163.com
  4. #msmtp xxx@163.com    #发送一封邮件至 xxx@163.com 测试,按Ctrl +D 结束

随便输入一些内容用ctrl+d结束。然后到邮箱看看有没有收到,如果这里提示错误按照错误代码找原因,或者看看上面的日志文件

2、下面开始安装 MUTT
如果是CentOS的话直接用yum就好了
安装mutt 配合msmtp 使用远程SMTP非交互式发信(推荐)

  1. yum install mutt

安装完成后要手动给他建立一个配置文件,

  1. vi /etc/Muttrc
  2. set sendmail="/usr/local/msmtp/bin/msmtp" #你的msmtp命令路径
  3. set use_from=yes
  4. set realname="xman@163.com"

简单的4行就可以了
好了,让我们来测试一下吧!

  1. echo "testmail" | mutt -s "测试" -a /etc/hosts ufo@sina.com

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

  1. mutt -s "测试" -a /etc/hosts -a /etc/apple ufo@sina.com < /tmp/imax.txt

这个的意思就是以 /tmp/imax.txt 文件的内容作为邮件内容。
好了,就这么简单

3、使用mail 命令配置合msmtp发送邮件

  1. #yum install mailx   #mail 命令在这个软件包中

在 ~/.mailrc 加入如下一行#vim /root/.mailrc   #不建议使用root 用户

  1. set sendmail="/usr/local/msmtp/bin/msmtp"

如果不建立~/.mailrc 文件, 备份后删除sendmail 程序,链接msmtp 过去也是可以的
发一封邮件到 xxx@qq.com

  1. #echo "这是邮件正文" |mail -s "这是标题" xxx@qq.com#mail -s "这是标题" xxxx@qq.com < /etc/rc.local  #直接使用mail命令把文件发邮件出去

4、修改php.in

  1. sendmail_path ="/usr/local/msmtp/bin/msmtp -t -i"

5、重启VPS

本文来自:
http://storysky.blog.51cto.com/628458/293005
http://blog.csdn.net/russle/article/details/4504668
http://www.deepvps.com/msmtp-google-apps-replace-sendmail.html

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!

发表评论

电子邮件地址不会被公开。 必填项已用*标注

< >