ПР. Выпуск сертификата для сайта

Кратко:

  • Регистрация домена и привязка к бакету в Object Storage.
  • Создание публичного бакета с названием, совпадающим с полным названием домена.
  • Загрузка файлов статического сайта в бакет.
  • Настройка защищенного доступа к бакету с помощью Certificate Manager.
  • Выпуск сертификата Let's Encrypt и подтверждение владения доменом.
  • Добавление TXT- и CNAME-записей для подтверждения владения доменом.
  • Настройка DNS-серверов для использования собственного домена.
  • Настройка доступа к сайту по протоколу HTTPS с использованием ранее выпущенного сертификата.

Практическая работа. Выпуск сертификата для сайта

В этой практической работе мы зарегистрируем домен, привяжем его к бакету в объектном хранилище и настроим для этого домена автоматический выпуск сертификата с помощью Certificate Manager.
Шаг 1
Если у вас нет своего домена, зарегистрируйте временный домен, например, на сайте freenom.com:
  1. Проверьте на сайте доступность имени, которое вы придумали для своего домена.
    Введите имя вместе с доменом верхнего уровня, например testpracticum2022.ml, иначе при попытке зарезервировать домен сервис будет сообщать, что домен занят.
  2. Если это имя доступно, добавьте домен в корзину и укажите свой email для подтверждения.
  3. Проверьте почту и подтвердите регистрацию домена.
  4. Обновите страницу с заказом.
image
  1. После подтверждения регистрации домена зайдите в объектное хранилище (Object Storage) и создайте новый публичный бакет. Его название должно совпадать с полным названием домена.
image
  1. Переключите доступ на чтение объектов в Публичный. Загрузите в бакет файлы статического сайта (вы можете воспользоваться файлами из практической работы курса «Хранение и анализ данных».
  2. Выберите на панели управления раздел Веб-сайт, переключите бакет в режим Хостинг и нажмите Сохранить.
image
Шаг 2
Настроить защищённый доступ к бакету можно двумя способами: загрузить сертификат прямо в бакет или с помощью Certificate Manager. Воспользуемся вторым способом.
  1. В консоли управления перейдите в сервис Certificate Manager. Для выпуска сертификата с помощью этого сервиса подтвердите владение доменом: в разделе Сертификаты нажмите кнопку Добавить сертификат и выберите Сертификат Let’s Encrypt.
    image
  2. В открывшемся окне задайте имя создаваемого сертификата и заполните поле с именем вашего домена. Нажмите кнопку Создать.
image
Сервис автоматически направит запрос на создание сертификата, а домен перейдёт в статус проверки.
  1. Для выпуска сертификата необходимо подтвердить статус владения доменом. Откройте страницу с деталями запроса на сертификат:
image
На этой странице для нас важны два поля: имя DNS-записи и её значение. Если вы создавали домен на freenom.com, то перейдите в личный кабинет на этом сайте, выберите раздел ServicesMy Domains и нажмите кнопку Manage Domains:
image
Выберите Manage Freenom DNS:
image
В открывшемся редакторе добавьте TXT-запись для подтверждения владения доменом. В качестве названия записи задайте _acme-challenge без полного названия домена. В качестве значения TXT-записи — значение со страницы проверки прав на домен в консоли управления Yandex Cloud.
Аналогично внесите значение CNAME-записи со страницы проверки прав на домен в консоли управления Yandex Cloud.
Добавьте также запись CNAME для привязки поддомена WWW к вашему бакету:
image
В поле Target укажите полное имя бакета, включая .website.yandexcloud.net. Сохраните сделанные изменения.
После окончания проверки домена Certificate Manager автоматически выпустит сертификат.
image
Шаг 3
Теперь настроим доступ к сайту, то есть к созданному бакету, по протоколу HTTPS с помощью сертификата. Для этого перейдите в раздел HTTPS и нажмите кнопку Настроить.
image
В поле Источник выберите Certificate Manager, в поле Сертификат — ранее выпущенный сертификат. Нажмите кнопку Сохранить.
image
Теперь ваш сайт доступен по протоколу HTTPS. Чтобы проверить это, откройте его в браузере. В адресной строке браузера должен отображаться значок защищённого соединения.