Данная инструкция описывает процедуру выпуска и установки SSL сертификатов на веб сервере IIS (Internet Information Services) в Windows Server.
Генерация CSR запроса в IIS
Для генерации SSL/TLS сертификата у внешнего Certificate Authority (CA) вам нужно сгенерировать запрос для выпуска сертификата (CSR, Certificate Signing Request). Вы можете сформировать CSR в ISS:
- Откройте консоль Internet Information Services Manager (
InetMgr.exe
); - Выберите ваш хост Windows Server и откройте раздел Server Certificates;
- В правом меню Actions выберите Создать запрос сертификата (Create Certificate Request);
- Заполните следующие поля в информацию о сертификате:
- Common Name – укажите имя сайта (веб-сервера), по которому будут обращаться ваши клиенты. Укажите FQDN имя, например:
reports.winitpro.ru
. Вы можете использоватьWildcard-сертфикат, в этом случае укажите здесь*.winitpro.ru
- Organization – укажите название организации. Для сертификатов с валидацией организации (OV-Organization Validation) и сертификатов с расширенной проверкой (EV-Extended Validation) нужно указать официальное название организации. Для физических лиц можно использовать SSL-сертификатов c домена (DV-Domain Validation). В этом случае указывается полное имя владельца сертификата;
- Organizational unit – yкажите внутреннее название подразделения вашей организации, которое является ответственным за сертификат;
- City/locality
- State/province
- Country/region – двухбуквенный код страны.
- Common Name – укажите имя сайта (веб-сервера), по которому будут обращаться ваши клиенты. Укажите FQDN имя, например:
- Выберите крипто провайдер и длину ключу. Рекомендуется использовать Microsoft RSA SChannel Cryptographic Provider с длиной ключа 2048 бит и более;
- Укажите имя файла, в который нужно сохранить CSR запрос.
- Должен сгенерироваться текстовый файл, который начинается с
BEGIN NEW CERTIFICATE REQUEST
и заканчиваетсяEND NEW CERTIFICATE REQUEST
.
Передайте ваш CSR-файл организации, уполномоченной выпускать SSL сертификаты. Если вы используете внутренний CA на базе Microsoft, загрузите CSR файл и подпишите сертификат и скачайте файл.
Установка SSL сертификата в ISS
После того, как вы получили ваш файл (*.CER) с сертификатом SST/TLS от вашего CA, вы можете установить его в IIS.
Для этого запустите консоль IIS Manager, перейдите в раздел Certificates и выберите Complete Certificate Request.
$ openssl pkcs12 -export -out target.pfx -inkey source.key -in source.crt
Такой PFX сертификат можно импортировать через меню Import.
Также вы можете конвертировать CRT сертификат прямо из Windows:
- Дважды щелкните по вашем CRT файлу;
- Перелижите на вкладку Details и нажмите Copy to File;
- Выберите формат Base-64 encoded X.509(.CER);
- Укажите путь, куда нужно поместить CER файл сертификата.
Выберите *,crt файл с SSL сертификатом, полученным от центра сертификации. Укажите имя SSL сертификата и хранилище, в которое поместить сертификат (Personal или Web Hosting).
Новый SSL сертификат должен появится в списке доступных сертификатов в IIS.
Привязать SSL сертификат к сайту IIS
Теперь нужно привязать ваш сертификат к сайту IIS, порту и/или IP адресу. Найдите ваш сайт в консоли IIS и выберите Edit Bindings.
Нажмите Add и заполните следующую информацию:
- Type:
https
- IP Address: выберите
All Unassigned
, или выберите конкретный IP адрес, которому нужно привязать SSL сертификат (на одном порту и IP адресе веб сервера IIS можно запустить несколько сайтов) - Port:
443
- Hostname: укажите имя узла, для которого выпущен сертификат
- SSL Certificate: выберите из списка SSL сертификат, который вы установили
Перезапустите сайт IIS (Manage Website -> Restart или командой
iisreset
).
Откройте ваш веб сайт IIS в браузере используя префикс
https://
. Если сертификат установлен правильно в адресной строке браузера появится зеленый замок. Это значит что подключение защищено. Нажмите на замок чтобы просмотреть информацию о вашем SSL сертификате.
Далее нужно настроить правила, которое будет перенаправлять все HTTP запросы к сайту IIS на HTTPS.