Настройка брандмауэра Windows на разрешение доступа к службам Analysis Services

Применимо к: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Важным первым шагом к обеспечению доступности SQL Server Analysis Services или Power Pivot для SharePoint в сети является определение необходимости разблокировать порты в брандмауэре. Для большинства установок потребуется создать по крайней мере одно правило брандмауэра, которое позволяет подключаться к SQL Server Analysis Services.

Требования к конфигурации брандмауэра зависят от способа установки SQL Server Analysis Services:

  • Откройте TCP-порт 2383 при установке экземпляра по умолчанию или создании SQL Server Analysis Services отказоустойчивого кластера.

  • При установке именованного экземпляра откройте TCP-порт 2382. Именованные экземпляры используют динамическое назначение портов. Как служба обнаружения для служб Analysis Services, служба браузера SQL Server прослушивает TCP-порт 2382 и перенаправляет запрос подключения на порт, используемый в настоящее время SQL Server Analysis Services.

  • Откройте TCP-порт 2382 при установке SQL Server Analysis Services в режиме SharePoint для поддержки Power Pivot для SharePoint 2013. В Power Pivot для SharePoint 2013 экземпляр SQL Server Analysis Services является внешним для SharePoint. Входящие запросы к именованным экземпляру Power Pivot исходят из веб-приложений SharePoint через сетевое подключение, для которых требуется открытый порт. Как и в случае с другими именованными экземплярами SQL Server Analysis Services, создайте правило входящего трафика для службы браузера SQL Server на TCP 2382, чтобы разрешить доступ к Power Pivot для SharePoint.

  • Для Power Pivot для SharePoint 2010 не открывайте порты в брандмауэре Windows. В качестве надстройки для SharePoint служба использует порты, настроенные для SharePoint, и устанавливает только локальные подключения к экземпляру SQL Server Analysis Services, который загружает и запрашивает модели данных Power Pivot.

  • Для SQL Server Analysis Services экземпляров, работающих в Windows Azure Виртуальные машины, используйте альтернативные инструкции по настройке доступа к серверу. См. раздел SQL Server Business Intelligence на виртуальных машинах Windows Azure.

Хотя экземпляр SQL Server Analysis Services по умолчанию прослушивает TCP-порт 2383, можно настроить сервер для прослушивания другого фиксированного порта, подключаясь к серверу в следующем формате: <имя_>сервера:<portnumber>.

Примечание

Если необходимо подключиться к экземпляру с помощью Kerberos, для служб Analysis Services нельзя использовать порт, отличный от используемого по умолчанию. Дополнительные сведения см. в статье Регистрация имени субъекта-службы для экземпляров SSAS, прослушивающих фиксированные порты.

Экземпляр SQL Server Analysis Services может использовать только один TCP-порт. На компьютерах с несколькими сетевыми картами или несколькими IP-адресами SQL Server Analysis Services прослушивает один TCP-порт для всех IP-адресов, назначенных компьютеру или псевдонимов. Если у вас есть определенные требования к нескольким портам, рассмотрите возможность настройки SQL Server Analysis Services для доступа по протоколу HTTP. Затем можно установить несколько конечных точек HTTP для любых портов в выбранном формате. См . статью Настройка http-доступа к службам Analysis Services в службах IIS 8.0.

Этот раздел состоит из следующих подразделов.

Дополнительные сведения о настройках брандмауэра Windows по умолчанию и описание портов TCP, влияющих на компонент Database Engine, службы Analysis Services, службы Reporting Services и службы Integration Services, см. в разделе Настройка брандмауэра Windows для разрешения доступа к SQL Server.

Проверка параметров порта и брандмауэра для служб Analysis Services

В операционных системах Microsoft Windows, поддерживаемых SQL Server 2017, брандмауэр Windows включен по умолчанию и блокирует удаленные подключения. Чтобы разрешить входящие запросы к службам Analysis Services, необходимо вручную открыть порт в брандмауэре. Программа установки SQL Server не выполняет этот шаг автоматически.

Параметры порта указываются в файле msmdsrv.ini и на странице свойств «Общие» экземпляра служб Analysis Services в среде SQL Server Management Studio. Если в поле Порт установлено положительное целочисленное значение, служба прослушивает фиксированный порт. Если в поле Порт установлено значение 0, служба прослушивает порт 2383, если это экземпляр по умолчанию, или динамически назначенный порт, если это именованный экземпляр.

