Удаленное управление IIS в Windows Server 2016/2012 R2

Веб-сервер Internet Information Service в Windows 2016/ 2012 / R2, как и предыдущие версии IIS имеет возможность удаленного управления. Ведь управлять множеством IIS серверов из одной консоли довольно удобно, а для веб-серверов, работающих в режиме Core/Nano, это практически единственный удобный способ управления веб сервером. Однако по умолчанию функционал удаленного управления в IIS отключен и в том случае, если на другом сервере попытаться добавить удаленный сервер с запущенным IIS в консоль управления IIS (меню Connect to a Server ), появится ошибка:

Удаленное администрирование iis в Windows Server 2012 R2 / 2016

Could not connect to the specified computer.
Details: Unable to connect to the remote server.

ошибка удаленного подключения iis

Установка службы управления IIS Management Service

Дело в том, что при стандартной установке IIS, служба IIS Management Service, отвечающая за его удаленное управление не устанавливается. Убедится, что данная служба отсутсвует в системе можно с помощью Powershell команды:

Get-WindowsFeature *web-mgmt*

Список установленных feature в windows server 2012

Как вы видите, служба Web -Mgmt -Service не установлена. Установите компонент Windows Server с помощью командлета Add-WindowsFeature , выполним с правами администратора следующую команду Powershell:

Add-WindowsFeature Web-Mgmt-Service

Или

Install-WindowsFeature Web-Mgmt-Service

Установка Web Management Service для IIS в Windows 10

Также вы можете установить компонент Management Service из консоли Server Manager.

Затем перезапустите веб сервис IIS:
iisreset –noforce<
iisreset - перезапуск веб сервера IIS Следующий шаг – нужно разрешить удаленные подключения в настройках веб сервера IIS. Для этого в диспетчере служб IIS в секции Management откройте появившийся пункт Management Service .

настройка iis management service

В разделе Management Service включите опцию « Enable remote connections ».

Здесь же можно ограничить возможность подключения к консоли управлений веб сервера по IP адресу. Для этого запретите подключение с неизвестных клиентов (Access for unspecified clients:Deny) и укажите IP адрес / или IP подсети, с которых будет разрешено подключение. Служба удаленного подключения использует SSL сертификат, но вы можете использовать другой, если вы импортировали его в хранилище сертификатов (вы можете создать и использовать самоподписанный сертификат ). Сохраните изменения.

Примечание . По умолчанию для удаленного управления IIS используется порт 8172. При сохранении изменений данный порт будет открыт в брандмауэре Windows автоматически.

Разрешить удаленное управление в iis8

Совет . На удаленном сервере IIS, работающем в Core-режиме (для информации: как переключаться между Core и GUI режимами в Windows 2012 ) эту опцию можно активировать через реестр, задав ключу EnableRemoteManagement в ветке HKLMSoftwareMicrosoftWebManagementServer значение 1. Команда:

Reg Add HKLMSoftwareMicrosoftWebManagementServer /V EnableRemoteManagement /T REG_DWORD /D 1

В этом случае придется создать правило для файервола вручную:

netsh advfirewall firewall add rule name=”Allow IIS Web Management” dir=in action=allow service=”WMSVC”

Осталось запустить службу Web Management Service:

net start wmsvc

И задать для службы автоматический запуск при загрузке ОС:

set-service wmsvc -StartupType Automatic

Или так:

sc config WMSVC start= auto

Запуск службы wmsvc (Web Management Service)

После этого удаленный веб сервер IIS возможно добавить в консоль управлений IIS Manager и управлять сервером IIS, всеми сайтами на нем так же, как и локальным веб-сервером. удаленное управление iis8 из консоли iis в windows server 2012

Предоставление прав пользователям на удаленное управление сайтом IIS

По-умолчанию право на удаленное управление сервером IIS есть только у пользователей с правами администратора сервера. Чтобы предоставить право на удаленное управление обычным пользователям, необходимо раздать соответствующие права на уровне каждого сайта IIS. Выберите сайт и найдите опцию IIS Manager Permissions .

iis manager настройка прав удаленного доступа к IIS

В панели Actions нажмите на Allow User . Выберите учетную запись, которой нужно предоставить доступ к IIS и нажмите Ок.

iis разрешить удаленное управление для пользователя

