线上环境配置邮件发送服务(Jenkins、Gitlab 等)

这几天在配置一些线上软件的邮件发送服务时候遇到了很多坑,记录一下,好记性不如烂笔头。

云服务中配置邮件发送服务注意事项

一般的云服务商都是在网络层屏蔽对外请求 25 号端口,目的是防止产生大量的垃圾邮件,国内外主流的云服务商都是采用了这条规则。当然有些云服务在后台提出工单之后会允许连接 25 号端口,但有些云服务采用“多一事不如少一事”的原则,拒绝开通。

如果对方拒绝开通,建议使用 SSL 端口,一般的邮件服务商都会提供的,例如网易免费企业邮的 SSL SMTP 端口是 994,不受此规则的影响。

Jenkins 配置邮件发送服务

配置邮件服务的时候采用 SMTP 机制,一定要注意到 SMTP 中的用户名要和 Jenkins Location 中的 “系统管理员邮件地址” 一致,否则无法发送邮件。

管理员邮件地址
SMTP配置中的邮件地址
  • 如果你是采用的一般邮箱的 SMTP 邮箱,错误提示会比较友好 “553 Mail from must equal authorized user”,错误栈如下:


    友好的错误提示.png
  • 如果你采用的是一些企业邮箱(例如网易企业邮箱),错误提示会让你莫名其妙,误导你排查问题,例如 “com.sun.mail.smtp.SMTPSenderFailedException: 550 5.7.1 authentication is required”,错误栈如下:


    糟糕的错误提示.png

Gitlab 配置邮件发送服务

配置的时候比较简单,主要分为通过普通 SMTP 端口和 SSL SMTP 端口进行连接两种方式。

  • 普通 SMTP 端口连接方式


    普通 SMTP 端口连接方式
  • SSL SMTP 端口连接方式


    SSL SMTP 端口连接方式
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容