- Iis with windows server 2012
- Подготовка IIS для развертывания сайта в IIS
- Установка IIS в Windows Server 2012 R2
- Ссылки
- Установка
- Удаленное управление IIS в Windows Server 2016/2012 R2
- Установка службы управления IIS Management Service
- Предоставление прав пользователям на удаленное управление сайтом IIS
- Удаленное управление IIS из Windows 10
- Удаленное управление IIS и поддержка TLS 1.1/ TLS 1.2
Iis with windows server 2012
Добрый день уважаемые читатели и гости блога. Для меня было большим удивлением, что в Америке и в Европе, очень много хостинов используемых людьми, построены на Windows Internet Information Services, и ее доля там больше чем Linux Apache или nginx. В сегодняшнем посте я бы хотел рассказать, начинающим системным администраторам, как создавать сайты iis в Windows Server 2012 R2, точнее административную часть, так как там уже вы сами будите выбирать, будет ли это ресурс на движке Werdpress или же статический сайт, вариантов очень много.
Подготовка IIS для развертывания сайта в IIS
И так для нашей задачи, вы уже должны иметь развернутую службу IIS, как это сделать, я рассказывал в отдельной статье. Теперь перейдем к практике и подготовим его для последующих вещей. Открываем диспетчер IIS. Найти этот пункт можно в диспетчера сервера.
Я хочу создать отдельный сайт, пускай это будет iis.pyatilistnik.org, для этого переходим в пункт сайты и через правый клик ,выбираем пункт «Добавить веб-сайт»
Само создание сайта iis состоит из вот таких не хитрых пунктов. Во первых, вы задаете:
- Имя сайта — у меня это iis.pyatilistnik.org
- Указываете физический путь — это та папка в которой будет лежать контент для сайта, например, картинки, документы, html странички, если сайт с базой данных, то многое будет лежать в ней.
Далее вы производите привязку сайта к нужному ip адресу, делается это после того, как вы на своем DNS сервере создали A или Cname запись для ресурса. Так же задаем тип привязки, имеет ввиду протокол, тут их всего два обычный незащищенный http и защищенный сертификатом шифрования https, о нем я подробно говорил.
Ну и последним шагом в данном окне, будет указание имени узла, имеется ввиду по какому dns имени, будут фильтроваться заголовки, чтобы попасть на нужный сайт, так как на 80 порту их может висеть очень много.
Пробуем запустить ваш сайт. И так, сайт в диспетчере IIS на Windows Server 2012 r2 мы создали, пробуем его запустить, для этого у вас есть в пункте управление веб-сайтом, отдельный пункт «Обзор»
Если все хорошо, то вы получите доступ к ресурсу, если же нет, то увидите запрещающее сообщение:
Тут два варианта:
- У вас пустая папка с сайтом, попробуйте поместить в нее, хотя бы картинку, для тестирования
- У вас просто нет прав на чтение данного каталога на уровне Windows
С первым вариантом, все понятно, кладем в папку нужный контент, во втором случае, вам нужно назначить права, я дам их для группы «Все» на чтение. Делается это просто, выберите папку и щелкните по ней правым кликом, выберите свойства.
Перейдите на вкладку «Безопасность > Изменить > Добавить > Проверить имя» и через поиск найти нужную группу.
Назначаем нужный уровень прав для созданного сайта IIS, у меня это чтение и выполнение.
Открываем в браузере ваш сайт и проверяем.
Если у вас появляется окно, что не удается отобразить эту статью, то у вас с большой вероятностью, либо не правильная привязка к порту, либо не открыт порт на брандмауэре.
Следующим шагом, у вас встанет вопрос какого типа будет ваш сайт и нужно ли для его настройки добавлять новые компоненты или же устанавливать сторонние, по типу PHP или MySQP для WordPress. Далее я вам советую, разобраться в вопросе проверки подлинности IIS и как она настраивается.
Установка IIS в Windows Server 2012 R2
Пришла задача поднять IIS на Windows Server 2012 R2 для CRM BPM Online от Terrasoft. Указанные ниже настройки достаточны для работы данной приблуды. Однако, пришлось также забраться в конфиги данной сторонней системы и кое что править руками. Но это уже не относится к установке IIS и описываться здесь не будет.
Для ваших задач, скорее всего, потребуется ставить уже другие галки. Приступим.
Ссылки
Установка
Запускаем Server Manager. Manage > Add Roles and Features.
Запускается мастер добавления ролей и фич.
Кликаем Next. Попадаем в выбор типа установки.
Оставляем Role-based or feature-based installation. Next. Попадаем на страницу выбора сервера.
У меня один сервер. Next. Наконец попадаем в выбор ролей.
Ставим галку на Web Server (IIS). Сразу же всплывает окно.
Нам предлагают с выбором роли Web Server (IIS) также поставить необходимые обязательные для этой роли фичи. Кликаем Add Features. Переходим к окну выбора фич.
Кликаем Next. Переходим на вкладку Web Server Role (IIS).
Кликаем Next. Переходим на вкладку Role Services.
Теперь настраиваем фичи для выбранной роли. Нас интересует раздел Web Server. Ставим галки на фичах.
- Common HTTP Features
- Default Document
- Directory Browsing
- HTTP Errors
- Static Content
- HTTP Redirection
- Health and Diagnostics
- HTTP Logging
- Custom Logging
- Logging Tools
- Request Monitor
- Tracing
- Performance
- Static Content Compression
- Dynamic Content Compression
- Security
- Request Filtering
- Basic Authentication
- Centralized SSL Certificate Support
- IIS Client Certificate Mapping Authentication
- IP and Domain Restriction
- URL Authorization
- Windows Authentication
- Application Development
- .NET Extensibility 3.5 — здесь нам снова предлагают поставить обязательные фичи:
Кликаем Add Features и добавляем ASP.NET 4.5 - .NET Extensibility 4.5
- Application Initialization
- ASP.NET 4.5 — здесь нам снова предлагают поставить обязательные фичи:
Кликаем Add Features и добавляем ISAPI Filters и ISAPI Extensions. - CGI
- ISAPI Extensions
- ISAPI Filters
- Server Side Includes
- WebSocket Protocol
- .NET Extensibility 3.5 — здесь нам снова предлагают поставить обязательные фичи:
Теперь нас интересует раздел FTP Server. Ставим галки на фиче FTP Service.
В разделе Management Tools ставим галки на фичах.
- IIS Management Console
- IIS 6 Management Compatibility
- IIS 6 Metabase Compatibility
- IIS Management Scripts and Tools
- Management Service
Кликаем Next. Попадаем на страницу подтверждения.
Удаленное управление 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 Management Service
Дело в том, что при стандартной установке IIS, служба IIS Management Service, отвечающая за его удаленное управление не устанавливается. Убедится, что данная служба отсутсвует в системе можно с помощью Powershell команды:
Как вы видите, служба Web-Mgmt-Service не установлена. Установите компонент Windows Server с помощью командлета Add-WindowsFeature , выполним с правами администратора следующую команду Powershell:
Также вы можете установить компонент Management Service из консоли Server Manager.
Затем перезапустите веб сервис IIS:
iisreset –noforce Следующий шаг – нужно разрешить удаленные подключения в настройках веб сервера IIS. Для этого в диспетчере служб IIS в секции Management откройте появившийся пункт Management Service.
В разделе Management Service включите опцию «Enable remote connections».
Здесь же можно ограничить возможность подключения к консоли управлений веб сервера по IP адресу. Для этого запретите подключение с неизвестных клиентов (Access for unspecified clients:Deny) и укажите IP адрес / или IP подсети, с которых будет разрешено подключение. Служба удаленного подключения использует SSL сертификат, но вы можете использовать другой, если вы импортировали его в хранилище сертификатов (вы можете создать и использовать самоподписанный сертификат). Сохраните изменения.
Reg Add HKLM\Software\Microsoft\WebManagement\Server /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
После этого удаленный веб сервер IIS возможно добавить в консоль управлений IIS Manager и управлять сервером IIS, всеми сайтами на нем так же, как и локальным веб-сервером.
Предоставление прав пользователям на удаленное управление сайтом IIS
По-умолчанию право на удаленное управление сервером IIS есть только у пользователей с правами администратора сервера. Чтобы предоставить право на удаленное управление обычным пользователям, необходимо раздать соответствующие права на уровне каждого сайта IIS. Выберите сайт и найдите опцию IIS Manager Permissions.
В панели Actions нажмите на Allow User. Выберите учетную запись, которой нужно предоставить доступ к IIS и нажмите Ок.
Права пользователям по управлению сайтами на IIS настраиваются в секции Feature Delegation на уровне всего сервера IIS.
Вы можете задать один из трех уровней доступа пользователям для каждого функционала управления сервером 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.
Вы можете установить компонент управления следующей командой PowerShell:
Enable-WindowsOptionalFeature -Online -FeatureName «IIS-ManagementService»
Однако при запуске консоли IIS Manager в Windows 10 оказывается, что пункт Подключение к серверу (Connect to a server) в меню отсутствует.
Для возможности удаленного подключения к IIS в Windows 10 нужно скачать и установить компонент IIS Manager for Remote Administration (https://www.microsoft.com/en-us/download/details.aspx?id=41177).
После установки нужно перезапустить консоль диспетчера IIS и подключится к сайту. Если при подключении к IIS окажется, что версия консоли на клиенте и сервере отличается, появится уведомлении о необходимости обновить версию консоли (все необходимые файлы будут автоматически скачаны с сервера).
Теперь вы должны успешно подключиться к своему серверу IIS и удаленно управлять им со своего рабочего места.
Удаленное управление IIS и поддержка TLS 1.1/ TLS 1.2
Если на IIS вы отключили устаревших протоколов SSLv3 и TLS 1.0, оставив только TLS 1.1/ TLS 1.2 то при удаленном подключении к IIS появится ошибка:
Для исправления проблемы, необходимо на стороне клиента внести изменения в реестре, для обязательного использования протокола TLS1.2 при подключении. Настройки зависят от версии Windows.
Windows 10 и Windows Server 2016:
Windows 2012/ R2 и Windows 8/8.1:
Windows Server 2008 R2 / Windows 7:
Предварительно нужно установить обновление KB3154518 для поддержки TLS 1.2 в .NET Framework 3.5.1.