Удаляем Let’s Encrypt сертификаты в Windows

Если вы используете на хосте Windows бесплатные сертификатов Let’s Encrypt и решили переключиться на другой CA (собственный или коммерческий), нужно выполнить ряд шагов по отзыву старых сертификатов Let’s Encrypt и очистки их следов в Windows.

Ранее мы показывали, как с помощью клиента WACS в Windows настроить автоматический выпуск и продление сертификатов Let’s Encrypt для защиты подключений к веб-сайтам или службам RDS. Если вы использовали консольный клиент WACS для выпуска и установки сертификата Let’s Encrypt, для его корректного удаления нужно выполнять ряд действий:

  1. Удалить задание планировщика для автоматического продления сертификата
  2. Отозвать старый сертификат Let’S Encrypt (или оставить его как есть, чтобы срок действия его истек автоматически)
  3. Отключить использование сертификата Let’S в настройках веб сайта IIS или службах RDS
  4. Удалить клиент WACS и связанные файлы
  5. Очистить каталог C:ProgramDatawin-acme

При установке сертификата Let’s Encrypt, утилита wacs автоматически создает задание планировщика, которое по расписанию проверяет срок действия сертификата и продляет его.

  1. Откройте планировщик задач Windows Task Sheduler ( taskschd.msc ) и найдите в нем задание продления сертификата. По умолчанию оно называется win-acme renew (acme-v02.api.letsencrypt.org).
  2. В свойствах задания на вкладке Actions можно найти путь к каталогу с исполняемым файлом клиента wacs.exe (в нашем примере это C:pswacs).
  3. Отключите (или удалите) задание планировщика.

Если в Windows установлено и используется несколько сертификатов Let’S encrypt с автопродлением, можно отключить продление только для определенного сертификата. Вывести все задания продления сертификатов:

.wacs.exe --list

Отключить обновление определенного сертификата можно по --friendlyname или --id :

.wacs.exe --cancel --friendlyname "[Manual] 123356.winitpro.ru"

Параметры автоматического продления сертификатов хранятся в файлах с расширением *.renewal.json в каталоге C:ProgramDatawin-acmeacme-v02.api.letsencrypt.org. Можно просто удалить JSON файл с настройками.

Чтобы отозвать выпущенный сертификат Let’s Encrypt выполните команду:

.wacs.exe --revoke --friendlyname "[Manual] 123356.winitpro.ru"

Также можно отключить задания продления и отозвать сертификат из меню утилиты wacs. Пункт находятся в разделе A: Manage renewals:

Теперь нужно отвязать сертификат в настройках сайта IIS.

  1. Откройте консоль управления IIS ( inetmgr ).
  2. Перейдите в настройки Site Bindings сайта IIS и выберите для сайта другой сертификат вместо Let’s Encrypt.
  3. Перейдите в раздел Server Certificates в настройках IIS и удалите сертификат Let’s Encrypt. Это также удаляет сертификат из локального хранилища сертификатов.

Либо вы можете удалить сертификат из локального хранилища вручную. Чтобы вывести все сертификаты Let’s Encrypt, установленные в хранилище, выполните PowerShell команду:

dir cert: -Recurse|Where-Object { $_.Issuer -like "*Let's Encrypt*" }|select FriendlyName,Subject,NotBefore,NotAfter,PSParentPath,thumbprint

Команда выведет имя, отпечаток, дату выпуска и срок действия установленных сертификатов Let’s Encrypt.

В данном примере есть два сертификата, установленные в хранилище LocalMachineWebHosting .

Откройте консоль хранилища сертификатов компьютера ( certlm.msc ), разверните раздел Web Hosting -> Certificates и удалите сертификаты Let’s Encrypt.

Затем удалите следующие папки

  • Каталог с клиентом WAСS (в нашем примере C:PSwacs , как мы выяснили в настройках задания планировщика)
  • Папку с данными C:ProgramDatawin-acme (здесь хранятся файлы сертификатов, закрытые ключи, конфигурационные файлы, логи).

Перезапустите веб сервер IIS:

iisreset


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *