开发者社区> 问答> 正文

在RequestTracker(RT)里用msmtp通过远程smtp服务器465端口发邮件

SoftLayer(IBM Cloud) 过滤了TCP 25端口 ,Vultr的也可能 过滤了,越来越多的云服务商主动屏蔽了25端口的通讯。

阿里云对新建的ECS实例,也过滤了25端口。

RequestTracker 的工单系统,邮件通知是重要的需求之一,当阿里云ECS实例不能使用25端口发信时,可以尝试配置msmtp使用远程的smtp 465端口来发邮件。

环境:Deiban 8,RT 4.4.2, RT安装在 /opt/rt4 的路径
国内某免费的企业邮箱:smtp服务器地址,smtp.exmail.qq.com;SSL端口:465;邮箱地址:rt @ anqun.org

过程:

1. /opt/rt4/etc/msmtp_wrapper.conf # 在RT配置目录中创建 msmtp 的配置文件,文件属主是web进程用户,即www-data,权限是600,内容如下:
# Set default values for all following accounts.
defaults
port 465
tls on
tls_trust_file /etc/ssl/certs/ca-certificates.crt
# logfile ~/.msmtp.log


account qmail
host smtp.exmail.qq.com
from rt@anqun.org
auth on
user rt@anqun.org
password NiDeMiMa
# auto_from on
tls_starttls off


# Set a default account
account default : qmail



2. /opt/rt4/etc/msmtp_wrapper # 在RT文件配置目录中创建Shell文件,文件属性是web进程用户,即www-data,且有执行的权限,+x,内容如下:
#!/bin/bash
/usr/bin/msmtp -t -C /opt/rt4/etc/msmtp_wrapper.conf
/usr/bin/logger -t RTmailer -p syslog.info -- CALL /usr/bin/msmtp -nt "$@" RETURNED $?



3. /opt/rt4/etc/RT_SiteConfig.pm # 在RT的自定义配置文件中,加入以下一行内容,让RT使用msmtp来发信:
Set( $SendmailPath, '/opt/rt4/etc/msmtp_wrapper');


4. 重启Web服务,以让新的设置生效,测试发信正常



参考:
* https://rt-wiki.bestpractical.com/wiki/Msmtp
* https://wiki.archlinux.org/index.php/msmtp#Server_sent_empty_reply

展开
收起
dongshan8 2017-11-21 10:20:08 5059 0
2 条回答
写回答
取消 提交回答
  • good,精华之。

    -------------------------

    good,精华之。

    2018-01-24 11:26:01
    赞同 展开评论 打赏
  • 阿里云论坛版主,QQ 1978638808
    good,精华之。
    2017-11-21 10:59:33
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
如何运维千台以上游戏云服务器 立即下载
网站/服务器取证 实践与挑战 立即下载
ECS计算与存储分离架构实践 立即下载