Как установить SSL-сертификат на Ubuntu?
Николай, Киров 0
Арендовал VPS на Ubuntu под сайт, установил nginx. Домен уже привязан, но сайт открывается без замка в браузере. Как поставить SSL, чтобы всё работало по HTTPS?
Дмитрий Акиндинов технический администратор сайтов
ответил
На Ubuntu SSL чаще всего ставят через Certbot — бесплатный клиент Let’s Encrypt: команда sudo apt install certbot python3-certbot-nginx, затем sudo certbot —nginx -d вашдомен.ру -d www.вашдомен.ру. Certbot сам находит нужный конфиг nginx, выпускает сертификат и прописывает его в настройки сервера. Сертификат Let’s Encrypt бесплатный, живёт 90 дней, а продление проверяется системным таймером certbot дважды в сутки без вашего участия.
Если веб-сервер не nginx, а Apache, ставится другой пакет-плагин — python3-certbot-apache, дальше команда certbot —apache работает по тому же принципу. Перед запуском важно убедиться, что порты 80 и 443 открыты в файрволе (ufw allow 80, ufw allow 443), иначе Let’s Encrypt не сможет подтвердить владение доменом через HTTP-01 challenge и выпуск сертификата упадёт с ошибкой.
Проверить, что сертификат встал корректно, можно командой sudo certbot certificates — она покажет домен, дату выпуска и дату истечения. Автообновление стоит протестировать заранее командой sudo certbot renew —dry-run: она имитирует продление без реального изменения сертификата и сразу покажет, если что-то настроено неправильно.
Если сайт на обычном виртуальном хостинге с панелью управления (ISPmanager, cPanel), а не на выделенном VPS, обычно ничего этого делать не нужно: там есть готовая кнопка «Let’s Encrypt» или AutoSSL, и панель сама всё настраивает и продлевает.
Задать свой вопрос
Вопросы проходят модерацию. Ответ появляется на сайте в течение пары дней.
Вопрос отправлен. После проверки он появится на сайте вместе с ответом.
Вопрос не отправлен: нужно подтвердить согласие на обработку персональных данных.