Как стать автором
Обновить

Создаем сертификаты Let's Encrypt на MacOS и размещаем их на IIS сервере

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров2.3K

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

В этой статье я расскажу, как установить SSL сертификат Let’s Encrypt, созданный на MacOS, на IIS сервер.

Первое, что нам нужно – это установить certbot на MacOS. Для этого нам нужно установить homebrew. Останавливаться здесь я не буду, а просто укажу ссылку на homebrew - https://brew.sh. Здесь проблем не должно быть, если будут сложности – пишите в комментариях, я помогу.

Запускаем терминал и пишем:

brew install certbot

Далее нам нужно создать сертификат, с проверкой через dns. Есть и другие варианты проверки доменного имени, но я использую этот. Делать будем на примере создания сертификата для доменного имени bpo.travel

Пишем в командной строке следующую строчку:

sudo certbot certonly --manual --preferred-challenges dns -d "bpo.travel"

Мы должны получить следующий ответ, который просит нас создать txt запись на нашем DNS сервере для доменного имени _acme-challenge.bpo.travel с указанным value

Далее мы идем на наш DNS сервер (в нашем случае это 1gb.ru) и создаем txt запись c указанным значением

Ждем некоторое время (в моем случае около 15 минут, и зачастую срабатывает раза с 3 или 4го, так как тороплюсь), возвращаемся в терминал и нажимаем Enter. В ответе мы должны увидеть следующее

Если вдруг нажали Enter раньше времени и DNS запись не успела обновиться, то увидим следующий ответ

В таком случае придется делать запрос заново и прописывать TXT запись на DNS сервере с новым значением value

Если все ок, то открываем Finder и идем по адресу /etc/letsencrypt/archive/

Далее мы копируем папку bpo.travel например в загрузки (при копировании вводим пароль от своего компьютера)

Затем нам нужно создать pfx сертификат из готового pem сертификата, который нам создал certbot и который лежит с ключами в папке bpo.travel, которую мы скопировали

Для этого ищем конвертер сертификатов. Я использую следующий:

https://www.sslshopper.com/ssl-converter.html

Подгружаю все созданные файлы и нажимаю Convert Certificate

В итоге получаю готовый pfx сертификат. Далее нам нужно установить его на нашем IIS сервере. В моем случае я удаленно подключаюсь к нему через RDP и захожу в Диспетчер служб IIS

Далее я удаляю старый сертификат. Для этого мне нужно зайти в сертификаты сервера

и удалить сертификат bpo.travel

Затем нам нужно установить на наш сервер новый сертификат. Для этого просто кликаем по сертификату и устанавливаем его для локального компьютера (это единственное, что нужно изменить, далее все оставляем как есть и нажимаем далее, далее, …)

После этого возвращаемся в наш IIS, выбираем наш сайт (bpo.travel), вызываем контекстное меню правой кнопкой мыши и выбираем пункт «Изменить привязки» и заполняем все как на скриншоте

Нажимаем ОК.

На этом все, сертификат успешно установлен.

Это мой первый опыт написания статьи, если нужно что-то дополнить или объяснить – пишите в комментариях.

Теги:
Хабы:
Всего голосов 5: ↑5 и ↓0+5
Комментарии12

Публикации

Истории

Работа

Ближайшие события