none
Outlook Anywere из внешней сети. Роутер pfsense. RRS feed

  • Вопрос

  • Коллеги добрый день.

    Есть группа серверов Exchange - DAG1+DAG2 и NLB1+NLB2. На вторых развернута роль CAS, роль программного nlb-кластера. Через роутер pfsense проброшен порт 443 на ip-адрес, который назначен кластеру. Выпущен сертификат для CAS, который содержит все необходимые имена DNS, включая autodiscover.firma.ru

    Сертификат выпущен внутренней службой сертификации, выпускающим центром, который пролучил свой сертификат от внутреннего корневого центра, на данный момент выключенного. 

    На обоих серверах включен доступ outook anywere, указан внешний FQDN для доступа.

    На клиенте во внешней сети доменный корневой центр добавлен в доверенные центры на машинный аккаунт. Промежуточный центр, выпустивший непосредственно сертификат для CAS - не добавлен никуда.

    Если клиент заходит на https://cas.firma.ru/owa то получает доступ к OWA после введения логина и пароля, предупреждений о сертификате не выдается, просмотр сертификата показывает, что он действующий и доверенный. Если заходить через https://autodiscovery.firma.ru/owa - так же получаешь доступ к OWA.

    Однако при этом настроить Outlook 2013 на клиенте с использованием RPC over HTTPS не получается ни в какую, он запрашивает логин и пароль, долго думает, и сообщает, что необходимо подключение к серверу.

    Что можно еще проверить, как настроить до правильной работы?


    31 июля 2014 г. 16:58

Ответы

  • Докопался до причины проблемы.
    Проблема - в локальной DNS-зоне firma.ru, созданной для переопределения адресов внутренних серверов, чтобы внутренние пользователи ходили по локальным адресам с использованием этой зоны.
    Так же в зоне была добавлена запись pm-cas.firma.ru, являющаяся CNAME на адрес pm-cas.firma.local
    После ее удаления почта заработала снаружи отлично.
    Вопрос. Есть у кого-нибудь ссылки на материал, почитать по данной теме, отчего так произошло?
    • Помечено в качестве ответа Dmitrii Barsukov 15 августа 2014 г. 4:54
    15 августа 2014 г. 4:21