Динамические назначения портов используются только именованными экземплярами. При запуске службы MSOLAP$InstanceName определяется, какой порт следует использовать. Можно определить действительный номер порта, используемый именованным экземпляром, выполнив следующие действия.

  • Запустите диспетчер задач и щелкните Службы , чтобы получить идентификатор процесса (PID) MSOLAP$InstanceName.

  • Запустите netstat -ao -p TCP из командной строки, чтобы просмотреть сведения о TCP-порте для этого PID.

  • Проверьте порт с помощью SQL Server Management Studio и подключитесь к серверу служб Analysis Services в следующем формате: <IPAddress>:<portnumber>.

Хотя приложение может прослушивать указанный порт, подключения будут неудачными, если брандмауэр блокирует доступ. Для подключений к экземпляру служб Analysis Services необходимо разблокировать доступ к файлу msmdsrv.exe или фиксированному порту в брандмауэре, по которому ведется прослушивание. Остальные подразделы в этом разделе содержат соответствующие инструкции.

Чтобы выяснить, были ли параметры брандмауэра для служб Analysis Services определены ранее, используйте брандмауэр Windows в режиме повышенной безопасности на панели управления. На странице «Брандмауэр» в папке «Мониторинг» показан полный список правил, определенный для локального сервера.

Обратите внимание, что для SQL Server Analysis Services все правила брандмауэра должны быть определены вручную. Хотя SQL Server Analysis Services и SQL Server Browser резервировать порты 2382 и 2383, ни программа установки SQL Server, ни какие-либо средства настройки не определяют правила брандмауэра, разрешающие доступ к портам или исполняемым файлам программы.

Настройка брандмауэра Windows для экземпляра по умолчанию служб Analysis Services

Экземпляр SQL Server Analysis Services по умолчанию прослушивает TCP-порт 2383. Если вы установили экземпляр по умолчанию и хотите использовать этот порт, необходимо разблокировать входящий доступ к TCP-порту 2383 в брандмауэре Windows, чтобы разрешить удаленный доступ к экземпляру SQL Server Analysis Services по умолчанию. Если установлен экземпляр по умолчанию и необходимо настроить службу для прослушивания фиксированного порта, см. подраздел Использовать фиксированный порт для именованного экземпляра или экземпляра по умолчанию служб Analysis Services в данном разделе.

Чтобы определить, выполняется ли служба как экземпляр по умолчанию (MSSQLServerOLAPService), проверьте имя службы в диспетчере конфигурации SQL Server. Экземпляр служб Analysis Services по умолчанию всегда указывается как Службы SQL Server Analysis Services (MSSQLSERVER).

Примечание

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

При указании правила входящего подключения следует применять соглашение об именах, с помощью которого можно будет без труда находить правила впоследствии (например, службы SQL Server Analysis Services (TCP-in) 2383).

Брандмауэр Windows в режиме повышенной безопасности

  1. В Windows 7 или в Windows Vista на панели управления выберите раздел Система и безопасность, затем Брандмауэр Windowsи Расширенные параметры. В Windows Server 2008 и в Windows Server 2008 R2 откройте меню "Администрирование" и выберите пункт Брандмауэр Windows в режиме повышенной безопасности. В Windows Server 2012 откройте страницу "Приложения" и введите Брандмауэр Windows.

  2. Щелкните правой кнопкой мыши Правила для входящих подключений и выберите Создать правило.

  3. В поле "Тип правила" выберите значение Порт и нажмите кнопку Далее.

  4. В диалоговом окне "Протокол и порты" выберите протокол TCP и введите номер порта 2383 в поле Определенные локальные порты.

  5. В поле "Действие" выберите значение Разрешить соединение и нажмите кнопку Далее.

  6. В поле "Профиль" уберите все сетевые расположения, не применимые к текущему развертыванию, и нажмите кнопку Далее.

  7. В поле "Имя" введите описательное имя этого правила (например, службы SQL Server Analysis Services (tcp-in) 2383) и нажмите кнопку Готово.

  8. Чтобы убедиться, что удаленные подключения включены, откройте SQL Server Management Studio или Excel на другом компьютере и подключитесь к SQL Server Analysis Services, указав сетевое имя сервера в поле Имя сервера.

    Примечание

    Другие пользователи не будут иметь доступа к этому серверу, пока им не будут предоставлены разрешения. Дополнительные сведения см. в статье Авторизация доступа к объектам и операциям (службы Analysis Services).

Синтаксис Netsh AdvFirewall

  • Следующая команда создает правило входящего подключения, которое разрешает входящие запросы для порта TCP 2383.

    netsh advfirewall firewall add rule name="SQL Server Analysis Services inbound on TCP 2383" dir=in action=allow protocol=TCP localport=2383 profile=domain  
    

