在 Phabricator 中配置邮件

在 Phabricator 中配置邮件

使用 bitnami 镜像进行全新安装后,我按照指示设置邮件程序。

它看起来像这样:

[
  {
    "key": "stmp-mailer",
    "type": "smtp",
    "options": {
      "host": "server",
      "user": "user" ,
      "port": 587,
      "password": "passwd",
      "protocol": "tls"
    }
  }
]

此后,如果我尝试从测试应用程序发送邮件,我会收到以下消息:

EXCEPTION: (RuntimeException) stream_socket_enable_crypto(): SSL operation failed with code 1. OpenSSL Error messages:
error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed at [<arcanist>/src/error/PhutilErrorHandler.php:263]
arcanist(head=stable, ref.stable=ac54d61d7af2), phabricator(head=stable, ref.stable=86ad69863930)

经过一番搜索,我发现我可以告诉 Arcanist绕过证书。但是,我无法使用 arcanist 运行几乎任何东西。示例:

$  arc set-config https.blindly-trust-domains '["example.com"]'
[2020-12-14 18:48:55] EXCEPTION: (TypeError) Argument 1 passed to ArcanistBlindlyTrustHTTPEngineExtension::setDomains() must be of the type array, string given, called in /opt/bitnami/arcanist/scripts/arcanist.php on line 304 at [<arcanist>/src/configuration/ArcanistBlindlyTrustHTTPEngineExtension.php:10]
arcanist(head=stable, ref.stable=ac54d61d7af2)
  #0 ArcanistBlindlyTrustHTTPEngineExtension::setDomains(string) called at [<arcanist>/scripts/arcanist.php:304]

但如果我运行 get-config,也会发生同样的情况

这次崩溃是正常现象还是某种配置错误?

秘法师版本:秘法师 ac54d61d7af20f5d65ba889974f23a86bfb6cd57(2020年10月19日)

- 更新 -

运行以下命令:

openssl s_client -starttls smtp -connect MAIL_SERVER:587

产生几个错误,随后是证书

erify error:num=20:unable to get local issuer certificate
verify return:1
depth=0 CN = XXX
verify error:num=21:unable to verify the first certificate

然后我尝试将证书提取到 .pem 文件中,然后使用 update-ca-certificates 添加它,这似乎有效。但我看不出有什么区别。

答案1

尝试测试各个组件。您可以直接使用 openssl 来排除 arcanist 是问题的根源:

openssl s_client -starttls smtp -connect example.com:587 -servername example.com

验证目标 TLS 证书是否设置正确并从本地计算机进行验证,然后检查您的服务器是否也可以验证它。每个步骤的失败都指向不同的问题。目标 SMTP 服务器的证书可能已过期或无效,或者您的服务器可能缺少允许您验证 SMTP 服务器正在使用的根证书。

如果一切正常,您会在输出中看到以下信息:

Verify return code: 0 (ok)

如果两个测试都显示正常,那么您可能必须开始向 arcanist 添加调试代码,以查看是否可能导致问题。

相关内容