none
Проблема с Database Mail после внедрения сервера Exchange 2016 RRS feed

  • Вопрос

  • Ранее на SQL Server (проверено на версиях 2005, 2014) был настроен компонент Database Mail. Для отправки почты использовался сервер Exchange 2010. использовалось защищенное подключение SSL по порту 587. Предоставлялись учетные данные в разделе Basic Authentication.

    Недавно в организацию был внедрен новый сервер Exchange 2016. Планируется полный переход на новую версию Exchange. Для нового сервера был выпущен сертификат из доверенного центра DigiCert. В общем, этот сервер работает. К нему можно подключиться по https к OWA.

    Но изменить настройку Database Mail я не смог. При попытке отправить тестовое письмо в журнале регистрируется ошибка:

    The mail could not be sent to the recipients because of the mail server failure. (Sending Mail using Account 2 (2017-03-31T11:08:24). Exception Message: Cannot send mails to mail server. (Удаленный сертификат недействителен согласно результатам проверки подлинности.).

    Но запуск команды get-exchangecertificate показывает, что сертификат установлен:

    [PS] C:\Windows\system32>get-exchangecertificate

    Thumbprint                                Services   Subject
    ----------                                --------   -------
    1B9236A6176BE886AEC3DAB86F3505C430516445  ....S..    CN=Microsoft Exchange Server Auth Certificate
    14E4B40D97DAF4F134DB7266F36FDEB89558C966  I..WS..    CN=srv-mail01
    341A38252C185D8B2D4D319D9DB3DAEE0557A4A0  .......    CN=WMSvc-SHA2-SRV-MAIL01
    F3DA31E73D2D7BAC1E30146EF74D3DFAF51C35E7  .P.WS..    CN=mail.company.com, OU=IT-Service, O="Company, LLC", L=M...

    Вижу в Интернете, что я не один такой. Но решения своей проблемы я так и не нашел.

    Прошу помощи.

    31 марта 2017 г. 8:22

Ответы

  • А у вас разве есть на сервере сертификат, который содержит это имя? По предыдущим сообщениям вижу, что нет. srv-mail01, как я понимаю, это самоподписанный сертификат Exchange.
    • Помечено в качестве ответа MikAndr 31 марта 2017 г. 11:36
    31 марта 2017 г. 10:38

Все ответы

  • Добрый день!

    Если Я вас понял, у вас не отправляются письма с SQL Server. Создайте Frontend коннектор приема укажите область IP адресов откуда идет отправка ну и конечно порт приема

    Откройте Exchange Management Shell

    Get-ReceiveConnector "Anonymous Relay" | Add-ADPermission -User "NT AUTHORITY\ANONYMOUS LOGON" -ExtendedRights "Ms-Exch-SMTP-Accept-Any-Recipient"
    Anonymous Relay - имя того коннектора который создали,  проверьте



    31 марта 2017 г. 9:20
  • Спасибо за ответ.

    Я думал об этом. Считаю это крайним вариантом, если по-другому не получится. Больше нравится вариант с аутентификацией.

    31 марта 2017 г. 9:30
  • Покажите вывод для данного коннектора:

    Get-ReceiveConnector MyConnector-587 | fl fqdn, AuthMechanism

    Проверьте, что поле FQDN соответствует имени, которое использует SQL сервер.

    Возможно надо будет создать отдельный receive коннектор и выписать сертификат доменным CA.

    31 марта 2017 г. 10:20
  • [PS] C:\Windows\system32>get-receiveconnector

    Identity                                      Bindings                  Enabled
    --------                                      --------                  -------
    MAIL-CAS-N-HUB\Client MAIL-CAS-N-HUB          {[::]:587, 0.0.0.0:587}   True
    MAIL-CAS-N-HUB\Default MAIL-CAS-N-HUB         {[::]:25, 0.0.0.0:25}     True
    MAIL-CAS-N-HUB\System Computers               {0.0.0.0:25}              True
    MAIL-CAS-N-HUB\Служебная почта                {0.0.0.0:25}              True
    SRV-MAIL01\Default SRV-MAIL01                 {0.0.0.0:2525, [::]:2525} True
    SRV-MAIL01\Client Proxy SRV-MAIL01            {[::]:465, 0.0.0.0:465}   True
    SRV-MAIL01\Default Frontend SRV-MAIL01        {[::]:25, 0.0.0.0:25}     True
    SRV-MAIL01\Outbound Proxy Frontend SRV-MAIL01 {[::]:717, 0.0.0.0:717}   True
    SRV-MAIL01\Client Frontend SRV-MAIL01         {[::]:587, 0.0.0.0:587}   True

    [PS] C:\Windows\system32>get-receiveconnector "Client Frontend SRV-MAIL01" | fl fqdn, AuthMechanism


    Fqdn          : srv-mail01.moscow.company.com
    AuthMechanism : Tls, Integrated, BasicAuth, BasicAuthRequireTLS

    В настройках Database Mail стоит адрес mail.company.com которое через CNAME приводит к srv-mail01.moscow.company.com

    Но если поставить srv-mail01.moscow.company.com, то ничего не изменится.

    31 марта 2017 г. 10:33
  • А у вас разве есть на сервере сертификат, который содержит это имя? По предыдущим сообщениям вижу, что нет. srv-mail01, как я понимаю, это самоподписанный сертификат Exchange.
    • Помечено в качестве ответа MikAndr 31 марта 2017 г. 11:36
    31 марта 2017 г. 10:38
  • Fqdn          : srv-mail01.moscow.company.com

    Я про это имя и сертификат.

    31 марта 2017 г. 10:39
  • Огромное спасибо за помощь.

    Действительно, в настройках коннектора стояло fqdn mail01.moscow.company.com. Этого имени не было обозначено в сертификате.

    Изменил fqdn коннктора. Теперь все работает.

    31 марта 2017 г. 11:38