Настройка доступа в брандмауэре Windows для именованного экземпляра служб Analysis Services

Именованные экземпляры SQL Server Analysis Services могут прослушивать фиксированный порт или динамически назначаемый порт, где служба браузера SQL Server предоставляет сведения о подключении, текущие для службы на момент подключения.

Служба обозревателя SQL Server прослушивает TCP-порт 2382. Протокол UDP не используется. ПРОТОКОЛ TCP является единственным протоколом передачи, используемым SQL Server Analysis Services.

Чтобы разрешить удаленный доступ к именованному экземпляру служб Analysis Services, выберите один из следующих методов:

  • Используйте динамическое назначение порта и службу обозревателя SQL Server. Разблокируйте порт, используемый службой обозревателя SQL Server, в брандмауэре Windows. Подключитесь к серверу в следующем формате: <имя_>сервера\<имя_экземпляра>.

  • Используйте совместно фиксированный порт и службу обозревателя SQL Server. Этот подход позволяет подключаться в формате имя <_>сервера\<имя_>экземпляра, идентичное динамическому назначению портов, за исключением того, что в этом случае сервер прослушивает фиксированный порт. В этом варианте служба обозревателя SQL Server обеспечивает разрешение имен для экземпляра служб Analysis Services, прослушивающего фиксированный порт. Для использования этого метода настройте сервер на прослушивание фиксированного порта, разблокируйте доступ к этому порту и разблокируйте доступ к порту, используемому службой обозревателя SQL Server.

Служба обозревателя SQL Server используется только с именованными экземплярами, с экземпляром по умолчанию она не используется никогда. Эта служба автоматически устанавливается и включается при установке любого компонента SQL Server в качестве именованного экземпляра. Если выбран метод, для которого требуется служба обозревателя SQL Server, необходимо следить за тем, чтобы она оставалась включенной и запускалась на сервере.

Если использовать службу обозревателя SQL Server невозможно, необходимо назначить фиксированный порт в строке подключения, минуя разрешение имени домена. Если служба обозревателя SQL Server не используется, то в строке подключения всех клиентских соединений должен указываться номер порта (например, AW-SRV01:54321).

Вариант 1: используйте динамическое назначение порта и разблокируйте доступ к службе браузера SQL Server.

Динамическое назначение портов для именованных экземпляров служб Analysis Services выполняется с помощью MSOLAP$InstanceName при запуске службы. По умолчанию служба требует первый обнаруженный доступный номер порта, используя различные номера портов при каждом перезапуске службы.

Разрешение имени экземпляра обеспечивается службой обозревателя SQL Server. Разблокирование TCP-порта 2382 для службы обозревателя SQL Server всегда необходимо, если для именованного экземпляра используется динамическое назначение порта.

Примечание

Служба обозревателя SQL Server прослушивает как порт UDP 1434, так и порт TCP 2382 для компонента Database Engine и служб Analysis Services соответственно. Даже если порт UDP 1434 уже разблокирован для службы обозревателя SQL Server, необходимо разблокировать порт TCP 2382 для служб Analysis Services.

Брандмауэр Windows в режиме повышенной безопасности

  1. В Windows 7 или в Windows Vista на панели управления выберите раздел Система и безопасность, затем Брандмауэр Windowsи Расширенные параметры. В Windows Server 2008 и в Windows Server 2008 R2 откройте меню "Администрирование" и выберите пункт Брандмауэр Windows в режиме повышенной безопасности. В Windows Server 2012 откройте страницу "Приложения" и введите Брандмауэр Windows.

  2. Чтобы разблокировать доступ к службе обозревателя SQL Server, щелкните правой кнопкой мыши Правила для входящих подключений и выберите Создать правило.

  3. В поле "Тип правила" выберите значение Порт и нажмите кнопку Далее.

  4. В диалоговом окне "Протокол и порты" выберите протокол TCP и введите номер порта 2382 в поле Определенные локальные порты.

  5. В поле "Действие" выберите значение Разрешить соединение и нажмите кнопку Далее.

  6. В поле "Профиль" уберите все сетевые расположения, не применимые к текущему развертыванию, и нажмите кнопку Далее.

  7. В поле "Имя" введите описательное имя этого правила (например, обозреватель SQL Server (tcp-in) 2382) и нажмите кнопку Готово.

  8. Чтобы убедиться, что удаленные подключения включены, откройте SQL Server Management Studio или Excel на другом компьютере и подключитесь к службам Analysis Services, указав сетевое имя сервера и имя экземпляра в следующем формате: <имя_>сервера\<имя_>экземпляра. Например, на сервере с именем AW-SRV01 и именованным экземпляром Financeименем сервера будет AW-SRV01\Finance.

