А знаете ли вы, что сервером OCSP (Online Responder) можно легко (ну это я приукрасил) управлять прямиком из PowerShell? Если знаете, можете дальше не читать. А если не знаете, тогда тоже можете не читать, потому что вряд ли это так уж интересно.
Пкитим реализовал несколько COM интерфейсов (по правде говоря, они кроме COM'ов ничего не умеют) для управления Online Responder. Основных интерфейсов 2:
IOCSPAdmin используется для управления самой фермой респондеров и для управления конфигурациями отзыва на отдельно взятом сервере из фермы. Объект создаётся следующим образом:
$OCSPAdmin = New-Object -ComObject CertAdm.OCSPAdmin
А подключение к серверу происходит при помощи метода GetConfiguration:
PS C:\> $OCSPAdmin = New-Object -ComObject CertAdm.OCSPAdmin PS C:\> $OCSPAdmin.GetConfiguration("dc2",$true) PS C:\> $OCSPAdmin OCSPServiceProperties OCSPCAConfigurationCollection --------------------- ----------------------------- System.__ComObject System.__ComObject PS C:\>
Примечание: служба Online Responder нигде в сети не регистрируется и никаких локаторов службы не существует. Оснастка PKIView.msc находит эти респондеры просто путём изучения расширения AIA у самого последнего сертификата CA Exchange.
В свойстве OCSPServiceProperties хранятся общесерверные настройки и настройки фермы:
PS C:\> $OCSPAdmin.OCSPServiceProperties Name Value Modified ---- ----- -------- ArrayController dc2.contoso.com False ArrayMembers {dc2.contoso.com} False AuditFilter 0 False MaxNumOfCacheEntries 5000 False NumOfThreads 50 False
ArrayController указывает на контроллер фермы (с которым вся ферма синхронизирует конфигурации), ArrayMembers показывает имена компьютеров — членов фермы. Вобщем, всё достаточно понятно (разумеется, если вы имеете опыт конфигурирования Online Responder из UI). Здесь мы видим колонку Modified. Оно показывает, было ли изменено свойство в течении нашей сессии. Это необходимо затем, чтобы пометить настройки, которые следует обновить при вызове метода SetConfiguration.
PS C:\> $OCSPAdmin.OCSPServiceProperties.Item(4).value = 5001 PS C:\> $OCSPAdmin.OCSPServiceProperties Name Value Modified ---- ----- -------- ArrayController dc2.contoso.com False ArrayMembers {dc2.contoso.com} False AuditFilter 0 False MaxNumOfCacheEntries 5001 True NumOfThreads 50 False PS C:\> $OCSPAdmin.SetConfiguration("dc2",$true)
Т.е. вы здесь можете поменять контроллер фермы, добавить/удалить членов фермы, настроить аудит, размер кэша и количество параллельных потоков. Так сказать, не отходя от кассы. Единственное, что здесь следует учитывать — у COM'ов индексирование массивов начинается с 1 (а не с 0, как в дотнете).
Для первого раза, я думаю, будет достаточно. В следующей части мы разберём более подробно конфигурации отзыва.
Comments: