20

我尝试将 jenkins 配置为使用 gmail 作为 POP 提供商发送电子邮件通知,但我无法成功

SMTP server - pop.gmail.com
Default user e-mail suffix - @gmail.com
Sender E-mail Address - Foobar CI <your.email@gmail.com>

Use SMTP Authentication - yes
User Name - your.email
Password - p******d

Use SSL - yes
SMTP Port - 995
Reply-To Address - noreply@gmail.com
Charset - UTF-8

测试失败:连接被拒绝

javax.mail.MessagingException:无法连接到 SMTP 主机:pop.gmail.com,端口:995;嵌套异常是:java.net.ConnectException:连接被拒绝:连接

4

8 回答 8

35

Google SMTP 服务器的主机名是 smtp.gmail.com,如果您使用 SSL,那么正确的端口是 465。

POP 服务器通常只用于接收邮件,而不是发送邮件。

于 2012-11-23T07:00:08.970 回答
26

以下是更新的 gmail SMTP 服务器配置:

Gmail SMTP server address: smtp.gmail.com
Gmail SMTP user name: Your full Gmail address (e.g. example@gmail.com)
Gmail SMTP password: Your Gmail password
Gmail SMTP port: 465
Gmail SMTP TLS/SSL required: yes

这种配置对我来说很好用。

于 2014-03-08T08:56:50.337 回答
23

由于谷歌增加了安全措施,上述配置不起作用。需要在触发邮件的 Gmail 帐户中进行额外配置。此步骤授权 Jenkins 等应用使用 Gmail 帐户。

https://support.google.com/accounts/answer/6010255

转到“我的帐户”中的“不太安全的应用程序”部分。在“访问安全性较低的应用”旁边,选择开启。(G Suite 用户请注意:如果您的管理员锁定了不太安全的应用帐户访问权限,则此设置会隐藏。)

成功触发此电子邮件后。

于 2016-03-23T08:01:07.327 回答
20
  1. 获取应用程序专用密码

    • 登录 gmail 帐户 >> 导航到设置 >> 隐私和安全设置

    • 设置两步验证设置(因为没有两步验证我们无法生成应用程序专用密码)

    • 在 gmail 帐户中设置两步验证设置后,导航回安全和隐私设置

    • 单击应用程序特定密码>>在下拉列表中将应用程序的名称指定为 Jenkins (谷歌默认情况下没有针对 Jenkins 的任何特定应用程序密码设置) >>这将生成密码记下生成的密码

注意由于密码对您的 gmail 帐户具有全面控制权,因此泄露可能会导致严重后果

  1. 设置 SMTP 配置以发送 gmail

    • 登录后从仪表板导航到以下路径管理Jenkins>> configure system>>scroll down to email notification section

    • 输入以下参数

      smtp server : smtp.gmail.com
      default user email suffix : @gmail.com
      
    • 选择高级

    • 检查 smtp 身份验证

      username : (Your gmail id)
      password : (application specific password generated from previous step)
      
    • 检查使用 SSL

      SMTP port : 465
      Reply to address : noreply@gmail.com(optional)
      Charset : UTF-8 (by default it is UTF-8)
      
    • 选择测试配置邮件

      Test e-mail recipient : <enter recipient email id >
      

单击测试配置,它将向收件人电子邮件 ID 发送测试邮件

于 2018-03-01T10:56:44.487 回答
4

以下屏幕截图说明了从 GMail 发送电子邮件所需的电子邮件配置。

以下屏幕截图说明了从 GMail 发送电子邮件所需的电子邮件配置。

于 2017-09-20T23:07:33.377 回答
4

注意

最新的mailer 插件版本 1.24 有一个错误,即使您有正确的配置,也会导致测试配置失败(需要身份验证)。从官网下载1.23(.hpi文件)版本,然后从manage plugin->advanced上传。重新启动jenkins,它应该可以正常工作。

只需要开启安全性较低的应用访问,无需开启两步验证。

于 2019-08-20T16:30:42.947 回答
2

我在Zapier的免费套餐上成功地做到了这一点(无需在 gmail 中打开“不太安全的应用程序”

  1. 安装 Jenkins 通知插件。您可能需要重新启动 Jenkins
  2. 转到 Zapier 并创建一个 Jenkins 触发器
  3. 在你的项目下的Jenkins中:Configure -> Job Notifications,填写选项。使用 JSON 似乎对我有用。
  4. 在 Zapier 中添加 Gmail 操作。您应该可以在您的 gmail 帐户中通过单点登录进行设置。

PS。除了它对我有用之外,我没有理由推荐 Zapier,并且有一个解决方案不会损害我的 gmail 帐户。

于 2018-11-25T04:40:50.527 回答
2

以下设置对我来说工作正常。


Jenkis 版本:2.204.1
Mailer 插件版本:1.30

SMTP 设置:

SMTP 服务器 - smtp.gmail.com
使用 SMTP 身份验证 - 检查
用户名 - your-gmail-username@gmail.com
密码 - your-gmail-password for the above账号>

注意:在您的谷歌帐户设置中,必须关闭 2 因素身份验证,并且必须打开不太安全的应用程序访问权限

使用 SSL - 检查
SMTP 端口 - 465
字符集 - UTF-8
测试连接 - 提供收件人电子邮件地址

于 2020-01-18T07:02:07.227 回答