На страже безопасностиМастер настройки безопасности

Джон Морелло (John Morello)

Эта статья содержит предварительную информацию о Windows Server «Longhorn», которая может поменяться в дальнейшем.

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

даже тысяч серверов — совсем другая задача. С годами многие организации составляют собственные требования или стандарты к безопасности серверов или совмещают руководства корпорации Майкрософт, Национального института стандартов и технологии или других внешних источников. Хотя эти документы крайне полезны, одной документации для обеспечения наилучшей работы сети организации недостаточно. Поэтому многие предпочитают придерживаться параметров по умолчанию при установке или тратить усилия и время на создание собственных сценариев и политик для укрепления безопасности.

С появлением Мастера настройки безопасности (Security Con­figuration Wizard — SCW) в Win­dows Server® 2003 с пакетом обновления 1 (SP1) корпорация Майкрософт предлагает простой и поддерживаемый метод обеспечения безопасности серверов и сокращения атакуемой поверхности на основе выполняемых ими ролей. Благодаря сочетанию преимуществ SCW и возможностей централизованного развертывания и управления групповой политикой SCW можно масштабировать до размера крупнейших предприятиях информационной отрасли. В этой колонке я покажу, как организации, работающие в области информационных технологий, могут использовать SCW и групповую политику для управления своими серверами более безопасным и согласованным способом при одновременном снижении затрат на развертывание и эксплуатационных расходов.

Что такое SCW?

SCW — это дополнительный компонент, устанавливаемый с помощью средства Установка и удаление компонентов Панели управления Windows®, доступный для всех продуктов семейства Windows Server 2003 с пакетом обновлений SP1, включая Windows Server 2003 R2. Администратор должен запустить SCW на целевом сервере и выяснить роли, которые этому серверу поручены. Затем SCW поможет администратору создать политику безопасности, которая увеличит устойчивость компьютера с помощью схемы минимизации привилегий. Другими словами, SCW помогает выбрать только те службы, приложения и порты, которые необходимы для выполнения выбранной роли; все службы, не требующиеся для этих ролей, будут отключены. Такой подход сокращает подверженную атакам поверхность целевого сервера. При запуске служб, которые не нужны для выполнения роли, назначенной серверу, вы повышаете риск атак на сервер по сети, не наращивая при этом его возможности или функциональность. Отключение этих служб снижает риск и может повысить производительность сервера.

Хотя корпорация Майкрософт внесла много преимуществ в безопасность Windows Server 2003, значительно снизив атакуемую поверхность по сравнению с предыдущими версиями Windows Server, ядро его отличается от высоко компонентизованного ядра Windows Vista™ и ожидающейся версии Windows Server с кодовым именем "Longhorn". Таким образом, при стандартной установке Windows Server 2003 оказываются включенными и работающими службы, не требующиеся для данной роли сервера. Например, служба «Диспетчер очереди печати» включена по умолчанию, но не нужна машине, которая работает исключительно как сервер базы данных.

Реализация безопасности на основе ролей

За последние несколько лет корпорация Майкрософт выпустила большое количество документации, которая помогает администраторам понять, какие службы требуются для различных ролей сервера, и готовых шаблонов для стандартных ролей, например для веб-серверов. В то же время такие руководства, как Windows Server 2003 Security Guide, трудно применить в больших средах, особенно, если в этих средах используются более сложные приложения, чем стандартно установленные IIS или SQL Server. Еще более усложняют ситуацию многочисленные развернутые на предприятии сторонние приложения, многие из которых зависят от нескольких ролей сервера и требования для приложений и служб которых не всегда достаточно объяснены.

