Поделиться через


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

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

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

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

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

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

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

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

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

Экземпляр служб Analysis Services может использовать только один TCP-порт. На компьютерах с несколькими сетевыми картами или несколькими IP-адресами службы Analysis Services прослушивают один TCP-порт для всех IP-адресов, назначенных компьютеру или псевдонимов. Если у вас есть определенные требования к нескольким портам, рассмотрите возможность настройки служб 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 2014, брандмауэр Windows включен по умолчанию и блокирует удаленные подключения. Чтобы разрешить входящие запросы к службам Analysis Services, необходимо вручную открыть порт в брандмауэре. Программа установки SQL Server не выполняет этот шаг автоматически.

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

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

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

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

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

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

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

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

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

Экземпляр служб Analysis Services по умолчанию прослушивает TCP-порт 2383. Если вы установили экземпляр по умолчанию и хотите использовать этот порт, необходимо разблокировать входящий доступ к TCP-порту 2383 в брандмауэре Windows, чтобы разрешить удаленный доступ к экземпляру служб 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. В поле Тип правила щелкните Port и нажмите кнопку Далее.

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

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

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

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

  8. Чтобы убедиться, что удаленные подключения включены, откройте SQL Server Management Studio или Excel на другом компьютере и подключитесь к службам 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

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

Служба обозревателя SQL Server прослушивает TCP-порт 2382. Протокол UDP не используется. TCP — единственный протокол передачи, используемый службами 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. В поле Тип правила щелкните Port и нажмите кнопку Далее.

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

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

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

  7. В поле Имя введите описательное имя этого правила (например, SQL Server Browser Service (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. В поле Тип правила щелкните Port и нажмите кнопку Далее.

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

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

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

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

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

Синтаксис 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). Для просмотра списка TCP-портов, которые уже используются в системе, откройте окно командной строки и введите netstat -a -p 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

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

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

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

SharePoint 2013

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

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

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

SharePoint 2010

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

См. также:

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