Права пользователям по управлению сайтами на IIS настраиваются в секции Feature Delegation на уровне всего сервера IIS.

iis настройка прав пользователей - Feature Delegation

Вы можете задать один из трех уровней доступа пользователям для каждого функционала управления сервером IIS: Read Only, Read/Write или Not Delegated.

Удаленное управление IIS из Windows 10

Если вам нужно удалено управлять серверов IIS с клиентской рабочей станции с Windows 10 (Windows 7 или 8.1), необходимо установить консоль управления IIS: Turn Windows features on or off -> Internet Information Services -> Web Management Tools -> IIS Management Console.

Windows 10 - установка IIS Management Console

Вы можете установить компонент управления следующей командой PowerShell:

Enable-WindowsOptionalFeature -Online -FeatureName "IIS-ManagementService"

Однако при запуске консоли IIS Manager в Windows 10 оказывается, что пункт Подключение к серверу (Connect to a server) в меню отсутствует.

Отсуствует пункт "Подключение к серверу IIS(Connect to a server) в меню Windows 10

Для возможности удаленного подключения к IIS в Windows 10 нужно скачать и установить компонент IIS Manager for Remote Administration ( https://www.microsoft.com/en-us/download/details.aspx?id=41177 ).

Совет . Существует версия IIS Manager для x64 (inetmgr_amd64_en-US.msi) и x86 ОС (inetmgr_x86_en-US.msi).

Установка IIS Manager for Remote Administration

После установки нужно перезапустить консоль диспетчера IIS и подключится к сайту. Если при подключении к IIS окажется, что версия консоли на клиенте и сервере отличается, появится уведомлении о необходимости обновить версию консоли (все необходимые файлы будут автоматически скачаны с сервера).

обновление версии iis manager на клиенте с десктопной версией Windows

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

Удаленное управление IIS и поддержка TLS 1.1/ TLS 1.2

Если на IIS вы отключили устаревших протоколов SSLv3 и TLS 1.0, оставив только TLS 1.1/ TLS 1.2 то при удаленном подключении к IIS появится ошибка :

«The underlying connection was closed: An unexpected error occurred on a send.

Для исправления проблемы, необходимо на стороне клиента внести изменения в реестре, для обязательного использования протокола TLS1.2 при подключении. Настройки зависят от версии Windows.

Windows 10 и Windows Server 2016:

[HKEY_LOCAL_MACHINESOFTWAREMicrosoft.NETFrameworkv4.0.30319]"SchUseStrongCrypto"=dword:00000001[HKEY_LOCAL_MACHINESOFTWAREWow6432NodeMicrosoft.NETFrameworkv4.0.30319]"SchUseStrongCrypto"=dword:00000001

Windows 2012/ R2 и Windows 8/8.1:

Должен быть установлен NET Framework 4.5.2 или выше ( как определить какие версии NET Framework установлены ).

[HKEY_LOCAL_MACHINESOFTWAREMicrosoft.NETFrameworkv4.0.30319]"SchUseStrongCrypto"=dword:00000001[HKEY_LOCAL_MACHINESOFTWAREWow6432NodeMicrosoft.NETFrameworkv4.0.30319]"SchUseStrongCrypto"=dword:00000001

Windows Server 2008 R2 / Windows 7:

Предварительно нужно установить обновление KB3154518 для поддержки TLS 1.2 в .NET Framework 3.5.1.

[HKEY_LOCAL_MACHINESOFTWAREMicrosoft.NETFrameworkv2.0.50727]_x000D_"SystemDefaultTlsVersions"=dword:00000001_x000D_[HKEY_LOCAL_MACHINESOFTWAREWow6432NodeMicrosoft.NETFrameworkv2.0.50727]_x000D_"SystemDefaultTlsVersions"=dword:00000001_x000D_[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocols]_x000D_[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocolsTLS 1.1]_x000D_[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocolsTLS 1.1Client]_x000D_"DisabledByDefault"=dword:00000000_x000D_[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocolsTLS 1.1Server]_x000D_"DisabledByDefault"=dword:00000000_x000D_[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocolsTLS 1.2]_x000D_[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocolsTLS 1.2Client]_x000D_"DisabledByDefault"=dword:00000000_x000D_[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocolsTLS 1.2Server]_x000D_"DisabledByDefault"=dword:00000000
EnglishRussianUkrainian