一年前写过一篇《使用mutt+msmtp在Linux命令行界面下发邮件》,但是最近想照着文中的办法解决新的问题时发现又有新的疑惑了,所以就有了今天这篇“续集”。

首先说说msmtp。如果你仅仅想在Linux下发送邮件,那么只靠它就能实现了,只需要配置好如何连接到相应的SMTP服务器即可,以下我就以腾讯企业邮为例,说一下具体的步骤(以下皆为root用户):

1. apt-get install msmtp

2. vi ~/.msmtprc && chmod 600 ~/.msmtprc

defaults
auth on
tls on
tls_starttls off #这个必须显式声明,折腾好久
tls_trust_file /etc/ssl/certs/ca-certificates.crt account freemail
host smtp.exmail.qq.com
port 465
from chend@qq.com.cn
user chend@qq.com.cn
password XXXXXX
logfile ~/msmtp.log account default : freemail

3. 测试:echo "a test mail." | msmtp --debug --file=./.msmtprc 1234567@qq.com

接下来说说mutt。mutt是一个邮件客户端,不过我猜测它无法单独实现发送邮件的功能,必须依赖类似msmtp这样的工具,反正网上基本都是这两者的结合使用。我将采用编译源代码的方式来安装mutt,原因是通过apt-get的方式会将Postfix一起装上。以下是具体步骤(以下皆为root用户):

1. apt-get install libncurses5-dev

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

3. vi ~/.muttrc    # 默认的muttrc文件在这里:/usr/local/etc/Muttrc

set sendmail="/usr/bin/msmtp"
set realname="监控系统"
set use_from=yes
set editor="vi"

4. 测试:echo "邮件正文" | mutt -s "邮件主题" 1234567@qq.com

2016-11-2更新:

闲来无事,想研究一下网上说的用Mutt+IMAP来实现收取邮件的方法,唯一要注意的是在编译时请加上--enable-imap参数,其余的就按照网上的文章操作即可。

附上腾讯企业邮的SMTP信息:

root@ubuntu:~# msmtp --host=smtp.exmail.qq.com --serverinfo --tls=on --tls-trust-file=/etc/ssl/certs/ca-certificates.crt
SMTP server at smtp.exmail.qq.com ([183.57.48.39]), port 25:
smtp.qq.com Esmtp QQ Mail Server
TLS certificate information:
Owner:
Common Name: pop.qq.com
Organization: Shenzhen Tencent Computer Systems Company Limited
Organizational unit: R&D
Locality: Shenzhen
State or Province: Guangdong
Country: CN
Issuer:
Common Name: GeoTrust SSL CA - G3
Organization: GeoTrust Inc.
Country: US
Validity:
Activation time: Tue 06 Sep 2016 05:00:00 PM PDT
Expiration time: Fri 07 Dec 2018 03:59:59 PM PST
Fingerprints:
SHA1: 45:62:5E:9F:41:60:97:3F:18:E9:FA:53:FE:A5:DA:03:0C:58:55:4C
MD5: DE:DF:05:9C:22:71:F0:91:83:D0:0B:A8:01:04:06:82
Capabilities:
SIZE 73400320:
Maximum message size is 73400320 bytes = 70.00 MiB
PIPELINING:
Support for command grouping for faster transmission
STARTTLS:
Support for TLS encryption via the STARTTLS command
AUTH:
Supported authentication methods:
PLAIN LOGIN

使用mutt+msmtp在Linux命令行界面下发邮件(续)的更多相关文章

  1. 使用mutt+msmtp在Linux命令行界面下发邮件

    mutt命令执行了却发送不了邮件, 搜索了一会才明白原来是mutt需要一个发信的程序, msmtp刚好是一个不错的选择. 1. apt-get install mutt msmtp (安装过程中会弹出 ...

  2. mutt+msmtp做linux邮件客户端

    mutt+msmtp做linux邮件客户端 1. 安装配置msmtp l  安装 wget https://sourceforge.net/projects/msmtp/files/msmtp/1.4 ...

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

      下载MSMTP wget http://nchc.dl.sourceforge.net/sourceforge/msmtp/msmtp-1.4.17.tar.bz2 tar xvf msmtp-1 ...

  4. linux下发邮件

    一. ubuntu中使用第三方mail 用qq地址有安全问题,可能是我的qq设置了安全限制,使用163邮箱可以 1. 安装个软件 apt-get install heirloom-mailx 2. 改 ...

  5. CentOS 6使用mutt+msmtp发送邮件

    转:http://www.tuicool.com/articles/YRnQVfq CentOS系统下如果希望向外域发送邮件,需要配置sendmail+dovecot等一系列工具.其实不用这么麻烦,只 ...

  6. MUTT+MSMTP利用163服务器发送邮件

    监控系统发送告警邮件,我们自己搭建邮件服务器,成本较高,所以可以使用163等第三方MTA帮助我们发送.MUTT+MSMTP是一个很好的选择,具体实现如下: tar -xvf msmtp-1.6.5.t ...

  7. mutt+msmtp实现在shell环境中发送电子邮件

    作者:邓聪聪 为了自动化接收服务端的文件备份信息,利用mutt+msmtp在shell环境中发送电子邮件,轻松高效的完成运维工作. 下载msmtp wget http://downloads.sour ...

  8. 如何订阅Linux相关的邮件列表

    转:http://blog.163.com/sunshine_linting/blog/static/44893323201282114012845/ 1.google"linux kern ...

  9. 配置linux命令行界面的 文件显示颜色

    在linux命令行界面下使用ls命令时,有时会看见显示的文件会有不同的颜色,因为linux的文件没有后缀名这个概念(Windows系统中的文件会有后缀名,从而可以将文件标识为不同类型),显示不同的颜色 ...

随机推荐

  1. Linux如何下解压windows下的.zip和.rar文件

    Linux自带的unzip命令可以解压windows下的zip格式的压缩文件. 如何unzip没安装,可以yum 安装下: yum -y install unzip unzip命令 语法:unzip ...

  2. Extjs 制作柱状图

    在JSP页面制作柱状图,可以根据数据的变化动态实时的变化 主要是使用EXTJS自带的插件达到效果 Ext.require('Ext.chart.*'); Ext.require([ 'Ext.Wind ...

  3. 记录一下两个比较常用的md5加密算法

    第一个,计算字符串的md5值 public static String getMD5(String s){ String newString = null; byte[] inputByteArray ...

  4. Python验证码6位自动生成器

    Python验证码6位自动生成器

  5. git workflow

    1) fork map-matcher.git repo 2) add ssh-keygen public key to gitlab 3) clone repo git clone git@git. ...

  6. 开发基于Edge渲染内核的浏览器应用

    在使用Edge之前,我们先来看看UWP(Universal Windows Platform)平台.微软研发了多种设备平板.手机.Xbox.个人电脑等,在此之前,如果需要给每台设备开发程序,都需要对应 ...

  7. 开发微信App支付

    1.首先到官方下载Demo,地址:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=11_1 下载后的目录结构如下:

  8. HTML中图像代替提交按钮

    1. 用图像代替提交按钮 当只有一个提交按钮的时候 ,可以简单的实现,不用添加事件函数,代码是: <input type = "image"' name = ".. ...

  9. Android笔记:android的适配

    public int Dp2Px(Context context, float dp) { final float scale = context.getResources().getDisplayM ...

  10. error LNK2019:unresolved external symbol

    error LNK2019:unresolved external symbol 这个错误是指程序不认识函数.具体的说就是.h文件中定义并没有实现,这就是库出现了问题. 遇到这个问题,第一步就要看是哪 ...