ИТ База знаний
Полезно
— Узнать IP — адрес компьютера в интернете
— Онлайн генератор устойчивых паролей
— Онлайн калькулятор подсетей
— Калькулятор инсталляции IP — АТС Asterisk
— Руководство администратора FreePBX на русском языке
— Руководство администратора Cisco UCM/CME на русском языке
— Руководство администратора по Linux/Unix
Навигация
Серверные решения
Телефония
FreePBX и Asterisk
Настройка программных телефонов
Корпоративные сети
Протоколы и стандарты
Популярное и похожее
Погружение в Iptables – теория и настройка
Создание доменного пользователя и ввод компьютера в домен
Что такое Active Directory и LDAP?
Почему защита электронной почты так важна?
Система записи телефонных разговоров
Syslog протокол — серверы, сообщения и безопасность
Топ – 20 полезных команд yum
Escene ES292-PN
Еженедельный дайджест
Установка SSL сертификата на IIS – сервере
Простой способ сделать HTTPS
Подключение по HTTPS – признак надежности и безопасной передачи данных. Чтобы реализовать безопасное подключение по HTTPS, нужно иметь SSL сертификат. В статье расскажем, как сгенерировать самоподписанный сертификат (self signed), а также как импортировать файл сертификата в формате .pfx. После, покажем установку и применение сертификатов к сайту в веб – сервере Microsoft IIS (Internet Information Services).
В статье мы используем IIS (Internet Information Services) версии 10.0.14393.0
Создание и установка самоподписанного сертификата
Открываем IIS Manager. Далее, в меню слева (раздел Connections) нажимаем на корень (как правило это хостнейм вашей машины) и в открывшейся в центральной части рабочей области дважды кликаем левой кнопкой на Server Certificates:
IIS так же можно запустить из под Administrative Tools
В правом меню видим меню навигации Actions. Нажимаем на Create Self-Signed Certificate…. Открывается следующее окно:
Указываем имя для нашего сертификата и нажимаем «OK». Далее, выбираем наш сайт в меню слева:
Как только нажали на наш сайт, выбираем в правом поле меню Bindings, далее, редактируем текущее HTTPS подключение (по 443 порту) нажав Edit и выбираем сгенерированный самоподписанный SSL сертификат.
Нажимаем ОК. После, открываем командную строку cmd и перезагружаем IIS сервер командой:
Кстати, для рестарта, можно использовать просто команду iisreset без ключа restart
Импорт сертификата .pfx
Аналогично как и с самоподписанным сертификатом (раздел Connections) нажимаем на корень и кликаем на Server Certificates. Далее, справа, нажимаем Import:
Открываем на .pfx файл:
Когда для вас создавали .pfx, на него установили пароль – введите этот пароль в поле ниже и нажмите OK.
Далее, все стандартно – выбираем сайт слева → Bindings → редактируем текущее подключение по 443 порту → выбираем сертификат, который только что сделали в разделе SSL certificate → нажимаем OK.
По окончанию, снова рестартуем IIS:
Было полезно?
Почему?
😪 Мы тщательно прорабатываем каждый фидбек и отвечаем по итогам анализа. Напишите, пожалуйста, как мы сможем улучшить эту статью.
😍 Полезные IT – статьи от экспертов раз в неделю у вас в почте. Укажите свою дату рождения и мы не забудем поздравить вас.
Как создать самоподписанный сертификат в Windows
Большинству администраторов Windows, знакомых с темой PKI, известна утилита MakeCert.exe, с помощью которой можно создать самоподписанный сертификат. Эта утилита включена в состав Microsoft .NET Framework SDK и Microsoft Windows SDK. В Windows 8 и Windows Server 2012 появилась встроенная возможность создания самоподписанного сертификата средствами PowerShell 3.0 и выше без использования специальных утилит.
Использование командлета New-SelfSignedCertificate для создания сертфикатов
Для создания самоподписанного сертификата в PowerShell предлагается использовать командлет New-SelfSignedCertificate, входящий в состав модуля PoSh с именем PKI (Public Key Infrastructure).
Чтобы вывести список всех доступных командлетов в модуле PKI, выполните команду:
Get-Command -Module PKI
Самоподписанные сертификаты рекомендуется использовать в тестовых целях или для обеспечения сертификатами внутренних интранет служб (IIS, Exchange, Web Application Proxy, LDAPS, ADRMS, DirectAccess и т.п.), в тех случая когда по какой-то причине приобретение сертификата у внешнего провайдера или разворачивание инфраструктуры PKI/CA невозможны.
Для создания сертификата нужно указать значения –DnsName (DNS имя сервера, имя может быть произвольным и отличаться от имени localhost) и —CertStoreLocation (раздел локального хранилища сертификатов, в который будет помещен сгенерированный сертификат). Командлет можно использовать для создания самоподписанного сертификата в Windows 10 (в нашем примере), Windows 8/8.1 и Windows Server 2016/2012/2012 R2.
Чтобы создать сертификат для DNS имени test.contoso.com и поместить его в список персональных сертификатов компьютера, выполним команду:
New-SelfSignedCertificate -DnsName test.contoso.com -CertStoreLocation cert:\LocalMachine\My
Directory: Microsoft.PowerShell.Security\Certificate::LocalMachine\My
Thumbprint Subject
———- ——-
2779C0490D558B31AAA0CEF2F6EB1A5C2CA83B30 CN=test.contoso.com
По-умолчанию генерируется самоподписанный сертификат со следующим настройками:
- Криптографический алгоритм: RSA;
- Размер ключа: 2048бит;
- Допустимые вариантов использования ключа: Client Authentication и Server Authentication;
- Сертификат может использоваться для: Digital Signature, Key Encipherment ;
- Срок действия сертификата: 1год.
Данная команда создаст новый сертификат и импортирует его в персональное хранилище компьютера. Открыв оснастку certlm.msc, проверим, что в разделе Personal хранилища сертификатов компьютера появился новый сертификат.
$todaydate = Get-Date
$add3year = $todaydate.AddYears(3)
New-SelfSignedCertificate -dnsname test.contoso.com -notafter $add3year -CertStoreLocation cert:\LocalMachine\My
Чтобы экспортировать полученный сертификат c закрытым ключом в pfx файл, защищенный паролем, нам понадобится его отпечаток (Thumbprint), который нужно скопировать из результатов выполнения команды New-SelfSignedCertificate:
$CertPassword = ConvertTo-SecureString -String “YourPassword” -Force –AsPlainText
Export-PfxCertificate -Cert cert:\LocalMachine\My\2779C0490D558B31AAA0CEF2F6EB1A5C2CA83B30 -FilePath C:\test.pfx -Password $CertPassword
Можно экспортировать открытый ключ сертификата:
Export-Certificate -Cert Cert:\LocalMachine\My\2779C0490D558B31AAA0CEF2F6EB1A5C2CA83B30 -FilePath C:\testcert.cer
Полученный открытый ключ или сам файл сертификата можно установить на веб-сервер или клиентах домена с помощью GPO (пример установки сертификата на ПК с помощью групповых политик).
Одной из полезных возможностей командлета New-SelfSignedCertificate является возможность создать сертификат с несколькими различными именами Subject Alternative Names (SAN).
К примеру, создадим сертификат, у которого указаны следующие имена:
- Subject Name (CN): adfs1.contoso.com
- Subject Alternative Name (DNS): web_gw.contoso.com
- Subject Alternative Name (DNS): enterprise_reg.contoso.com
Команда создания сертификата будет такой:
New-SelfSignedCertificate -DnsName adfs1.contoso.com,web_gw.contoso.com,enterprise_reg.contoso.com -CertStoreLocation cert:\LocalMachine\My
Также можно выписать сертификат для всего пространства имен в домене, для этого в качестве имени сервера указывается *.contoso.com.
New-SelfSignedCertificate -certstorelocation cert:\localmachine\my -dnsname *.contoso.com
Создаем самоподписанный сертфикат типа Code Signing для подписывания кода
В PoweShell 3.0 командлет New-SelfSifgnedCertificate генерировал только SSL сертификаты, которые нельзя было использоваться для подписывания кода драйверов и приложений (в отличии сертификатов, генерируемых утилитой MakeCert).
В PowerShell 5 новая версия командлета New-SelfSifgnedCertificate теперь может использоваться для выпуска сертификатов типа Code Signing.
Для создания самоподписанного сертфиката для подписывания кода приложений, выполните команду:
$cert = New-SelfSignedCertificate -Subject «Cert for Code Signing” -Type CodeSigningCert -CertStoreLocation cert:\LocalMachine\My
Set-AuthenticodeSignature -FilePath C:\PS\test_script.ps1 -Certificate $cert
Если при выполнении команды появится предупреждение UnknownError, значит этот сертификат недоверенный, т.к. находится в персональном хранилище сертификатов пользователя.
Move-Item -Path $cert.PSPath -Destination «Cert:\CurrentUser\Root»
После этого вы можете подписать свой PowerShell скрипт с помощью данного самоподписанного сертификата.
Как создать самоподписанный сертификат windows 2008
Что такое сертификат?
Сертификат это контейнер который может содержать открытый (PUBLIC) и закрытый (PRIVATE) ключи, а также ряд полей информационного характера.
В системе сертификаты хранятся в Хранилище сертификатов (Sertificate Store). Хранилище сертификатов на локальном компьютере называется «my». Просмотреть содержимое хранилища можно с помощью MMC добавив оснастку «Sertificates». Кроме того сертификаты могут быть привязаны к компьютеру (LocalMachine), или к учетной записи (CurrentUser). От этого зависит у кого будет доступ к сертификатам, у пользователей компьютера или у владельца учетной записи.
Из хранилища можно выгрузить сертификат в файл .CER или .PFX. MMC | Sertificates | Сертификат (выбрать правой кнопкой) | Все задачи | Экспорт. Экспорт закрытого ключа может быть запрещен. В таком случае узнать его уже никак не удастся. Эта опция доступна только на этапе установки или создания ключа в хранилище «Пометить этот ключ как экспортируемый».
- .CER — плохо защищен и не может содержить закрытого ключа, только открытый
- .PFX — может содержать как закрытый так и открытый ключ
Step 1: Install SSL certificate
- Open the Internet Services Manager(IIS): Click Start >All Programs >Administrative Tools >Internet Information Services (IIS) Manger
- Under Web Sites, right-click your web site and select Properties
- Click the Directory Security tab
- Under Secure Communications, click Server Certificate
- The Web Site Certificate Wizard will open, click Next
- Choose Process the Pending Requestand Install the Certificate, then click Next
Important: The pending request must match the response file. If you deleted the pending request in error you must generate a new CSR and replace this certificate. - Select the location of the certificate response file, and then click Next
- Select the SSL Port. The default port is 443
- Read the summary screen to be sure that you are processing the correct certificate and then clickNext
- At the confirmation screen, verify the information and click Next
Создание и установка самоподписанного сертификата (Утилита selfssl.exe для SSL в IIS )
В свойствах сайта, на вкладке DirectorySecurity в разделе «Secure communications» можно поставить галочку «Requere secure channel (SSL)», а на вкладке «Web Site» можно задать
SSL port: 443 (по-умолчанию). Еще нужно для этого веб узла создать Self-Signed сертификат или купить настоящий у конторы (ssl.ru например). Self-Signed сертификат создается утилитой selfssl.exe, которая качается с микрософта, в составе «IIS 6.0 Resource Kit Tools (IIS 6.0)». Эта утилита умеет сама создавать и прикреплять сертификат к Web узлу в IIS, по ID веб узла (Site ID). Этот ID можно узнать если в IIS выбрать папку «Web Sites» в режиме просмотра детальной информации (Меню->Вид->Таблица), колонка Identifier. Утилита должна спросить заменить ли существующий сертификат у сайта, на что надо ответить ДА (y). Убедиться что сертификат назначен можно в свойствах сайта на вкладке «DirectorySecurity», должна стать активной кнопка «View Certificate. «, нажав на которую можно посмотреть данные сертификата, а также экспортировать его в файл — например .cer
пример вызова утилиты, для сайта с SiteID = 1254345
Утилита makecert.exe (для ЭЦП)
Утилита входит в состав MS Visual Studio и позволяет генерировать сертификаты:
makecert.exe -r -pe -sky exchange -ss my -sr CurrentUser -n «CN=Uralsib.Mso.DigitalSign»
Так можно создавать тестовые сертификаты непосредственно в хранилище сертификатов на локальной машине «LocalMachine» или для текущего пользователя «CurrentUser». Поле «Субъект» (Subject) будет заполнено именем «CN=MyCompany.MyProduct.DigitalSign». И имя «MyCompany.MyProduct.DigitalSign» будет выбрано в качестве наименования. Остальные флаги разрешают экспортировать закрытый ключ в файл .PFX
— r создать самоподписанный сертификат
— pe — включать закрытый ключ в сертификат, и пометить его как экспортируемый (т.е. из хранилища сертификат можно будет вытащить вместе с закрытым ключом)
— n «CN=Uralsib.Mso.DigitalSign» — имя сертификата, в формате X.500
— sr CurrentUser — сертификаты могут устнавливаются для всего компьютера LocalMachine или только для учетной записи CurrentUser
— ss my — хранилище сертификатов. Локальное хранилище на локальном компьютере называется my
IIS 7 — Генерация запроса на сертификат
Генерация запроса на получение сертификата:
IIS Manager | выбрать узел сервера, а не сайта | Server Sertificates | Create Certificate Request.
который предварительно должен быть инсталлирован в виндовс через консоль
MMC -> Добавить оснастку -> Сертификаты -> Local Computer -> Personal
Чтобы сайт работал через HTTPS в IIS 7.0 нужно прикрепить к узлу сертификат SSL.Делается это
IIS Manager | выбрать Веб-узел | Bindings.
добавляется запись HTTPS и для нее выбирается сертификат,