Перейти к основному содержанию
Эта страница — для тех, кто сам поднимает сайт на сервере (нужен доступ по SSH). Просто купил VPS под софт или VPN — SSL тут, скорее всего, не нужен.

Варианты сертификата

Universal SSL

Автоматически в Cloudflare. Шифрует «браузер ↔ CF».

CF Origin CA

Бесплатный серт на origin, 15 лет. Шифрует «CF ↔ origin».

Let's Encrypt

Публичный, 90 дней, автообновление. Для end-to-end и Full (Strict).
Продакшен-рекомендация: Cloudflare Full (Strict) + Let’s Encrypt на origin. Шифрование от браузера до сервера, без дыр.

Установка Let’s Encrypt

Дальше всё через SSH под root (IP и пароль — в карточке сервера в боте). По умолчанию на сервере Ubuntu 22.04.
1

Проверить предусловия

  • A-запись домена указывает на IP сервера (тот, что в карточке сервера в боте). Как добавить — DNS-записи.
  • Порты 80 и 443 открыты в фаерволе.
  • Веб-сервер (nginx или apache) запущен.
2

Обновить систему

sudo apt-get -y update && sudo apt-get -y upgrade
3

Установить certbot

sudo apt-get -y install certbot python3-certbot-nginx
Для Apache — python3-certbot-apache.
4

Получить сертификат

sudo certbot certonly --nginx -d example.com -d www.example.com
Путь: /etc/letsencrypt/live/example.com/.

Обновление

Сертификат живёт 90 дней. Certbot ставит системный таймер автообновления — настраивать ничего не нужно. Для проверки:
sudo certbot certificates
sudo certbot renew --dry-run

Wildcard (*.example.com)

Только через DNS-челлендж:
sudo certbot certonly --manual --preferred-challenges dns -d "*.example.com"
Процесс интерактивный: certbot попросит создать TXT-запись _acme-challenge в DNS домена. Дождись, пока запись распространится, и только потом нажми Enter.

Частые ошибки

ОшибкаПричинаЧто делать
TimeoutПорт 80 закрытОткрыть в фаерволе
Domain not foundA-запись не распространиласьПодождать, проверить DNS
Connection refusednginx/apache не запущенsudo systemctl start nginx
Rate limitСлишком много запросовПодождать. Лимит: 5 неудач/час, 50 сертификатов/домен/неделю

Куда дальше

Веб-сервер (Nginx)

Настрой Nginx для работы с сертификатом.

Защита сервера

Следующий шаг — закрыть остальные дыры.