SCW служит для решения этой проблемы, концентрируя все знания о зависимостях и достижении наилучших результатов в руководствах, включенных в мастер-помощник администратора. Например, если администратор разворачивает новое отраслевое приложение, которое требует наличия SQL Server™ и IIS, ему больше не требуется тратить время, разбираясь с руководством по безопасности или разрабатывая свой список пользовательских зависимостей. Вместо этого он может установить приложение на сервере и запустить SCW. SCW определит, какие службы работают в данный момент, и предоставит администратору список ролей, которые можно выбрать для этого сервера. В зависимости от этого выбора SCW формирует политику, которая отключит все службы, не являющиеся необходимыми, на основе таблицы ролей. Кроме того, SCW предложит способы укрепления безопасности реестра, блокировки ненужных сетевых подключений и применения эффективной политики аудита. После запуска SCW администратор может сохранить политику SCW в виде файла XML и применить ее к любым другим серверам, на которых запущено это отраслевое приложение.

Таким образом, применение SCW дает три важных преимущества по сравнению с традиционным ручным подходом к настройке безопасности Windows Server. Во-первых, он значительно снижает (если не устраняет полностью) необходимость для администратора непрерывно сверяться с документацией по программе, чтобы определить, какие службы и настройки необходимы для работы. Эти сведения встроены в состав SCW, и основанный на вопросах интерфейс упрощает для администратора поддержку необходимых тонких настроек. Далее, SCW объединяет руководства из разных областей, включая повышение надежности работы, снижение риска атак по сети, повышение устойчивости работы служб LDAP и SMB и ограничение возможностей IIS. Ранее выполнение этих задач настройки требовало наличия отдельных служебных программ, каждая из которых имела свой интерфейс и свой подход. Наконец, поскольку SCW сохраняет параметры в файле политик формата XML, его можно использовать по принципу «один раз сделал, много раз применил». Независимо от того, разворачиваете ли вы один или сто серверов для работы отраслевого приложения, одна политика SCW легко может быть применена ко всем. Это делает более согласованными параметры безопасности и снижает эксплуатационные расходы. Кроме того, упрощается откат политик.

Компоненты средства SCW

Несмотря на все преимущества и возможности, SCW - очень простое средство, состоящее из трех основных частей: интерфейса мастера, интерфейса командной строки и базы данных настройки безопасности (SCD). Администраторы малых и средних предприятий могут ограничиться работой только с интерфейсом мастера. В больших и сложных средах администраторы могут использовать интерфейс командной строки для помощи в автоматизации таких задач SCW, как преобразование политик SCW в объект групповой политики (GPO). Обычно править SCD требуется только опытным администраторам, которые хотят создать свои роли SCW.

Интерфейс мастера, показанный на рис. 1, позволяет администраторам создавать, изменять, применять и откатывать параметры безопасности целевого сервера. Он предоставляет администраторам возможность выбора в последовательном рабочем потоке, который вначале проверяет службы и параметры, затем сетевые подключения, затем политики аудита безопасности, и, наконец — параметры IIS.

Рис. 1 Интерфейс SCW

Рис. 1** Интерфейс SCW **(Щелкните изображение, чтобы увеличить его)

Интерфейс командной строки SCW предоставляет три основные функции. Это дает возможность администраторам анализировать и координировать несколько серверов (локально или удаленно) и применять политики. Его можно использовать для автоматического преобразования файла XML политик SCW в объект GPO, который можно обычным образом использовать в стандартных средствах управления групповыми политиками, таких как консоль управления групповой политикой. Наконец, средство командной строки SCW, показанное на рис. 2, используется для регистрации любых новых расширений базы данных настроек безопасности.

Рис. 2 Средство командной строки мастера SCW

Рис. 2** Средство командной строки мастера SCW **(Щелкните изображение, чтобы увеличить его)

