Использование инструментов командной строки Windows и командлетов PowerShell для управления безопасностью в Windows Server 2012 (часть 1)
- Использование инструментов командной строки Windows и командлетов PowerShell для управления безопасностью в Windows Server 2012 (часть 3)
Введение
Когда-то Windows была полностью посвящена графическому интерфейсу. Для администраторов большим преимуществом Windows перед UNIX было отсутствие необходимости запоминать множество текстовых команд. Вместо этого вы можете перейти к нужной конфигурации. Однако с годами в операционную систему добавлялось все больше и больше функций. Эта растущая сложность привела к усложнению процесса настройки с диалоговыми окнами, скрытыми внутри других диалоговых окон, длинными списками флажков и консолями управления, в которых становилось все труднее ориентироваться по мере роста «дерева».
Microsoft предприняла доблестную попытку исправить ситуацию с помощью «волшебников», которые могут провести вас по шагам конкретного рабочего процесса, но их волшебные силы простираются далеко не так далеко. Часто мы обнаруживаем, что мастера, пытаясь охватить все возможные настройки, затягивают процесс и проводят нас через множество страниц, которые не имеют отношения к нашим конкретным целям. Там должен быть лучший способ.
По иронии судьбы, этот лучший способ иногда заключается в том, чтобы отказаться от «простого» графического пользовательского интерфейса и вернуться к основам командной строки. Многие администраторы Windows Server долгое время обращались к базовым инструментам командной строки, когда им нужно было что-то сделать быстро. Кто-нибудь щелкает диалоговые окна, чтобы найти основную информацию о сетевом адаптере, когда вы можете перейти в командную строку и ввести ipconfig /all ?
В последних версиях Windows Microsoft признала мощь командной строки и с этой целью предоставила более традиционные инструменты командной строки, а также разработала PowerShell с языком сценариев, разработанным специально для задач, связанных с системным администрированием. В Windows Server 2012 и 2012 R2 в вашем распоряжении множество инструментов командной строки и командлетов PowerShell для управления всеми аспектами безопасности. В этой статье мы рассмотрим, как использовать эти инструменты для управления службами сертификации и сертификатами.
Неграфические способы настройки и управления центрами сертификации Windows
Службы сертификатов Active Directory (AD CS) предоставляют организациям простой и экономичный способ создания и управления инфраструктурой открытых ключей для выпуска и использования цифровых сертификатов для проверки подлинности, шифрования и цифровой подписи документов и электронной почты. Службы сертификации были встроены в Windows Server, начиная с Windows 2000.
В Windows Server 2012 появилось много новых и измененных функций для служб сертификации. Одна из них — интеграция с диспетчером серверов. С помощью диспетчера серверов вы можете запустить мастер установки AD CS и управлять AD CS как ролью сервера через интерфейс диспетчера серверов. Но для тех, кто предпочитает командную строку,
Windows Server 2012 также добавляет возможности развертывания и управления в Windows PowerShell. Вы можете развертывать и управлять AD CS с помощью PowerShell.
Существует ряд шагов, связанных с настройкой Windows Server для работы в качестве центра сертификации. Когда вы используете мастер, он проведет вас через каждый из шагов. Когда вы используете инструменты командной строки, вам необходимо иметь представление о необходимых шагах и правильной последовательности этих шагов. Информацию об этом процессе можно найти на веб-сайте Windows Server 2012 в TechNet в этой статье под названием Это относится как к Windows Server 2012, так и к Windows Server 2012 R2 Preview.
Использование Certutil для настройки и управления центрами сертификации Windows
Certutil — это инструмент командной строки, входящий в состав Windows Server, который устанавливается при установке роли служб сертификатов. Его можно использовать для просмотра текущей информации о конфигурации ЦС, что он и делает, когда вы запускаете его без добавления каких-либо параметров.
Используя доступные параметры, вы можете использовать Certutil для настройки служб сертификации, проверки сертификатов и пар ключей и даже для резервного копирования и восстановления компонентов центра сертификации. Certutil существует с тех пор, как службы сертификации были впервые представлены в Windows 2000, и Microsoft увеличила объем и функциональность в различных версиях. Некоторые из наиболее часто используемых параметров включают следующее:
- -dump Добавить, чтобы выгрузить информацию о конфигурации или файлы. Это действие по умолчанию при запуске Certutil на сервере, на котором не установлена роль служб сертификации.
- -deny Добавьте это, чтобы отклонить ожидающий запрос сертификата
- -resubmit Добавьте это, чтобы снова отправить ожидающий запрос сертификата
- -revoke Добавить это, чтобы отозвать сертификат
- GetCRL Добавьте это, чтобы получить список отозванных сертификатов (CRL).
- -CRL Добавьте это, чтобы опубликовать новый CRL
- -shutdown Добавьте это, чтобы выключить AC CS
- -backup Добавить это для резервного копирования AD CS
- -restore Добавьте это, чтобы восстановить AD CS из резервной копии.
- -importPFX Добавьте это, чтобы импортировать сертификат и закрытый ключ
- -addstore, -delstore Добавьте их, чтобы добавить сертификат или удалить сертификат из хранилища сертификатов.
- -CATemplates Добавьте это, чтобы отобразить шаблоны для ЦС.
- -verify Добавить для проверки сертификата, списка отзыва сертификатов или цепочки сертификатов.
- -verifykeys Добавьте это, чтобы проверить открытый или закрытый ключ
Существует множество других параметров, доступных для выполнения различных аспектов управления службами сертификации. Полный список, сведения о синтаксисе и примеры см. в библиотеке TechNet.
Вики-сайт TechNet содержит хорошую запись в блоге об использовании Certutil, опубликованную Куртом Хадсоном.
Использование командлетов AD CS PowerShell для настройки и управления центрами сертификации Windows
Существует ряд командлетов развертывания AD CS для установки и удаления службы роли ЦС и других служб, связанных с AD CS.
Ролевая служба ЦС
Чтобы настроить службу роли ЦС на сервере через PowerShell, используйте следующий командлет:
Install-AdcsCertificationAuthority
Доступен ряд параметров, в том числе –CACommonName<String>, который указывает общее имя центра сертификации, и –CADistinguishedNameSuffix<String>, который указывает суффикс отличительного имени центра сертификации.
Используйте параметр –CAType<CAType>, чтобы указать тип центра сертификации, который вы хотите установить. Доступные значения включают EnterpriseRootCA, EnterpriseSubordinateCA, StandaloneRootCA или StandaloneSubordinateCA.
Обратите внимание, что сервер должен быть членом домена Active Directory, чтобы можно было установить ЦС в качестве центра сертификации предприятия (автономные типы можно установить на серверах, которые являются членами рабочих групп, а также на серверах-членах домена). Для завершения установки необходимо использовать правильные учетные данные:
- Если вы устанавливаете ЦС предприятия, вы должны использовать учетные данные члена группы администраторов предприятия.
- Если вы устанавливаете автономный центр сертификации в домене, вы должны использовать учетные данные члена группы администраторов домена.
- При установке автономного ЦС на сервер, не принадлежащий домену, необходимо использовать учетные данные члена группы администраторов.
Чтобы ввести учетные данные, используйте следующий параметр:
-Учетные данные<PSCredential>
Если вы не уверены в том, что делаете, может быть хорошей идеей добавить параметр –Whatif, который показывает, что произойдет, если командлет запустится фактического запуска командлета, и/или параметр –Confirm, который запрашивает подтверждение перед запуском командлета.
У этого командлета есть ряд других параметров, которые могут применяться в вашей ситуации, поэтому перед развертыванием ЦС с помощью этого командлета PowerShell обязательно ознакомьтесь с ними здесь.
Другие услуги
Другие командлеты развертывания включают следующее:
- Install-AdcsEnrollmentWebService Этот командлет настраивает веб-службу регистрации сертификатов, которая работает вместе с веб-службой политик регистрации, чтобы принимать запросы на сертификаты и выдавать сертификаты по протоколу HTTPS, а также использовать HTTPS для регистрации сертификатов в лесах или по экстрасети для мобильных пользователей.
- Install-AdcsEnrollmentPolicyWebService Этот командлет выполняет настройку веб-службы политики регистрации сертификатов. Он устанавливается вместе с веб-службой регистрации сертификатов, чтобы обеспечить регистрацию сертификатов на основе политик без подключения к домену.
- Install-AdcsWebEnrollment Этот командлет настраивает службу регистрации ЦС через Интернет, которая позволяет пользователям и компьютерам, не являющимся членами домена (и членам домена, не подключенным к сети), подавать заявки на сертификаты в ЦС через Интернет или интрасеть с помощью веб интерфейс.
- Install-AdcsNetworkDeviceEnrollmentService Этот командлет настраивает службу NDES, которая использует простой протокол регистрации сертификатов (SCEP) для связи между сетевыми устройствами и центром регистрации в процессе подачи заявок на сертификаты. SCEP позволяет устройствам, не имеющим учетных данных домена, регистрировать сертификаты. Вы можете узнать больше о NDES здесь.
- Install-AdcsOnlineResponder Этот командлет настраивает службу сетевого ответчика, которая используется для настройки и управления проверкой подлинности протокола состояния онлайн-сертификата и проверкой отзыва в сети Windows.
В дополнение к этим командлетам для установки различных служб, связанных с ролью AD CS, существуют также соответствующие командлеты PowerShell для удаления каждой из них. Просто замените «Удалить» на «Установить» в каждом из имен командлетов, чтобы удалить информацию о конфигурации для этой службы.
Администрирование AD CS
После установки и настройки роли служб сертификации и дополнительных служб ролей вы можете использовать командлеты администрирования AD CS для выполнения различных административных задач, таких как добавление шаблонов сертификатов или URI CRL, настройка доступа к информации центра сертификации и многое другое. Эти командлеты и их конкретные функции перечислены здесь.
Резюме
В части 1 этой серии статей об управлении безопасностью в Windows Server 2012 с помощью утилит командной строки и PowerShell мы представили обзор того, как использовать Certutil.exe и командлеты PowerShell для установки и управления ролью служб сертификации. В следующий раз, во второй части, мы продолжим обсуждение с помощью дополнительных инструментов командной строки и командлетов PowerShell, которые можно использовать для упрощения и ускорения задач управления безопасностью.
- Использование инструментов командной строки Windows и командлетов PowerShell для управления безопасностью в Windows Server 2012 (часть 3)