При видаленні служби сертифікації Active Directory Certificate Services необхідно виконати ряд попередніх і пост кроків, необхідних для коректного вилучень центру сертифікації (Certification Authority або CA) з Active Directory. Необхідно відкликати всі видані сертифікати, видалити закриті ключі, роль ADCS і вручну очистити AD про всі згадках видаляється центру сертифікації. При некоректному видаленні центру сертифікації з AD, додатки, що залежать від інфраструктури відкритого ключа, можуть працювати неправильно.
зміст:
- Відгук виданих сертифікатів
- Видалення ролі Active Directory Certificate Services
- Видалення об'єктів CA з Active Directory
- Видаляємо сертифікати, опубліковані в контейнері NtAuthCertificates
- Видалення бази центру сертифікації
- Видалення сертифікатів з контролерів домену
Відгук виданих сертифікатів
В першу чергу потрібно відкликати всі видані сертифікати. Для цього відкрийте консоль Certification Authority, розгорніть вузол сервера сертифікації і в перейдіть в розділ Issued Certificates. У правому вікні виберіть виданий сертифікат і в контекстному меню виберіть пункт All Tasks> Revoke Certificate.
Вкажіть причину відкликання сертифікати (Cease of Operation - Припинення роботи), час з якого він вважається недійсним (поточний) і натисніть Yes.
Сертифікат пропаде зі списку. Аналогічним чином зробите з усіма виданими сертифікатами.
Потім відкрийте властивості гілки RevokeCertificates.
Збільште значення поля CRLpublicationinterval (Інтервал публікації списку відкликаних сертифікатів) - цей параметр визначає періодичність оновлення списку відкликаних сертифікатів.
Натисніть ПКМ по вузлу Revoked Certificates і виберіть All Tasks> Publish.
Виберіть NewCRL та натисніть OK.
Перевірте і, в разі необхідності, відмовте у видачі всім очікують запитам на видачу сертифікатів. Для цього в контейнері Pending Requests виділіть запит і в контекстному меню виберіть All Tasks -> Deny Request.
Видалення ролі Active Directory Certificate Services
На сервері з роллю CA відкрийте командний рядок і зупинимо роботи служб сертифікації командою:
certutil -shutdown
Щоб вивести список локально зберігаються закритих ключів виконаємо команду:
certutil -key
У нашому прикладі з CA асоційований один закритий ключ. Видалити його можна командою certutil -delkey CertificateAuthorityName. Як ім'я ключа використовується значення, отримане на попередньому кроці. наприклад,
certutil -delkey le-DomainController-b44c7ee1-d420-4b96-af19-8610bf83d263
Щоб переконається, що закритий ключ CA видалений ще раз виконаємо команду:
certutil -key
Потім відкриємо консоль Server Manager і видалимо роль Active Directory Certificate Services.
Після видалення ролі сервер потрібно перезавантажити.
Видалення об'єктів CA з Active Directory
При установці центру сертифікації в структурі Active Directory створюється ряд службових об'єктів CA, які залишаються при видаленні ролі ADCS. Видаляється тільки об'єкт pKIEnrollmentService, завдяки чому клієнти не намагаються запитувати нові сертифікат у виведеного з експлуатації CA.
Виведемо список доступних центрів сертифікації (він порожній):
certutil
відкриємо консоль Active Directory Site and Services і включимо відображення сервісних гілок, вибравши у верхньому меню пункт View -> Show Services Node.
Потім послідовно видалимо такі об'єкти AD:
- Центр сертифікації в розділі Services -> Public Key Services -> AIA.
- Контейнер з ім'ям сервера CA в розділі Services -> Public Key Services -> CDP.
- CA в розділі Services> Public Key Services> Certification Authorities.
- Перевірте, що в розділі Services -> Public Key Services -> Enrollment Services відсутній об'єкт pKIEnrollmentService (Він повинен піти під час процесу деінсталяції CA). Якщо він присутній, видаліть його вручну.
- Видаліть шаблони сертифікатів, розташовані в розділі Services -> Public Key Services> Certificate Templates (Вибілити всі шаблони CTRL + A).
Видаляємо сертифікати, опубліковані в контейнері NtAuthCertificates
При установці нового центру сертифікації його сертифікати додаються і зберігаються в контейнері NTAuthCertificates. Їх також доведеться видалити вручну. Для цього з правами адміністратора підприємства з'ясуємо повний LDAP шлях до об'єкта NtAuthCertificates в Active Directory.
certutil -store -? | findstr "CN = NTAuth"
Залишилося видалити сертифікати за допомогою утиліти certutil, вказавши повний LDAP шлях, отриманий на попередньому кроці.
certutil -viewdelstore "ldap: /// CN = NtAuthCertificates, CN = Public Key Services, CN = Services, CN = Configuration, DC = no1abnopary, DC = local? cACertificate? base? objectclass = certificationAuthority"
Підтверджуємо видалення сертифіката.
Далі виконаємо команду:
certutil -viewdelstore "ldap: /// CN = NtAuthCertificates, CN = Public Key Services, CN = Services, CN = Configuration, DC = no1abnopary, DC = local? cACertificate? base? objectclass = pKIEnrollmentService"
Підтвердіть видалення сертифіката.
Видалення бази центру сертифікації
База CA автоматично не видаляється при видаленні служби ADCS, тому цю операцію потрібно виконати вручну, видаливши каталог %systemroot% \System32 \Certlog.
Видалення сертифікатів з контролерів домену
Необхідно видалити сертифікати, видані контролерам домену. Для цього на контролері домену потрібно виконати команду:
certutil -dcinfo deleteBad
Certutil спробує перевірити всі сертифікати, видані DC. Сертифікати, які не вдасться перевірити, будуть видалені.
На цьому повне видалення служби Active Directory Certificate Services зі структури Active Directory завершено.