Установка центра сертификации
Эту процедуру можно использовать для установки служб сертификатов Active Directory (AD CS), чтобы можно было зарегистрировать сертификат сервера на серверах, на которых выполняется сервер политики сети (NPS), служба маршрутизации и удаленного доступа (RRAS) или оба.
- Перед установкой служб Active Directory сертификатов необходимо присвоить компьютеру имя, настроить компьютер со статическим IP-адресом и присоединить компьютер к домену. Дополнительные сведения о выполнении этих задач см. в разделе сетевого руководствапо Windows Server 2016 Core.
- Для выполнения этой процедуры компьютер, на котором устанавливается AD CS, должен быть присоединен к домену, где установлена служба домен Active Directory Services (AD DS).
Членство в группах "Администраторы предприятия " и "Администраторы домена корневого домена" является минимальным требованием для выполнения этой процедуры.
Чтобы выполнить эту процедуру с помощью Windows PowerShell, откройте Windows PowerShell и введите следующую команду и нажмите клавишу ВВОД.
Add-WindowsFeature Adcs-Cert-Authority -IncludeManagementTools
После установки AD CS введите следующую команду и нажмите клавишу ВВОД.
Install-AdcsCertificationAuthority -CAType EnterpriseRootCA
Установка служб сертификатов Active Directory
Если вы хотите использовать Windows PowerShell для установки служб Active Directory Certificate Services, см. раздел Install-адксцертификатионаусорити для командлетов и необязательных параметров.
Войдите в систему как член группы "Администраторы предприятия" и группу "Администраторы домена корневого домена".
Откройте диспетчер серверов, щелкните Управление, а затем нажмите кнопку Добавить роли и компоненты. Откроется мастер добавления ролей и компонентов.
На странице Перед началом работы нажмите кнопку Далее.
Страница Перед началом работы мастера добавления ролей и компонентов не отображается, если при предыдущем запуске мастера был установлен флажок Пропустить эту страницу по умолчанию.
На странице Выбор типа установки убедитесь, что выбрана Установка ролей или компонентов, затем нажмите кнопку Далее.
На странице Выбор целевого сервера убедитесь, что выбран пункт Выберите сервер из пула серверов. На странице Пул серверов проверьте, что выбран локальный компьютер. Щелкните Далее.
В окне Выбор ролей сервера в списке роли выберите Active Directory службы сертификации. Когда появится запрос на добавление необходимых компонентов, щелкните Добавить компоненты, а затем нажмите кнопку Далее.
В окне Выбор компонентов нажмите кнопку Далее.
В Active Directory службах сертификации прочтите предоставленные сведения и нажмите кнопку Далее.
На странице Подтверждение выбранных элементов для установки нажмите кнопку Установить. Не закрывайте мастер в процессе установки. После завершения установки щелкните настроить Active Directory службы сертификатов на целевом сервере. Откроется мастер настройки служб сертификатов Active Directory. Прочтите учетные данные и при необходимости укажите учетные данные для учетной записи, которая является членом группы "Администраторы предприятия". Щелкните Далее.
В службах ролей щелкните центр сертификации, а затем нажмите кнопку Далее.
На странице тип установки убедитесь, что выбран параметр ЦС предприятия , и нажмите кнопку Далее.
На странице Укажите тип страницы ЦС убедитесь, что выбран параметр корневой ЦС , и нажмите кнопку Далее.
На странице Указание типа закрытого ключа убедитесь, что выбран параметр создать новый закрытый ключ , а затем нажмите кнопку Далее.
На странице шифрование для центра сертификации сохраните параметры по умолчанию для CSP (поставщик хранилища ключей RSA) и алгоритм хэширования (SHA2) и определите максимальную длину символов ключа для развертывания. Большие ключевые длины символов обеспечивают оптимальную безопасность; Однако они могут повлиять на производительность сервера и могут быть несовместимы с устаревшими приложениями. Рекомендуется использовать значение по умолчанию 2048. Щелкните Далее.
На странице имя ЦС сохраните Предлагаемое общее имя ЦС или измените имя в соответствии с вашими требованиями. Убедитесь, что имя ЦС совместимо с соглашениями об именовании и целями, так как вы не можете изменить имя ЦС после установки служб AD CS. Щелкните Далее.
На странице срок действия в поле Укажите срок действия введите число и выберите значение времени (годы, месяцы, недели или дни). Рекомендуется использовать значение по умолчанию, равное пяти годам. Щелкните Далее.
На странице база данных ЦС в поле укажите расположения базы данных укажите расположение папки для базы данных сертификатов и журнала базы данных сертификатов. Если указаны расположения, отличные от расположений по умолчанию, убедитесь, что папки защищены с помощью списков управления доступом (ACL), которые не позволяют неавторизованным пользователям или компьютерам получать доступ к базе данных и файлам журналов ЦС. Щелкните Далее.
В окне Подтверждение нажмите кнопку настроить , чтобы применить параметры, а затем нажмите кнопку Закрыть.
Источник
Установка и использование оснастки «Центр сертификации»
Оснастка «Центр сертификации» может использоваться для администрирования центра сертификации на данном или другом компьютере. Эта оснастка автоматически устанавливается на компьютере, на котором установлен центр сертификации. Либо сначала необходимо установить средства удаленного администрирования сервера служб AD CS (Active Directory Certificate Services).
Дл выполнения этой процедуры необходимо быть администратором центра сертификации. Для получения дополнительных сведений см. Реализация ролевого администрирования.
Если оснастка «Центр сертификации» используется на данном компьютере в первый раз, нажмите кнопку Пуск, выберите Выполнить, введите mmc, а затем нажмите клавишу ВВОД.
В меню Файл выберите команду Добавить или удалить оснастку.
Добавьте оснастку Центр сертификации в список справа.
Выберите компьютер, на котором размещен центр сертификации, и нажмите кнопку ОК.
Открытый экземпляр оснастки «Центр сертификации» можно использовать для администрирования нескольких центров сертификации, переключаясь между ними.
Для выполнения этой процедуры пользователь должен быть администратором удаленного центра сертификации. Для получения дополнительных сведений см. Реализация ролевого администрирования.
Откройте оснастку «Центр сертификации».
В меню Действие выберите команду Перенацелить центр сертификации.
Выберите команду Другой компьютер и введите имя компьютера.
Оснастку «Центр сертификации» также можно настроить с помощью фильтров отображения. Фильтры позволяют ограничить элементы, отображаемые в области сведений оснастки «Центр сертификации», элементами, соответствующими установленному набору критериев. Например, можно создать фильтр, который будет отображать в папке Выданные сертификаты только сертификаты, которые были действительны после указанной даты.
Пользователь не обязан быть администратором центра сертификации, но для выполнения данной процедуры у него должны быть разрешения на выполнение задач администрирования над данным центром сертификации. Для получения дополнительных сведений см. Реализация ролевого администрирования.
Откройте оснастку «Центр сертификации».
Щелкните любую из отображаемых папок, кроме Шаблоны сертификатов.
В меню Просмотреть выберите команду Фильтр.
Для каждого из условий выбора выполните следующие действия:
- Нажмите кнопку Добавить.
Чтобы удалить фильтр, выберите его в диалоговом окне Фильтр и нажмите кнопку Удалить.
Чтобы удалить все существующие фильтры, в диалоговом окне Фильтр нажмите кнопку Сброс.
Для установки средств администрирования удаленного сервера на компьютер с операционной системой Windows Server 2008 R2 или Windows Server 2008 можно воспользоваться мастером добавления компонентов.
Для выполнения этой процедуры необходимо быть администратором сервера. Для получения дополнительных сведений см. Реализация ролевого администрирования.
Откройте Диспетчер серверов.
В группе Сводка компонентов нажмите кнопку Добавить компоненты, чтобы запустить мастер добавления компонентов.
На странице Выбор компонентов щелкните знак «плюс» слева от флажка Средства удаленного администрирования сервера, а затем щелкните знак «плюс» слева от флажка Средства администрирования ролей.
Установите флажок Службы сертификации Active Directory , нажмите кнопку Далее, а затем нажмите кнопку Установить.
Источник
Windows Server. Создание автономного центра сертификации.
Перед каждым администратором рано или поздно возникает необходимость обеспечить безопасный обмен информации через интернет, внешние и внутренние сети, а также проверку подлинности каждой из сторон, участвующих в обмене информацией. На помощь здесь приходит инфраструктура открытых ключей (PKI) и службы сертификации Windows.
Инфраструктура открытых ключей позволяет использовать цифровые сертификаты для подтверждения подлинности владельца и позволяет надежно и эффективно защищать трафик передаваемый по открытым сетям связи, а также осуществлять с их помощью аутентификацию пользователей. Основой инфраструктуры открытых ключей является центр сертификации, который осуществляет выдачу и отзыв сертификатов, а также обеспечивает проверку их подлинности.
Для чего это может быть нужно на практике? Цифровые сертификаты позволяют использовать шифрование на уровне приложений (SSL/TLS) для защиты веб-страниц, электронной почты, служб терминалов и т.п., регистрацию в домене при помощи смарт-карт, аутентификацию пользователей виртуальных частных сетей (VPN), шифрование данных на жестком диске (EFS), а также в ряде случаев обойтись без использования паролей.
Для создания центра сертификации нам понадобится сервер, работающий под управлением Windows Server, который может быть как выделенным, так и совмещать роль центра сертификации с другими ролями. Однако следует помнить, что после развертывания центра сертификации вы не сможете поменять имя компьютера и его принадлежность к домену (рабочей группе).
Центр сертификации (ЦС) может быть двух типов: ЦС предприятия и изолированный (автономный) ЦС, рассмотрим их отличительные особенности:
ЦС предприятия
- Требует наличия ActiveDirectory
- Автоматическое подтверждение сертификатов
- Автоматическое развертывание сертификатов
- Возможность запроса сертификатов через Web-интерфейс, мастер запросов и автоматическое развертывание
Изолированный (автономный) ЦС
- Не требует наличия ActiveDirectory
- Ручное подтверждение сертификатов
- Отсутствие возможности автоматического развертывания
- Запрос сертификатов только через Web-интерфейс
Методика развертывания ЦС для Windows Server 2003 и Windows Server 2008 несколько различаются, поэтому мы решили рассмотреть их в отдельности.
Windows Server 2003
Для возможности использования Web-интерфейса для выдачи сертификатов нам понадобится установленный web-сервер IIS. Установим его через диспетчер сервера: Пуск — Управление данным сервером — Добавить или удалить роль.
В списке ролей выбираем роль Сервера приложений. В следующем окне устанавливаем галочку Включить ASP.NET, если IIS уже установлен данный шаг можно пропустить.
После установки IIS приступим к развертыванию Центра сертификации, это делается через оснастку Установка и удаление программ — Установка компонентов Windows, где выбираем Службы сертификации.
Следующим шагом выберите тип ЦС и его подчиненность. Так как в нашем случае сеть не имеет доменной структуры, то ЦС Предприятия недоступен для выбора. Поскольку это первый (и пока единственный ЦС) следует выбрать корневой сервер, подчиненный тип следует выбирать для развертывания следующих ЦС, например для филиалов.
Далее вводим имя ЦС (должно совпадать с именем сервера) и пути размещения файлов. В процессе установки программа предложит перезапустить IIS и, если не была включена поддержка страниц ASP.NET, предложит ее включить, с чем следует согласиться.
Windows Server 2008 R2
В Windows Server 2008 (2008 R2) все настройки консолидированы в одном месте, что делает установку ЦС более простой и удобной. Выбираем Диспетчер сервера — Роли — Добавить роли, в списке ролей выбираем Службы сертификации Active Directory.
В следующем окне обязательно добавляем компонент Служба регистрации в центре сертификации через интернет. При этом будут автоматически определены необходимые службы ролей и компоненты (такие как IIS) и будет предложено их добавить.
Дальнейшая настройка аналогична Windows Server 2003. Вводим тип ЦС, его имя и место хранения файлов, подтверждаем выбор компонент и завершаем установку.
Проверка работы ЦС
Для первоначальной проверки работоспособности ЦС можете запустить оснастку Центр сертификации (Пуск — Администрирование — Центр Сертификации). Если все сделано правильно вы должны увидеть следующее окно:
Попробуем теперь получить сертификат для клиентского ПК. Запустим браузер, в адресной строке которого укажем адрес http://имя_сервера/certsrv, где имя_сервера — имя сервера ЦС. Вы попадете на главную страницу центра сертификации.
Прежде всего необходимо загрузить сертификат ЦС и поместить его в хранилище доверенных коренных центров сертификации. Если в вашей сети несколько ЦС следует загрузить и установить цепочку сертификатов. Для этого выбираем: Загрузка сертификата ЦС, цепочки сертификатов или CRL, затем Загрузка сертификата ЦС или Загрузка сертификата ЦС и сохраняем сертификат в любое удобное место.
Теперь перейдем к установке, для этого щелкнем правой кнопкой на файле сертификата и выберем Установить сертификат, откроется мастер импорта, в котором откажемся от автоматического выбора хранилища вручную выбрав Доверенные корневые центры сертификации, теперь данный ПК будет доверять всем сертификатам выданным данным ЦС.
Для получения клиентского сертификата снова откроем сайт ЦС и выберем Запрос сертификата — расширенный запрос сертификата — Создать и выдать запрос к этому ЦС. Заполняем форму запроса, в качестве имени указываем имя ПК или пользователя, в качестве типа сертификата указываем Сертификат проверки подлинности клиента и жмем кнопку Выдать.
При попытке создать запрос сертификата вы можете получить следующее предупреждение:
В этом случае можно добавить данный узел в зону Надежные узлы и установить низкий уровень безопасности для этой зоны. В Windows Server понадобится также разрешить загрузку неподписанных ActiveX.
Теперь на сервере откроем оснастку Центр сертификации и в разделе Запросы на ожидание найдем наш запрос и щелкнув на него правой кнопкой выберем Все задачи — Выдать.
Теперь вернемся на клиентский ПК и еще раз откроем сайт ЦС. На этот раз выберем Просмотр состояния ожидаемого запроса сертификата, вы увидите свой запрос, щелкнув на которой вы попадете на страницу Сертификат выдан и сможете сразу его установить.
Если все сделано правильно, то сертификат успешно установится в хранилище личных сертификатов.
По окончании проверки не забудьте удалить ненужные сертификаты с клиентского ПК и отозвать их в центре сертификации на сервере.
Источник
Оснастку центр сертификации
Конфигурация площадки
Домен: TEST.LOCAL
Серверы: (Автономный) RootCA ; (Предприятие) SRV03.TEST.LOCAL
Сетевое хранилище DFS: \\test.local\SOFT\PKI
WEB сервер: совмещён с сервером ЦС домена SRV03.TEST.LOCAL
Подготовка сетевого хранилища
Создать сетевую папку на файловом сервере и подключить к пространству имён. Назначить права на папку: Доступ — Все (чтение/запись); Безопасность — TEST\SRV03$ (чтение/запись)(учётная запись сервера ЦС в домене)
Подготовка WEB сервера
На серверах DNS (в случае домана — контроллеры домена) создать запись pki.test.local ведущую на IP адрес WEB сервера (в нашем случае SRV03.TEST.LOCAL)
Создасть сайт pki.test.local на WEB сервере, указав в качестве физического сетевой путь \\test.local\SOFT\PKI
Для возможности работы с сетевой папкой необходимо запускать сайт как сетевую службу. Для этого в разделе Пулы приложений — выбрать приложение созданого сайта PKI — Дополнительные параметры. Параметр Модель процесса — Удостоверение установить NetworkService. Перейти в настройки сайта — Проверка подлинности — Анонимная проверка подлинности — Изменить и установить Удостоверение пула приложений
Чтобы IIS сервер мог распознавать DeltaCRL необходимо добавить возможность чтения знака «+». Для этого в оснастке IIS нужно в настройках сайта открыть Фильтрация запросов — Изменить параметры и установить Разрешить двойное преобразование
Установка корневого центра сертификации
Предполагается, что компьютер с именем RootCA установлен, обновлён и сконфигурированы параметры безопасности. Данный компьютер будет выполнять роль корневого центра сертификации (Root Certification Authority). Поскольку корневой CA — самая важная точка в иерархии PKI, этот сервер будет нормально выключен и включаться только для следующих целей:
- Отправка новой заявки на сертификат;
- Публикация CRL;
- Обновление сертификата самого CA;
- Установка обновлений безопасности.
В остальное время он должен быть выключен и физический доступ к нему должен быть ограничен. Данный сервер не будет издавать сертификаты конечным потребителям, поэтому выключенное состояние никак на потребителях не отразится.
После установки Центра сертификации (из стостава AD CS) необходимо её настроить.
- Автономный ЦС
- Корневой ЦС
- Создать новый закрытый ключ
- RSA#Microsoft Software Key Storage Provider; длину ключа в 2048 бит и алгоритм подписи в SHA1
- Имя ЦС: ROOT-TEST-CA
- Период действия сертификата = 15 лет
- Период публикации отозванных сертификатов = 1 год
Последующая настройка выполняется с помощью коммандной строки
Создаём папку в корне диска C, где будут храниться CRT и CRL файлы
Задаём точки публикации CRL файлов и ссылки, публикуемые в издаваемых сертификатах. То же самое и для CRT файлов.
Для Windows 2008 строка будет с двумя знаками %% для переменных certutil -setreg CA\CRLPublicationURLs «65:%windir%\system32\CertSrv\CertEnroll\%%3%%8%%9.crl\n65:C:\CertData\%%3%%8%%9.crl\n2:http://pki.test.local/%%3%%8%%9.crl»
и также для certutil -setreg CA\CACertPublicationURLs «1:%windir%\system32\CertSrv\CertEnroll\%%1_%%3%%4.crt\n2:http://pki.test.local/%%3%%4.crt»
Поскольку мы не можем управлять публикацией CRT файлов, мы его переименовываем в нужное имя и копируем в папку CertData
задаём срок действия издаваемых сертификатов равным 15 лет
Задаём параметры публикации CRL (повторяем, что было указано в CAPolicy.inf)
Примечание: Данные параметр может быть изменены и через реестр в ветке HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CertSvc\Configuration\
Включаем полный аудит для сервера CA
Отключаем генерацию кросс-сертификатов
Конфигурируем ЦС для включения истёкших отозванных сертификатов в списки отзыва
Включаем поддержку сертификатов OCSP Response Signing на Offline CA:
Публикуем новый CRL в новую локацию.
Установка издающих центра сертификации
После установки Центра сертификации (из стостава AD CS) необходимо её настроить.
- ЦС предприятия
- Подчиненный ЦС
- Создать новый закрытый ключ
- RSA#Microsoft Software Key Storage Provider; длину ключа в 2048 бит и алгоритм подписи в SHA1
- Имя ЦС: TEST-CA
- Создать запрос сертификата в файле на конечном компьютере
- Период действия сертификата = 10 лет
- Период публикации отозванных сертификатов = 3 месяца
Скопировать файл запроса на сервер RootCA и выпустить по немуц сертификат
- открыть Панель управления—Администрирование—Центр сетрификации
- выбрать сервер-все задачи—Выдать новый запрос. и выбрать файл запроса
- перейти в подраздел запросы в ожидании
- выбелить запрос, затем все задачи — выдать
- перейти в подраздел выданные сертификаты и открыть сетрификат
- на вкладке Состав нажать копировать в файл и сохратить в формате .p7b (TEST-CA.p7b)
Скопировать файл выданного сертификата (TEST-CA.p7b) и файлы из папки C:\CertData (ROOT-TEST-CA.crt и ROOT-TEST-CA.crl) в сетевое хранилище \\test.local\SOFT\PKI
После этого сервер RootCA можно выключить.
Зарегистрировать файлы с корневого ЦС на подчинённом сервере (запускать с привилегиями Администратора)
Если ошибок не возникло, то установить сертификат ЦС (выданный RootCA)
- открыть Панель управления—Администрирование—Центр сетрификации
- выбрать сервер-все задачи—Установить сертификат ЦС и выбрать файл (TEST-CA.p7b)
- после успешной установки файл .p7b можно удалить
Выполнить пакетный файл настройки для дальнейшей настройки
Задаём точки публикации CRL файлов и ссылки, публикуемые в издаваемых сертификатах. То же самое и для CRT файлов.
Для Windows 2008 строка будет с двумя знаками %% для переменных certutil -setreg CA\CRLPublicationURLs «65:%windir%\system32\CertSrv\CertEnroll\%%3%%8%%9.crl\n65:\\test.local\SOFT\PKI\%%3%%8%%9.crl\n6:http://pki.test.local/%%3%%8%%9.crl»
и также для certutil -setreg CA\CACertPublicationURLs «1:%windir%\system32\CertSrv\CertEnroll\%%1_%%3%%4.crt\n2:http://pki.test.local/%%3%%4.crt
Поскольку мы не можем управлять публикацией CRT файлов, мы его переименовываем в нужное имя и копируем в папку CertData
задаём максимальный срок действия издаваемых сертификатов равным 5 лет
Задаём параметры публикации CRL (повторяем, что было указано в CAPolicy.inf)
Включаем наследование Issuer Statement в издаваемых сертификатах
Включаем полный аудит для сервера CA
задаём контекст конфигурации для сервера CA. Контекст конфигурации должен указывать на *корневой домен* текущего леса.
публикуем сертификат CA в AD
Публикуем новый CRL в новую локацию.
Проверка PKI предприятия
На сервере ЦС предприятия запустить оснастку PKIView.msc и проверить весь пусть регистрауии (Корневой и подчинённый серверы) — все пути AIA и CDP должны указывать на сайт http://pki.test.local
Внимание!
Особенность такого построения серверов (когда корневой сервер находится в отключенном режиме) является то, что периодически придётся вречную его запускать и выгружать обновлённый файл отозванных сервтификатов ROOT-TEST-CA.crt на общее хранилище. Для этого достаточно примерно за месяц до истечения действия текущего файла запустить сервер корневого ЦС и скопировать обновлённый файл из папки C:\CertData. Если файл автоматически не обновился при запуске сервера, то обновить его командой
Для того, чтобы теперь действующий на сервере SRV03.TEST.LOCAL WEB сервер корректно работал в домене по протоколу HTTPS нужно выпустить ему доменный сертификат.
Открываем Панель управления — Диспетчер службы IIS и выбираем WEB сервер (SRV03). Открываем Сертификаты сервера и проверяем текущие сертификаты. Сертификат сервера SRV03 на данный момент самоподписанный и поэтому не будет автоматически признаваться в домене.
Выбираем действие Создать сертификат домена. и заполняем данные. Полное имя должно соответствовать адресу требуемого сайта — в нашем случае будет SRV03.TEST.LOCAL, остальные поля произвольно. Далее выбираем сервер сертификации — в нашем случае будет TEST-CA\SRV03.TEST.LOCAL и назначаем Полное имя — оно будет отображаться как псевдоним в Диспетчере службы IIS.
После выпуска сертификата его нужно закрепить за основным сайтом сервера. Для этого нужно выбрать сайт Default Web Site — Изменить привязки, выбрать привязку https и в его настройках выбрать новый созданный сертификат.
Источник
Как развернуть и настроить инфраструктуру открытого ключа PKI и корпоративным центом сертификации CA
В закрытой корпоративной сети часто возникает необходимость в развертывании и настройки Инфраструктуры Открытого Ключа (Public Key Infrastructure — PKI) с корпоративным центом сертификации (Certificate authority — CA). В этой статье я опишу настройку простейшего CA одноуровневой иерархии PKI.
Настройку PKI будем рассматривать на базе Ubuntu 16.04, главным действующим лицом станет фирма с громким названием ООО “Рога и копыта” или по английски Horns and hooves, LLC, у этой фирмы есть свой веб сайт ca.hhbb.me, через который она будет распространять CRL (списки SSL-сертификатов, отозванных CA).
1. Теория
Прежде чем приступать к настройке стоит разобраться в нескольких основополагающих вопросах.
Что такое сертификат? Сертификат —это набор полей в формате x.509, содержащий идентификатор субъекта (например, имя пользователя или компьютера), время действия, имя издателя, назначение, используемые алгоритмы хеширования и шифрования, правила проверки подлинности и открытый ключ, а также цифровую подпись, которая позволяет удостоверить подлинность и целостность сертификата.
Как формируется цифровая подпись? От всех значащих полей сертификата считается хеш-функция и шифруется закрытым ключом центра сертификации. В само-подписанных сертификатах или сертификатах корневого центра сертификации результаты хеш-функции шифруются закрытым ключом непосредственного субъекта сертификации.
Как проверяется сертификат? Предположим, мы подключаемся к веб-серверу по протоколу https и получаем его сертификат.
- Проверяем его срок годности.
- Проверяем находится ли CA которым был выпущен сертификат, списке доверительных CA на нашем ПК.
- Проверяем подпись сертификата, те считаем заново хеш-сумму от всех значащих полей сертификата, расшифровываем цифровую подпись сертификата при помощи открытого ключа CA и сравниваем с нашей хеш-суммой, если совпадает — значит сертификат действительный.
- Если в сертификате указана точка распространения списка отзыва сертификатов (CDP), то забираем от-туда список отзыва сертификатов (CRL), проверяем его цифровую подпись и отсутствие в этом списке нашего сертификата.
- Проверяем дополнительные поля, например, может ли этот сертификат использоваться для шифрования веб-трафика.
Этот процесс нужно очень хорошо понимать.
Что такое центр сертификации? Центр сертификации (CA) — это некоторый набор софта, главная функция которого выдача, контроль и отзыв сертификатов. Каждый CA имеет свой сертификат и закрытый ключ. Закрытый ключ нужно хранить как зеницу ока, потому что он используется для подписи всех выдаваемых сертификатов и списков отзыва (CRL). Сертификату CA должны по априори доверять все компьютеры в сети.
Что такое PKI? PKI (Public Key Infrastructure — Инфраструктура Открытого Ключа) — это набор средств и правил необходимых для поддержания иерархии сертификатов. Проще говоря — это совокупность сертификатов, правил их выдачи и отзыва, правил хранения ключей, центров сертификации и тд.
Что такое одноуровневая PKI? Одноуровневая иерархия PKI — это наиболее простое решение для управления сертификатами, это один корневой центр сертификации, который подписывает все выдаваемые сертификаты организации. Недостаток одноуровневой системы заключается в недостаточной защищенности, возможности компрометации закрытого ключа корневого центра сертификации.
2. Настройка корневого центр сертификации (CA)
Переходим в директорию /etc/pki/CA, с этого момента она станет нашей рабочей директорией и все 100% действий мы будем делать в пределах нее.
Создаем необходимые для работы файлы, в index.txt будут записываться все выдаваемые сертификаты, в файлах serial будет храниться последний серийный номер выданного сертификата, а в crlnumber номер последнего списка отзыва сертификатов. Кажется мелочь, а работать без них ничего не будет.
Создаем директорию request, в нее мы будем складывать запросы на подпись сертификата.
Копируем файл с настройками центра сертификации и переходим к его редактированию.
Далее, нужно подправить файл настроек чтобы все заработало как нужно.
Теперь создадим сертификат корневого ЦС сроком на 5 лет, он спросит у нас пароль что бы зашифровать закрытый ключ и предложит заполнить несколько полей, в принципе немного раньше мы задали для них значения по умолчанию, поэтому смело щелкаем Enter, за исключением Common Name (CN) туда мы вводим полное название нашего CA: Horns and hooves, LLC Certification Authority.
Создадим список отзыва сертификатов (CRL), пока он будет пустым. Однако очень важно что бы он существовал и был доступным, если клиент не сможет получить CRL, то сертификат скорее всего будет признан недействительным. После запуска openssl запросит пароль от закрытого ключа ЦС необходимый для подписи CRL.
Далее необходимо установить веб-сервер apache:
Теперь нужно опубликовать в интернете сертификат CA и список отзыва. У фирмы ООО “Рога и копыта” есть сайт ca.hhbb.me, для простоты эксперимента предположим, что у нас настроен сервере Apache, который перенаправляет все запросы с ca.hhbb.me в директорию /var/www/html/pki. Настройка Apache более подробна описана в статье: Как установить LAMP на сервере Debian 10. Создадим две символические ссылки:
В итоге у нас получился полностью работоспособный корневой центр сертификации.
3. Работа с сертификатами
Что делать с центром сертификации дальше? Здесь мы рассмотрим две основополагающие функции, то для чего нужен CA — это выдача и отзыв сертификатов.
3.1 Выдача сертификатов
Предположим, что нам нужно выдать сертификат для защищенного при помощи SSLv3 сайта hhbb.me. Создадим запрос к центру сертификации, как и при создании корневого ЦС он задаст нам кучу вопросов, мы на все щелкаем Enter, а в Common Name вводим имя узла: hhbb.me.
Отправляем запрос на сертификат hhbb.me.csr на подпись в CA и на выходе мы получим готовый подписанный сертификат. Для подписи потребуется ввести пароль закрытого ключа CA и дважды согласиться щелкнув y:
Сертификат для сервера hhbb.me будет лежать в файле certs/hhbb.me.crt, а закрытый ключ в файле private/hhbb.me.key.
При необходимости конферетируем сертификат в формат PEM или DER:
3.2 Отзыв сертификатов
Следующая задача отозвать скомпрометированный сертификат веб-сервера hhbb.me. Для выполнения команд потребуется пароль от закрытого ключа ЦС.
Помечаем сертификат в базе CA как отозванный:
Обновляем список отзыва сертификатов CRL:
4. Вместо заключения
Таким образом, мы настроили инфаструктуру открытых ключей (Privat Key Infrastructure) с собственным центром сертификации (CA). Теперь мы сможем установить корневой сертификат CA в доверенное хранилище, и выдать всем серверам сертификаты, соединения будут защищены и никаких утечек информации.
Спасибо за уделенное время на прочтение статьи о том, как развернуть и настроить инфраструктуру открытого ключа (PKI) и корпоративным центом сертификации (CA)!
Если возникли вопросы, задавайте их в комментариях.
Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!
Источник