Вариант 2: используйте фиксированный порт для именованного экземпляра.

В качестве альтернативы можно назначить фиксированный порт, а затем разблокировать доступ к этому порту. Этот метод обеспечивает лучшие возможности аудита, чем те, которые доступны при разрешении доступа к исполняемому файлу программы. По этой причине использование фиксированного порта — рекомендуемый метод для доступа к любому экземпляру служб Analysis Services.

Чтобы назначить фиксированный порт, следуйте инструкциям в подразделе Использовать фиксированный порт для именованного экземпляра или экземпляра по умолчанию служб Analysis Services этого раздела, затем вернитесь к этому подразделу, чтобы разблокировать порт.

Брандмауэр Windows в режиме повышенной безопасности

  1. В Windows 7 или в Windows Vista на панели управления выберите раздел Система и безопасность, затем Брандмауэр Windowsи Расширенные параметры. В Windows Server 2008 и в Windows Server 2008 R2 откройте меню "Администрирование" и выберите пункт Брандмауэр Windows в режиме повышенной безопасности. В Windows Server 2012 откройте страницу "Приложения" и введите Брандмауэр Windows.

  2. Чтобы разблокировать доступ к службам Analysis Services, щелкните правой кнопкой мыши Правила для входящих подключений и выберите Создать правило.

  3. В поле "Тип правила" выберите значение Порт и нажмите кнопку Далее.

  4. В диалоговом окне "Протокол и порты" выберите протокол TCP и введите фиксированный порт в поле Определенные локальные порты.

  5. В поле "Действие" выберите значение Разрешить соединение и нажмите кнопку Далее.

  6. В поле "Профиль" уберите все сетевые расположения, не применимые к текущему развертыванию, и нажмите кнопку Далее.

  7. В поле "Имя" введите описательное имя этого правила (например, SQL Server Analysis Services через порт 54321) и нажмите кнопку Готово.

  8. Чтобы убедиться, что удаленные подключения включены, откройте SQL Server Management Studio или Excel на другом компьютере и подключитесь к службам Analysis Services, указав сетевое имя сервера и номер порта в следующем формате: <имя_>сервера:<номер порта>.

Синтаксис Netsh AdvFirewall

  • Следующие команды создают правила для входящих подключений, которые разблокируют TCP-порт 2382 для службы обозревателя SQL Server и фиксированный порт, указанный для экземпляра служб Analysis Services. Можно выполнить любую из этих команд, чтобы разрешить доступ к именованному экземпляру служб Analysis Services.

    В этом образце команды порт 54321 фиксированный. Обязательно замените его на действительный порт, используемый в вашей системе.

    netsh advfirewall firewall add rule name="SQL Server Analysis Services (tcp-in) on 54321" dir=in action=allow protocol=TCP localport=54321 profile=domain  
    
    netsh advfirewall firewall add rule name="SQL Server Browser Services inbound on TCP 2382" dir=in action=allow protocol=TCP localport=2382 profile=domain  
    

Использовать фиксированный порт для именованного экземпляра или экземпляра по умолчанию служб Analysis Services

В этом разделе объясняется, как настроить службы Analysis Services для прослушивания фиксированного порта. Фиксированный порт обычно используется, если службы Analysis Services установлены как именованный экземпляр, но к этому методу можно также прибегнуть, если требования бизнеса или безопасности указывают, что не следует использовать порты по умолчанию.

Обратите внимание, что при использовании фиксированного порта изменяется синтаксис соединения для экземпляра по умолчанию: необходимо добавить номер порта к имени сервера. Например, при подключении к локальному, используемому по умолчанию экземпляру служб Analysis Services, прослушивающему порт 54321 в среде SQL Server Management Studio, потребуется ввести «localhost:54321» в качестве имени сервера в диалоговом окне «Соединение с сервером» в среде Management Studio.

При использовании именованного экземпляра можно назначить фиксированный порт без изменений в том, как указано имя сервера (в частности, можно использовать <имя_сервера\имя_> экземпляра для подключения к именованный экземпляр, прослушивающий фиксированный порт). Это применимо, только если служба обозревателя SQL Server работает, а порт, который она прослушивает, разблокирован. служба браузера SQL Server будет выполнять перенаправление на фиксированный порт на <основе имени_сервера\имя_экземпляра>. Если открыты порты как для службы обозревателя SQL Server, так и для именованного экземпляра Analysis Services, прослушивающего фиксированный порт, служба обозревателя SQL Server разрешит соединение с именованным экземпляром.

  1. Определите доступный порт TCP/IP, который можно использовать.

    Список зарезервированных и зарегистрированных портов, которые не следует использовать, см. в разделе Номера портов (IANA). Чтобы просмотреть список портов, которые уже используются в системе, откройте окно командной строки и введите netstat -a -p TCP , чтобы отобразить список tcp-портов, открытых в системе.

  2. После выбора порта укажите его, изменив настройку конфигурации Port в файле msmdsrv.ini. Указать порт можно также на странице "Общие свойства" экземпляра служб Analysis Services в среде SQL Server Management Studio.

  3. Перезапустите службу.

  4. Настройте в брандмауэре Windows разблокировку выбранного порта TCP. Или, если для именованного экземпляра используется фиксированный порт, разблокируйте TCP-порт, указанный для этого экземпляра, и TCP-порт 2382 для службы обозревателя SQL Server.

  5. Выполните проверку, подключившись локально (в среде Management Studio), а затем удаленно из клиентского приложения на другом компьютере. Чтобы использовать Среду Management Studio, подключитесь к экземпляру служб Analysis Services по умолчанию, указав имя сервера в следующем формате: <имя_>сервера:<portnumber>. Для именованного экземпляра укажите имя сервера как <имя>_сервера\<имя_экземпляра>.

Настройка порта для кластера служб Analysis Services

Отказоустойчивый кластер SQL Server Analysis Services всегда прослушивает TCP-порт 2383 независимо от того, установлен ли он как экземпляр по умолчанию или как именованный экземпляр. Динамические назначения портов не используются SQL Server Analysis Services при установке в отказоустойчивом кластере Windows. Не забудьте открыть TCP 2383 на каждом узле, на котором выполняется SQL Server Analysis Services в кластере. Дополнительные сведения о кластеризация SQL Server Analysis Services см. в статье How to Cluster SQL Server Analysis Services.

Настройка порта PowerPivot для SharePoint

Архитектура сервера для Power Pivot для SharePoint существенно отличается в зависимости от используемой версии SharePoint.

SharePoint 2013

В SharePoint 2013 службы Excel перенаправляет запросы для моделей данных Power Pivot, которые впоследствии загружаются на экземпляр SQL Server Analysis Services за пределами среды SharePoint. Подключения следуют типичному шаблону, когда клиентская библиотека служб Analysis Services на локальном компьютере отправляет запрос на подключение к удаленному экземпляру SQL Server Analysis Services в той же сети.

Так как Power Pivot для SharePoint всегда устанавливает SQL Server Analysis Services как именованный экземпляр, следует предполагать, что служба браузера SQL Server и динамические назначения портов. Как отмечалось ранее, служба браузера SQL Server прослушивает TCP-порт 2382 для запросов на подключение, отправленных SQL Server Analysis Services именованных экземпляров, перенаправляя запрос на текущий порт.

Обратите внимание, что службы Excel в SharePoint 2013 не поддерживают синтаксис соединения с фиксированным портом, поэтому удостоверьтесь в том, что служба обозревателя SQL Server доступна.

SharePoint 2010

При использовании SharePoint 2010 открывать порты в брандмауэре Windows не нужно. SharePoint открывает необходимые порты, а надстройки, такие как Power Pivot для SharePoint, работают в среде SharePoint. В установке Power Pivot для SharePoint 2010 системная служба Power Pivot имеет монопольное использование экземпляра локальной службы SQL Server Analysis Services (Power Pivot), установленной вместе с ней на том же компьютере. Она использует локальные подключения, а не сетевые подключения для доступа к локальной службе обработчика Analysis Services, которая загружает, запрашивает и обрабатывает данные Power Pivot на сервере SharePoint. Чтобы запросить данные Power Pivot из клиентских приложений, запросы направляются через порты, открытые программой установки SharePoint (в частности, определены правила для входящего трафика, разрешающие доступ к SharePoint 80, центру администрирования SharePoint версии 4, веб-службам SharePoint и SPUserCodeV4). Так как веб-службы Power Pivot работают в ферме SharePoint, правил брандмауэра SharePoint достаточно для удаленного доступа к данным Power Pivot в ферме SharePoint.

См. также:

Служба обозревателя SQL Server (компонент Database Engine и SSAS)
Запуск, остановка, приостановка, возобновление и перезапуск компонента Database Engine, агента SQL и службы браузера SQL Server
Настройка брандмауэра Windows для доступа к компоненту Database Engine