Все ответы

  • 1. Имя pm-cas.что-то-там.ru в сертификате есть? Если нет - надо первыпустить сертификат, добавив это имя.

    2. Посмотрите, указано ли значение msstd:pm-cas.что-то-там.ru в свойстве CertPrincipalName провайдера EXPR (смотреть командой PS Get-OutlookProvider). Если там указано что-то другое или если там пусто и полное имя сервера (в свойствах компьютера) - не msstd:pm-cas.что-то-там.ru, то надо установить его в это значение:

    Set-OutlookProvider EXPR -CertPrincipalName "msstd:pm-cas.что-то-там.ru"


    Слава России!

    31 июля 2014 г. 18:33
  • 1. точное имя pm-cas.firma.ru есть в поле SAN в виде DNS Name=, по крайней мере оно есть в сертификате, который отображается в свойствах подключения к OWA и в консоли сервера CAS.

    2. Значение msstd не было указано, установил указанной командой, ошибка осталась та же.


    31 июля 2014 г. 18:43
  • Здравсвуйте,

    А промежуточный почему не добавляете?

    Логин вводите domain\username?

    Попробуйте использовать Remote Connectivity Analyser

    В проверке поставьте галочку "Ignore Trust for SSL"



    31 июля 2014 г. 19:23
  • Во внешнюю зону DNS соответствующие записи внесли? И почему у вас для внешнего доступа NTLM аутентификация?

    Do not multiply entities beyond what is necessary

    1 августа 2014 г. 5:08
  • День добрый.

    Что касается NLB.

    1. Проверил работу публикации серверов без NLB.

    2. Пересобрал бы NLB в unicast, из-за возможных проблем с оборудованием.

    3. Рекомендую заменить NLB на HLB.

    Что касается работы CAS Exchange 2013.

    Покажите тесты.

    1. Тест командлеты

    Test-OutlookConnectivity

    Test-OutlookWebService | fl

    Test-OutlookWebService 

    2. https://testconnectivity.microsoft.com/

    3. В правом нижнем углу развернуть ярлыки. Зажать CTRL + правой клавишей мыши на иконку Outlook - Проверить автоконфигурацию - Как в локальной сети, так и из сети Интернет. С NLB и без NLB.


     Пример проверки и траблешутинга.

    Exchange 2013: Configuring Outlook anywhere


    MCITP, MCSE. Знание - не уменьшает нашей глупости. Все данные приведены в виде примера и не адаптированы для вашей системы. Выполнения командлетов и внесения изменений в систему, делаете ВЫ. Все вопросы по привязке примера к вашей ситуации или адаптации решения, рассматриваются, только через заявку или кейс в техническую поддержку.

    1 августа 2014 г. 5:10
    Модератор
  • А промежуточный почему не добавляете?

    Логин вводите domain\username?

    Попробуйте использовать Remote Connectivity Analyser

    В проверке поставьте галочку "Ignore Trust for SSL"

    Промежуточный не хочется добавлять, чтобы схема внутреннего CA работала правильно с точки зрения архитектуры, корневой сервер добавлен на клиентах в доверенные, и выключен, и включается только чтобы выпустить/перевыпустить сертификаты для выпускающих центров. Каждый раз добавлять выпускающие центры (ну хоть и нечасто, но идеологически) в корень клиентам неправильно. Хотя для теста я добавил и его - ничего не поменялось.

    Логин при запросе ввожу domain\user как положено.

    С Remote Connectivity Analyser все достаточно странно. Галочки Ignore thust сейчас нет, соответственно он не может проверить корневой сертификат. Если скачать приложение MS Connectivity Analyser и просканировать им, то выдается ошибка на этапе проверки имени сертификата, имя узла не совпадает ни с одним именем, найденным в сертификате сервера. Имя там есть, я даже перевыпустил сегодня сертификат, чтобы удостоверится, что данное имя не содержало пробелов или русских букв, все имена DNS вбил заново. После рескана он начал показывать уже новый, перевыпущенный сертификат, но так же указывает от отсутствие имени в нем. Мистика.

    >>Во внешнюю зону DNS соответствующие записи внесли? И почему у вас для внешнего доступа NTLM аутентификация?

    Внешнюю зону проверил, OWA ходит даже если заходить через адрес https://autodiscovery.firma.ru/owa, значит адрес в DNS есть.  



    1 августа 2014 г. 6:45
  • Autodiscovery? Или autodiscover? Что дает https://autodiscover.domain.ru/autodiscover/autodiscover.xml?
    Или вы используете одно имя, audidiscover.firma.ru? Напишите, какие имена используете для доступа к owa, outlook anywhere. Какие указаны в сертификате
    • Изменено Zaza Abramov 1 августа 2014 г. 6:59
    1 августа 2014 г. 6:56
  • Autodiscovery? Или autodiscover? Что дает https://autodiscover.domain.ru/autodiscover/autodiscover.xml?

    в тексте описался, конечно autodiscover. На скрине видно правильное имя, включая имя сертификата.

    запрос xml-файла дает 

    <?xml version="1.0" encoding="UTF-8"?>
    -<Autodiscover xmlns="http://schemas.microsoft.com/exchange/autodiscover/responseschema/2006">
    -<Response>
    -<Error Id="3538933951" Time="10:57:18.0276827">
    <ErrorCode>600</ErrorCode>
    <Message>Invalid Request</Message>
    <DebugData/>
    </Error>
    </Response>
    </Autodiscover>
    Из локальной сети кстати дает такой же ответ при запросе на адрес https://pm-cas.forma.local/autodiscover/autodiscover.xml

    1 августа 2014 г. 7:00
  • Из локальной сети кстати дает такой же ответ при запросе на адрес https://pm-cas.forma.local/autodiscover/autodiscover.xml

    Это хороший ответ.

    Меня интересует не имя сертификата, а поле в нем. Субъект и Дополнительное имя субъекта

    • Изменено Zaza Abramov 1 августа 2014 г. 7:18
    1 августа 2014 г. 7:07
  • >>Что касается NLB.

    >>1. Проверил работу публикации серверов без NLB.

    поменял проброс с адреса NLB-кластера напрямую на адрес одного из серверов, подключился через OWA, проверил через netstat - на этом есть подключение по 443, на втором нет. Перекинул на второй проброс - на первом подключение пропало, на втором появилось. Значит прямой проброс работает как надо. Ситуацию с Outlook это не изменило, после запроса пароля ошибка та же. Вы уверены, что нужно разобрать кластер NLB для более детальной проверки, или достаточно проведенной мной? Настроек у NLB не особо много, ошибиться там сложно.

    >>2. Пересобрал бы NLB в unicast, из-за возможных проблем с оборудованием.

    Собрано именно в unicast на текущий момент.

    >>3. Рекомендую заменить NLB на HLB.

    Аппаратное HLB поставить к сожалению нет возможности.

    >>Что касается работы CAS Exchange 2013.

    У меня Exchange 2010, это на удаленной машине я проверяю на Outlook 2013.

    >>1. Тест командлеты

    Их нужно выполнять на серверах CAS 2010?

    >>https://testconnectivity.microsoft.com/

    Описал ситуацию чуть выше

    >>3. В правом нижнем углу развернуть ярлыки. Зажать CTRL + правой клавишей мыши на иконку Outlook - Проверить автоконфигурацию - Как в локальной сети, так и из сети Интернет. С NLB и без NLB.

    Поскольку я даже добавить подключение не могу - соответственно по правой кнопки в трее нет ничего на удаленной машине.

    1 августа 2014 г. 7:19
  • >>1. Тест командлеты

    Их нужно выполнять на серверах CAS 2010?

    Надо выполнить на каждом CAS или указать тестируемы CAS.

    Сначало решить проблемы подключения в локальной сети, а потом смотреть и тестировать из интернета.


    MCITP, MCSE. Знание - не уменьшает нашей глупости. Все данные приведены в виде примера и не адаптированы для вашей системы. Выполнения командлетов и внесения изменений в систему, делаете ВЫ. Все вопросы по привязке примера к вашей ситуации или адаптации решения, рассматриваются, только через заявку или кейс в техническую поддержку.

    1 августа 2014 г. 7:26
    Модератор
  • Из локальной сети кстати дает такой же ответ при запросе на адрес https://pm-cas.forma.local/autodiscover/autodiscover.xml

    Это хороший ответ.

    Меня интересует не имя сертификата, а поле в нем. Субъект и Дополнительное имя субъекта

    Плюнул на все, еще раз перевыпустил сертификат, указал в качестве основного CN имя autodiscover.firma.ru, а в дополнительные дозабил DNS все остальные. 

    Теперь проверку Microsoft Connectivity Analyzer на сертификаты проходит, но вываливается на этапе отправки POST: 

    1 августа 2014 г. 7:29
  • прошу прощения, в последнем сообщении глаз замылился, и написал ящик неправильно. Ящик исправил, MCA теперь выдает ошибку сертификата на основной адрес pm-cas

    Такое ощущение, что он просто не воспринимает DNS-адреса, записанные в SAN.

    Сейчас попробую командлеты и отпишусь.

    1 августа 2014 г. 7:37
  • [PS] C:\Windows\system32>Test-OutlookConnectivity -Protocol:http -Identity i_petrov -MailboxCredential  (Get-Credential
    firma\i_petrov)
    
    ClientAccessServer   ServiceEndpoint                               Scenario                            Result  Latency
                                                                                                                      (MS)
    ------------------   ---------------                               --------                            ------  -------
    pm-ht-nlb1.firma.... pm-ht-nlb1.firma.local                        Autodiscover: Web service request.  Success   93.60
    pm-ht-nlb1.firma.... pm-cas.firma.local                            RpcProxy::VerifyRpcProxy.           Success    0.00
    pm-ht-nlb1.firma.... pm-cas.firma.local                            RFRI::GetReferral.                  Success   62.40
    pm-ht-nlb1.firma.... pm-cas.firma.local                            NSPI::GetProfileDetails.            Success   62.40
    pm-ht-nlb1.firma.... pm-cas.firma.local                            Mailbox::Connect.                   Success   46.80
    pm-ht-nlb1.firma.... pm-cas.firma.local                            Mailbox::Logon.                     Success   15.60

    [PS] C:\Windows\system32>Test-OutlookWebServices -Identity i_petrov | fl
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1019
    Type       : Information
    Message    : A valid Autodiscover service connection point was found. The Autodiscover URL on this object is https://pm
                 -ht-nlb1.firma.local/Autodiscover/Autodiscover.xml.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1006
    Type       : Information
    Message    : Contacted the Autodiscover service at https://pm-ht-nlb1.firma.local/Autodiscover/Autodiscover.xml.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1016
    Type       : Information
    Message    : [EXCH] The AS service is configured for this user in the Autodiscover response received from https://pm-ht
                 -nlb1.firma.local/Autodiscover/Autodiscover.xml.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1015
    Type       : Information
    Message    : [EXCH] The OAB service is configured for this user in the Autodiscover response received from https://pm-h
                 t-nlb1.firma.local/Autodiscover/Autodiscover.xml.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1014
    Type       : Information
    Message    : [EXCH] The UM service is configured for this user in the Autodiscover response received from https://pm-ht
                 -nlb1.firma.local/Autodiscover/Autodiscover.xml.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1016
    Type       : Information
    Message    : [EXPR] The AS service is configured for this user in the Autodiscover response received from https://pm-ht
                 -nlb1.firma.local/Autodiscover/Autodiscover.xml.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1015
    Type       : Information
    Message    : [EXPR] The OAB service is configured for this user in the Autodiscover response received from https://pm-h
                 t-nlb1.firma.local/Autodiscover/Autodiscover.xml.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1014
    Type       : Information
    Message    : [EXPR] The UM service is configured for this user in the Autodiscover response received from https://pm-ht
                 -nlb1.firma.local/Autodiscover/Autodiscover.xml.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1022
    Type       : Success
    Message    : Autodiscover was tested successfully.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1024
    Type       : Success
    Message    : [EXCH] Successfully contacted the AS service at https://pm-cas.firma.local/EWS/Exchange.asmx. The elapsed 
                 time was 31 milliseconds.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1026
    Type       : Success
    Message    : [EXCH] Successfully contacted the UM service at https://pm-cas.firma.local/EWS/Exchange.asmx. The elapsed 
                 time was 31 milliseconds.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1024
    Type       : Success
    Message    : [EXPR] Successfully contacted the AS service at https://pm-cas.firma.ru/EWS/Exchange.asmx. The elapsed t
                 ime was 31 milliseconds.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1026
    Type       : Success
    Message    : [EXPR] Successfully contacted the UM service at https://pm-cas.firma.ru/EWS/Exchange.asmx. The elapsed t
                 ime was 15 milliseconds.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1124
    Type       : Success
    Message    : [Server] Successfully contacted the AS service at https://pm-ht-nlb1.firma.local/ews/exchange.asmx. The el
                 apsed time was 46 milliseconds.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1126
    Type       : Success
    Message    : [Server] Successfully contacted the UM service at https://pm-ht-nlb1.firma.local/ews/exchange.asmx. The el
                 apsed time was 0 milliseconds.
    
    
    

    [PS] C:\Windows\system32>Test-OutlookWebServices -Identity i_petrov
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1019
    Type       : Information
    Message    : A valid Autodiscover service connection point was found. The Autodiscover URL on this object is https://pm
                 -ht-nlb1.firma.local/Autodiscover/Autodiscover.xml.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1006
    Type       : Information
    Message    : Contacted the Autodiscover service at https://pm-ht-nlb1.firma.local/Autodiscover/Autodiscover.xml.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1016
    Type       : Information
    Message    : [EXCH] The AS service is configured for this user in the Autodiscover response received from https://pm-ht
                 -nlb1.firma.local/Autodiscover/Autodiscover.xml.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1015
    Type       : Information
    Message    : [EXCH] The OAB service is configured for this user in the Autodiscover response received from https://pm-h
                 t-nlb1.firma.local/Autodiscover/Autodiscover.xml.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1014
    Type       : Information
    Message    : [EXCH] The UM service is configured for this user in the Autodiscover response received from https://pm-ht
                 -nlb1.firma.local/Autodiscover/Autodiscover.xml.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1016
    Type       : Information
    Message    : [EXPR] The AS service is configured for this user in the Autodiscover response received from https://pm-ht
                 -nlb1.firma.local/Autodiscover/Autodiscover.xml.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1015
    Type       : Information
    Message    : [EXPR] The OAB service is configured for this user in the Autodiscover response received from https://pm-h
                 t-nlb1.firma.local/Autodiscover/Autodiscover.xml.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1014
    Type       : Information
    Message    : [EXPR] The UM service is configured for this user in the Autodiscover response received from https://pm-ht
                 -nlb1.firma.local/Autodiscover/Autodiscover.xml.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1022
    Type       : Success
    Message    : Autodiscover was tested successfully.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1024
    Type       : Success
    Message    : [EXCH] Successfully contacted the AS service at https://pm-cas.firma.local/EWS/Exchange.asmx. The elapsed 
                 time was 62 milliseconds.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1026
    Type       : Success
    Message    : [EXCH] Successfully contacted the UM service at https://pm-cas.firma.local/EWS/Exchange.asmx. The elapsed 
                 time was 15 milliseconds.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1024
    Type       : Success
    Message    : [EXPR] Successfully contacted the AS service at https://pm-cas.firma.ru/EWS/Exchange.asmx. The elapsed t
                 ime was 31 milliseconds.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1026
    Type       : Success
    Message    : [EXPR] Successfully contacted the UM service at https://pm-cas.firma.ru/EWS/Exchange.asmx. The elapsed t
                 ime was 15 milliseconds.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1124
    Type       : Success
    Message    : [Server] Successfully contacted the AS service at https://pm-ht-nlb1.firma.local/ews/exchange.asmx. The el
                 apsed time was 46 milliseconds.
    
    RunspaceId : cb6e8e98-6238-48cc-a797-12eeda71c041
    Id         : 1126
    Type       : Success
    Message    : [Server] Successfully contacted the UM service at https://pm-ht-nlb1.firma.local/ews/exchange.asmx. The el
                 apsed time was 15 milliseconds.
    

    1 августа 2014 г. 9:10
  • последний тест выбил меня из колеи.

    Поставил дополнительный роутер Asus WL-530g-V2 назначил на нем внешний адрес, внутренний из своей подсети. На удаленном компьютере добавил этот внешний адрес в hosts под именами pm-cas.firma.ru и autodiscovery.firma.ru.

    На сервере pm-ht-nlb2 сделал этот роутер дефолтным шлюзом, все ок, интернет работает.

    Если я добавляю на роутере сервер pm-ht-nlb2 в DMZ, то есть весь трафик снаружи по внешнему адресу направляется на pm-ht-nlb2 (проверяется на RDP), то подключение через OWA и Outlook срабатывает, все отлично, учетка завелась. Это означает, что с сертификатом проблемы нет?

    Если же убрать с роутера DMZ, а пробросить только порт 443 - то проблема возникает опять.

    Сканирование трафика через Network Monitoring с удаленной машины по внешнему адресу дает запросы 445 и 135 порты,проброс 135 порта проблему не решает.

    Я в затруднении, что и как можно еще проверить?

    PS. Ага, Network monitor показывает, что еще идут коннекты на порты типа 51691. Получается, у меня не отрабатывает именно RPC over HTTP, а клиент пытается идти через RPC?

    1 августа 2014 г. 14:07
  • Да, именно так.

    Слава России!

    1 августа 2014 г. 19:58
  • Что же делать?
    2 августа 2014 г. 16:42
  • Попробовал разобрать массив NLB, удалил с обоих серверов службу, сделал RR через добавление в DNS имени pm-cas на оба сервера.
    Снаружи сделал проброс 443 порта на один из серверов, переставил службу через 
    disable-outlookanywere -identity pm-ht-nlb2\*
    disable-outlookanywere -identity pm-ht-nlb1\*

    Enable-OutlookAnywhere -Server 'pm-ht-nlb1' -ExternalHostname 'pm-cas.firma.ru' -DefaultAuthenticationMethod 'Basic' -SSLOffloading $false
    Enable-OutlookAnywhere -Server 'pm-ht-nlb2' -ExternalHostname 'pm-cas.firma.ru' -DefaultAuthenticationMethod 'Basic' -SSLOffloading $false

    Обновил Exchange на всех серверах CAS и DAG до последнего релиза SP3 Rollup6

    Ничего из этого не помогло достучаться снаружи через Outlook Anywere.
    Какие еще будут идеи? Мои собственные кончились совсем.
    11 августа 2014 г. 18:37
  • Докопался до причины проблемы.
    Проблема - в локальной DNS-зоне firma.ru, созданной для переопределения адресов внутренних серверов, чтобы внутренние пользователи ходили по локальным адресам с использованием этой зоны.
    Так же в зоне была добавлена запись pm-cas.firma.ru, являющаяся CNAME на адрес pm-cas.firma.local
    После ее удаления почта заработала снаружи отлично.
    Вопрос. Есть у кого-нибудь ссылки на материал, почитать по данной теме, отчего так произошло?
    • Помечено в качестве ответа Dmitrii Barsukov 15 августа 2014 г. 4:54
    15 августа 2014 г. 4:21
  • Вы реализовали технологию Split DNS.

    Autodiscover and split DNS

    Exchange Network - Split DNS


    MCITP, MCSE. Знание - не уменьшает нашей глупости. Все данные приведены в виде примера и не адаптированы для вашей системы. Выполнения командлетов и внесения изменений в систему, делаете ВЫ. Все вопросы по привязке примера к вашей ситуации или адаптации решения, рассматриваются, только через заявку или кейс в техническую поддержку.

    15 августа 2014 г. 6:34
    Модератор