SCD - это просто набор файлов формата XML, содержащих сведения о конкретных службах и параметрах, необходимых для каждой роли SCW. Эти файлы располагаются в каталоге %win­dir%\security\msscw\kbs. В стандартной поставке SCW идет в комплекте с набором основных ролей Windows Server, а также с 12 предопределенными прикладными ролями, включая: BizTalk®, Commerce Ser­ver, Exchange Server, Host Inte­gration Server, Internet Security and Ac­cel­er­ation Server, Microsoft Ident­ity Inte­gra­tion Server, Microsoft Oper­a­tions Man­ager, Small Business Server, Share­Point® Portal Server, SharePoint Team Ser­vices, SQL Server, and Systems Man­agement Server. Для каждой роли имеется свой файл XML (см. рис. 3). При каждом создании определения роли в этот каталог помещается соответствующий файл XML. Формат файлов — стандартный XML, они могут читаться в любом текстовом редакторе или приложении, поддерживающем XML (см.рис. 4).

Рис. 3 Предопределенные роли

Рис. 3** Предопределенные роли **(Щелкните изображение, чтобы увеличить его)

Рис. 4 Файл настройки роли

Рис. 4** Файл настройки роли **(Щелкните изображение, чтобы увеличить его)

Сочетание SCW и групповой политики

SCW сам по себе является замечательным средством, но его истинная мощь не проявляется до применения в сочетании с групповой политикой. С момента выхода Windows® 2000 рекомендации корпорации Майкрософт по настройке безопасности серверов Windows сосредотачиваются на использовании групповой политики, что обеспечивает постоянное согласованное применение политик с централизованным управлением. Группируя серверы подразделения по их ролям, администраторы получают возможность развертывания стандартных конфигураций безопасности по всему предприятию, а не на каждой машине индивидуально. На основе логики сбора и применения стандартной групповой политики организации могут разрабатывать иерархию уровней ролей серверов, где набор основных правил может обеспечивать безопасность сотен и тысяч отдельных серверов. Если уникальные роли сервера требуют отступления от базовой политики, в иерархии подразделения ближе к серверам можно создать ориентированные на роли малые изменения политики. Это позволяет вносить небольшие изменения для обеспечения ориентированной на роль функциональности без полного дублирования главной политики, что дает большим предприятиям преимущество централизованного управления политикой в сочетании с гибкостью настройки для отдельных применений при необходимости.

Основная трудность такого подхода - его реализация. Для больших организаций с множеством различных применений и ролей серверов создание правильного набора политик трудоемко и продолжительно, но это было до появления SCW. При использовании SCW для создания политик и их приложения к нужным подразделениям можно значительно сократить время на развертывание ориентированной на каталоги безопасности на основе ролей как для существующих рабочих процессов, так и для будущих. Чтобы проиллюстрировать, как организация может выполнить эту работу, посмотрим, как в большой организации применены SCW и групповая политика на основе ролей.

SCW на предприятии

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

Поскольку SCW не установлен по умолчанию, Contoso необходимо отдельно включить компонент SCW в образ для автоматической установки. Для этого добавляется новая строка SCW=On в раздел [Components] файла Unattend.txt. После этого все новые системы, установленные с этого образа, будут устанавливаться вместе с компонентом SCW. Учтите, что сама по себе настройка для установки SCW не применяет никаких политик к машинам, на которые устанавливается.

Для применения политики по умолчанию при установке в компании Contoso изменили раздел [Commands] файла cmdlines.txt в образе, чтобы вызвать команду scwcmd со следующими параметрами:

scwcmd configure /p:ContosoBaselinePolicy.xml 

Как текстовый файл, так и файл XML должны находится в каталоге $OEM$ образа. Почему Contoso применяет базовую политику при установке вместо того, чтобы ориентироваться на политики, примененные к ведущему подразделению в каталоге? Применяя политику во время установки, Contoso создает прочную базу независимо от того, подключена ли машина к Active Directory®. Например, если сервер строится для целей тестирования, применение базовой политики во время установки гарантирует, что он будет соответствовать стандартам политики безопасности организации, даже если никогда не будет подключен к Active Directory. Если сервер в дальнейшем будет подключен к Active Directory, приложение групповой политики и алгоритм приоритетов заменят локальные параметры параметрами уровня домена или подразделения (помните, что приоритеты расположены в следующем порядке: локальные, сайт, домен, подразделение).

После установки SCW Contoso может начать формирование базовой политики. Базовая политика — это политика, которая должна быть развернута на верхнем уровне безопасности на основе ролей иерархии подразделения; обычно она является наиболее запретительной политикой в иерархии. Идея состоит в том, чтобы обеспечить максимально возможную безопасность, затем открыть только те службы и порты для отдельных задач, которые требуются для данных ролей сервера. С этой целью базовая политика должна создаваться на простом заново построенном сервере путем добавления стандартного для Contoso набора средств управления и служебных программ с последующим запуском SCW. Например, после завершения установки Windows Contoso устанавливает на сервер (вручную или через файл cmdlines.txt) свой стандартный антивирус, средства резервного копирования, управления и наблюдения. Поскольку каждое из этих средств обычно создает свои службы Windows, установка их на сервер перед применением базовой политики позволяет SCW учитывать их на стадии блокировки служб.

После установки сервера Contoso запускает на нем SCW. SCW можно запустить локально или удаленно, в любом случае тот, кто его запускает, должен входить в локальную группу администраторов этой машины. При удаленном запуске SCW существует возможность выбрать учетную запись, от имени которой он будет запущен на удаленной машине, при локальном запуске для этой цели можно использовать программу runas.exe. Первая задача, которую выполняет SCW — выявить службы, запущенные на локальной машине, и отобразить установленные на данный момент роли (см. рис. 5).

Рис. 5 Выбор и просмотр ролей сервера

Рис. 5** Выбор и просмотр ролей сервера **(Щелкните изображение, чтобы увеличить его)

На базовом сервере Contoso не следует выбирать никаких ролей, поскольку для машины планировались максимальные запреты. Когда выбраны роли, которые должен выполнять сервер, следующим шагом будет выбрать необходимые возможности клиента для обеспечения таких функций, как автоматическое обновление, Active Directory или клиент FTP. Для большинства организаций принятие стандартных параметров SCW (как показано на рис. 6) обеспечивает необходимую функциональность (например, входить в домен) с одновременным запретом менее критичных функций (таких, как клиент FTP).

Рис. 6 Установленные возможности

Рис. 6** Установленные возможности **(Щелкните изображение, чтобы увеличить его)

Затем SCW продолжит работу, позволяя выбрать, какие административные средства и нестандартные службы можно разрешить. Эти нестандартные функции – причина того, что SCW следует запускать после установки стандартного пакета управления сервером Contoso. Когда установлены антивирус, программа резервного копирования и связанные приложения, SCW узнает об этих службах и включит их в параметры окончательной политики.

Последний вопрос, касающийся усиления безопасности служб, - что делать с неуказанными службами. Это службы, которые можно встретить на компьютерах, к которым применяется политика SCW, хотя они не были запущены на машине, где эта политика изначально создавалась. Например, если базовая политика применяется к новому серверу с установленными сторонними приложениями, любые установленные этими приложениями службы будут обрабатываться по установленным администраторами правилам. SCW позволяет администраторам не менять режим запуска этих служб или отключить их. Отключение повышает безопасность, но должно использоваться с осторожностью, поскольку все явно не включенные службы будут отключены. Поэтому данная функция наиболее подходит для сред с хорошим управлением и высокой степенью безопасности. Для других частей организации рекомендуется не менять режим запуска. Поэтому в примере Contoso был выбран именно этот вариант. Перед завершением процесса укрепления безопасности служб SCW представляет администратору отчет со списком изменяемых служб.

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

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

Рис. 7 Просмотр и разрешение портов

Рис. 7** Просмотр и разрешение портов **(Щелкните изображение, чтобы увеличить его)

После этого SCW позволяет администратору выбрать параметры реестра, такие как файл подписи и трафик печати. И еще раз, по опыту, лучшим выбором в базовой конфигурации будет выбор параметров по умолчанию с максимальной безопасностью.

Следующий набор параметров для выбора касается политики аудита системы. Для большинства систем лучшим вариантом является выбор аудита успеха; аудит всех действий занимает больше ресурсов процессора и создает значительный объем записей в журнале аудита. При подозрении на атаку или при необходимости более подробного анализа на отдельной машине можно включить аудит отказов.

Наконец, SCW предоставит администратору возможности для упрочения безопасности IIS. Эти возможности аналогичны возможностям, имеющимся в средстве IIS Lockdown, и сейчас включены непосредственно в состав политики SCW.

После завершения всех этапов SCW выдает администратору запрос на сохранение файла XML. Сохраненный файл затем должен быть преобразован в формат, непосредственно доступный для групповой политики. Для преобразования файла XML в GPO используется программа Scwcmd.exe. Нужно вести следующую команду:

scwcmd configure /p:ContosoBaselinePolicy.xml 

Эта политика автоматически создается в Active Directory и может быть применена к вершине укрепленной на основе ролей иерархии подразделений Contoso.

После применения этой политики к высшему уровню иерархии любые машины, добавляемые в иерархию подразделения, будут наследовать эти параметры. Когда добавляется машина, требующая внесения изменений в эту политику (такая, как сервер IIS, требующий, чтобы работала служба W3SVC), администраторы Contoso вновь запустят SCW для новой роли сервера, преобразуют новую политику в GPO и затем применят GPO к новому субподразделению, где установлен сервер (серверы). Поскольку приоритет имеют наиболее близкие к серверу GPO, в конечном результате все базовые параметры останутся неизменными, кроме тех, что потребовали изменения для обеспечения желаемой ролевой функциональности для этого подразделения (см. рис. 8).

Рис. 8 Применение политики в компании Contoso

Рис. 8** Применение политики в компании Contoso **(Щелкните изображение, чтобы увеличить его)

Истинная мощь такого подхода становится очевидной в больших организациях или при развертывании большого числа серверов. После создания и применения к подразделению базовой политики OU следующие серверы необходимо только добавить к подразделению, и они автоматически унаследуют необходимую политику безопасности. Таким образом, после создания политики и применения ее к Active Directory процесс развертывания новых серверов или замены существующих становится простым и быстрым.

Взгляд в будущее

В следующем выпуске Windows Server «Longhorn» Майкрософт значительно повысил компонентизацию операционной системы, что привело к упрощению и сокращению атакуемой поверхности даже при настройке по умолчанию. Вместо того, чтобы сосредоточится на ограничении минимально стандартной установки, администраторы будут использовать средство Server Manager, чтобы добавить роли и задачи, которые требуются для каждого сервера. Server Manager работает во многом подобно SCW, а именно, в нем имеется встроенная база данных зависимостей, позволяющая установщику добавлять только новые функциональные возможности, необходимые для желаемой роли сервера. Более того, рассмотренная в этой статье централизованно управляемая безопасность на основе ролей с использованием групповой политики в дальнейшем расширится путем значительного расширения возможностей, управляемых с помощью GPO. Короче, в Windows Server «Longhorn» концепция SCW переходит на следующий уровень за счет повышенной гибкости и еще более усиленной безопасности без дополнительной настройки.

Материалы по SCW

Начать работу с SCW помогут следующие материалы в Интернете:

Джон Морелло (John Morello) окончил Университет штата Луизиана и в течение шести лет занимает различные должности в корпорации Майкрософт. Работая в должности старшего консультанта, он разрабатывает решения в сфере безопасности для предприятий, входящих в рейтинг Fortune 100, а также для клиентов из гражданских и оборонных федеральных ведомств. В настоящее время является руководителем программы в группе по разработке операционной системы Windows Server, занимающейся вопросами обеспечения безопасности и технологиями удаленного доступа.

© 2008 Корпорация Майкрософт и компания CMP Media, LLC. Все права защищены; полное или частичное воспроизведение без разрешения запрещено.