Установка и настройка типовых сервисов IIS под Windows Server 2008 R2 Core

Почему Server core?

Windows Server, часто разворачивается для поддержания какой-либо определенной роли или нагрузки. Более того при правильно организованной структуре он устанавливается один раз и дальше управляется удаленно, через внешние оснастки.

Так же Server core дает уменьшение возможностей для вредоносного кода. За счет того что из него вырезаны многие компоненты, ненужные в серверной работе. По статистике для Server core сейчас идет около 35% всех обновлений Windows 2008 и приблизительно 59% критических обновлений. Что естественно уменьшает требования к его перезагрузке

Вырезание компонентов так же дало еще одно преимущество. Уменьшение требований к аппаратной части в особенности к оперативной памяти и месту на диске. Рекомендуемые требования для установки Server core составляют минимум 512 Мб оперативной памяти, а чистая установка занимает всего около 8 Гб. Для одного сервера установленного на современной серверной платформе это может быть и не сильно актуально. А вот при условии использования виртуализации множества серверов, это может дать ощутимое преимущество и позволит установить больше серверов на то же железо, по сравнению с «обычным» Windows Server 2008 R2.

Развитие IIS для Server core

Возможность установки IIS для Server core была еще в Windows Server 2008. Однако на нем не было возможности установить .NET. Так же там нельзя было установить PowerShell. Что, по моему мнению, является главным недостатком Windows Server 2008 Core. Конечно, через некоторое время специалисты смогли его установить .NET и запустить PowerShell (http://dmitrysotnikov.wordpress.com/2008/05/15/powershell-on-server-core/) но все равно это не являлась рекомендованной Microsoft процедурой. Как следствие использовать в производстве, это было возможно только на усмотрение Администратора. В Windows Server 2008 R2 поддержка .NET уже реализована и это дает возможность реализации на нем всех задач современного веб сервера, а так же использовать среду PowerShell.

Вторым недостатком Windows Server 2008 Core была его не оптимизированность для настройки. Вся установка осуществлялась из командной строки. В систему не было включено никаких оболочек, позволявшие облегчить настройку. И опять же в скором времени было выпущено множество программ для комфортной установки компонентов (http://www.samag.ru/cgi-bin/go.pl?q=articles;n=02.2009;a=03). Именно поэтому в Windows Server 2008 R2 был введен скрипт начальной установки sconfig, Позволивший значительно упростить первичную установку сервера.

IIS 7.5 на Windows Server 2008 R2 Core позволяет использовать все те же возможности что и «обычный» Windows Server 2008 R2. А именно имеет поддержку WebDAV и FTP, модулей IIS для PowerShell и т.д.

Первичная настройка Server core

После установки Windows Server 2008 R2 в режиме Server Core и ввода логина и пароля мы видим командную строку и … все. Добро пожаловать в мир Server Core J

image

Первое что нужно сделать с любой серверной системой, это настроить сеть. Для этого запускаем скрипт первичной настройки sconfig и выбираем пункт 8

image

Дальше настройка осуществляется в интуитивно понятном окружении, и я его не буду описывать. Так же можно воспользоваться настройкой из командной строки с помощью утилиты netsh

Для того чтобы посмотреть текущие подключения вводим:

netsh interface ipv4 show interfaces

image

И определяем номер нашего подключения. После командой:

netsh interface ipv4 set address name=»3″ source=static address=192.168.1.3 mask=255.255.255.0

где name=»3″ есть номер вашего подключения

DNS сервер добавляется командой

netsh interface ipv4 add dnsserver name=»3″ address=192.168.1.2 index=1

При желании ввод в домен осуществляется так же из скрипта настройки sconfig или с помощью команды

netdom join %computername% /domain:test.local /userd:Administrator /passwordd:*

Активация Wnidows осуществляется с помощью специального скрипта скрипта

cscript C:\Windows\System32\slmgr.vbs

После перезагрузки нам необходимо будет включить среду PowerShell которая по умолчанию выключена. Осуществляется это так же из sconfig. После его запуска выбираем пункт 4

image

Пункт 2 подменю настройки удаленного управления, включает PowerShell. Из командной строки запуск установки осуществляется с помощью данной команды

start /w ocsetup MicrosoftWindowsPowerShell

После перезагрузки мы получим среду PowerShell на нашем сервере.

image

Так же рекомендую включить удаленное. За это ответственна служба WinRM. Опять используем sconfig и 4 пункт, или используем командную строку.

winrm quickconfig

После этого нам станет доступна удаленная консоль диспетчера сервера, появившаяся в Windows Server 2008 R2

image

И в конце можно включить удаленный рабочий стол (RDP). В sconfig это 7 пункт. А вот в командной строке придется воспользоваться отдельным скриптом

cscript C:\Windows\System32\Scregedit.wsf /ar 0

Внимание: Для того чтобы подключатся к серверу с клиентов ниже чем Windows Vista/Windows Server 2008 надо отключить высокий уровень безопасности, установленный по умолчанию.

cscript C:\Windows\System32\Scregedit.wsf /cs 0

Разрешение протокола RDP на брандмауэре осуществляется знакомой нам утилитой netsh

netsh advfirewall firewall set rule group=»Remote Desktop» new enable=yes

Установка и настройка IIS

Как бы не была хороша утилита sconfig в первичной настройки, но она не позволяет устанавливать роли и компоненты Windows Server. Я рекомендую использовать для этого бесплатную оболочку Core configurator 2.0 (http://coreconfig.codeplex.com/) написанную в среде PowerShell. Данная оболочка обладает почти всеми возможностями «обычной» панели управления и позволяет интуитивно понятно настроить сервер. Записать программу на сервер вы можете любым удобным для вас способом. Запуск оболочки, после установки, осуществляется файлом Start_Coreconfig.wsf.

image

Установка ролей осуществляется из меню Computer setting\Add or Remove Roles

image

Или можно установить их из командной строки. Для установки по умолчанию достаточно применить данную команду. Внимание, имена компонентов чувствительны к регистру

start /w pkgmgr /l:log.etw /iu:IIS-WebServerRole;WAS-WindowsActivationService;WAS-ProcessModel;WAS-NetFxEnvironment;WAS-ConfigurationAPI

Полная установка это небольшая строка в 924 символа J

start /w pkgmgr /iu:IIS-WebServerRole;IIS-WebServer;IIS-CommonHttpFeatures;IIS-StaticContent;IIS-DefaultDocument;IIS-DirectoryBrowsing;IIS-HttpErrors;IIS-HttpRedirect;IIS-ApplicationDevelopment;IIS-ASP;IIS-CGI;IIS-ISAPIExtensions;IIS-ISAPIFilter;IIS-ServerSideIncludes;IIS-HealthAndDiagnostics;IIS-HttpLogging;IIS-LoggingLibraries;IIS-RequestMonitor;IIS-HttpTracing;IIS-CustomLogging;IIS-ODBCLogging;IIS-Security;IIS-BasicAuthentication;IIS-WindowsAuthentication;IIS-DigestAuthentication;IIS-ClientCertificateMappingAuthentication;IIS-IISCertificateMappingAuthentication;IIS-URLAuthorization;IIS-RequestFiltering;IIS-IPSecurity;IIS-Performance;IIS-HttpCompressionStatic;IIS-HttpCompressionDynamic;IIS-WebServerManagementTools;IIS-ManagementScriptingTools;IIS-IIS6ManagementCompatibility;IIS-Metabase;IIS-WMICompatibility;IIS-LegacyScripts;IIS-FTPPublishingService;IIS-FTPServer;WAS-WindowsActivationService;WAS-ProcessModel

Удаленное управление, включается поле установки компонента IIS-ManagementService

start /w ocsetup IIS-ManagementService

После необходимо включить удаленное управление сервером IIS, для этого добавляем ключ в реестр

reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WebManagement\Server /v EnableRemoteManagement /t REG_DWORD /d 1

и включаем службу удаленного управления WMSvc. Сделать это можно из Core Configurator или с помощью команды

net start wmsvc

Замечу, что мы только запускаем службу. Чтобы установить ее автоматический запуск с сервером можно воспользоваться, например, данной PowerShell командой

set-service wmsvc -startuptype automatic

После этого к серверу можно будет подключаться снаружи, из Windows Server 2008 R2, с помощью консоли управления IIS.

image

Или с помощью Модулей IIS для PowerShell. Для их установки нужно разрешить запуск неподписанных скриптов, например

set-executionPolicy remoteSigned

и импортировать модули

import-module WebAdministration

Для постоянной работы рекомендуется добавить импорт модулей в профиль PowerShell.

Заключение

Данная статья описывает только настройку Windows Server 2008 R2 в режиме Server core. Но уже видно, что с его выходом мы получили отличную платформу для веб серверов, потребляющую мало ресурсов. Она позволяет использовать всю мощь технологии ASP .NET и вести удаленное управление множеством серверов, в том числе и на Windows Server 2008 с соответствующими ограничениями в виде отсутствия поддержки .NET и PowerShell

Детали vozerov
Системный администратор. Специализируюсь на Windows системах. Увлечения разные :)

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход /  Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход /  Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход /  Изменить )

Connecting to %s

%d такие блоггеры, как: