Практическое задание

Эта задача — шаг 12 курса «Новый сервер: настройка с нуля»

HTTPS для shop.local

средне~20 мин

Пока нет настоящего сертификата, сайт магазина должен хотя бы шифровать трафик. Выпусти самоподписанный TLS-сертификат для shop.local (CN содержит shop.local) сроком не меньше 90 дней и настрой nginx отдавать HTTPS на порту 443 с ним.

Что потренируешь:
  • openssl req -x509
  • самоподписанный сертификат
  • nginx ssl
  • tls
  • срок сертификата

Разбор темы

TLS-сертификат связывает имя сайта с открытым ключом. Самоподписанный сертификат подписан собственным ключом, а не удостоверяющим центром: браузер ему не доверяет, но канал шифруется полноценно — для стенда до выпуска настоящего сертификата этого хватает. openssl req -x509 выпускает такой сертификат и ключ одной командой; имя задаётся в поле CN, срок — в днях. В nginx HTTPS включается параметром ssl у listen и двумя директивами с путями к сертификату и закрытому ключу.

Что проверяется

  1. HTTPS отвечает на порту 443
  2. CN сертификата содержит shop.local
  3. сертификат действует не меньше 90 дней

Как это выглядит