Найти тему
Хакни мир

Создаем самоподписанный сертификат в Windows

Доброго времени суток! Сегодня расскажем вам о том, как сделать самоподписанный SSL сертификат безопасности в Windows при помощи PowerShell.

! Запускать PShell нужно от имени администратора !

Такие сертификаты используются в тестовых целях и для обеспечения сертификации внутренних служб).

Для создания сертификата понадобится использовать командлет New-SelfSignedCertificate, который входит в состав модуля PKI.

Выводим список всех доступных командлетов, командой:
Get-Command -Module PKI

Для создания, нужно указать значения DnsName (DNS имя сервера) и CertStoreLocation (раздел локального хранилища, куда попадет сертификат).

Чтобы сохранить сертификат типа SSLServerAuthentication, для DNS имени (в котором указывается FQDN имя) и поместить его в список персональных сертификатов компьютера, необходимо выполнить команду:
New-SelfSignedCertificate -DnsName test.domen.com -CertStoreLocation cert:\LocalMachine\My

Directory: Microsoft.PowerShell.Security\Certificate::LocalMachine\My

Thumbprint                              Subject

----------                              -------

2779C0490D558B31AAA0CEF2F6EB1A5C2CA83B30 CN=test.domen.com

Обычно генерируется сертификат с такими параметрами:

  • Алгоритм: RSA
  • Размер ключа: 2048 бит
  • Срок действия сертификата: 1 год.

Команда выше создаст новый сертификат и импортирует его в локальное хранилище. Посмотреть можно открыв certlm.msc в разделе Personal

А с помощью Get-ChildItem можно вывести список параметров сертификата.
Пишем эту команду:
Get-ChildItem -Path "Cert:\LocalMachine\My" | Where-Object Thumbprint -eq DC1A0FDE0120085A45D8E14F870148D1EBCB82AE | Select-Object *

И наблюдаем:

-2

Вот такими не сложными манипуляциями, мы создали самоподписанный SSL сертификат, который может пригодиться в локальных целях. В работе с продом, желательно использовать решения от известных компаний.