Настройка почтовых рассылок в 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. Пример:

$  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

Является ли этот сбой нормальным или это какая-то неправильная конфигурация?

Версия Arcanist: arcanist ac54d61d7af20f5d65ba889974f23a86bfb6cd57 (19 октября 2020 г.)

-- ОБНОВЛЯТЬ --

Выполнив следующую команду:

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

Попробуйте протестировать отдельные компоненты. Вы можете исключить arcanist как источник проблемы, используя openssl напрямую:

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

Проверьте, что целевой сертификат TLS настроен правильно и проходит проверку с вашего локального компьютера, затем проверьте, может ли ваш сервер также проверить его. Сбои на каждом из этих шагов указывают на другую проблему. Целевой сервер SMTP может иметь просроченный или недействительный сертификат, или на вашем сервере могут отсутствовать корневые сертификаты, которые позволяют вам проверить тот, который использует сервер SMTP.

Если все работает правильно, вы должны увидеть это в выводе:

Verify return code: 0 (ok)

Если оба теста показывают результат «ОК», то вам, возможно, придется начать добавлять отладочный код в arcanist, чтобы проверить, не является ли он причиной проблемы.

Связанный контент