Немногие доверяют сайтам без SSL в наше время. Сейчас разберём как быстро добавить защиту, которую примет любой браузер.
Условимся, что у нас сервер на Linux и на нём уже установлен Nginx.
1. Установка Certbot
sudo apt install certbot python3-certbot-nginx
2. Проверка конфигурации
Перед запросом сертификата убедитесь, что ваш виртуальный хост слушает HTTP-трафик на порту 80 и правильно настроен:
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com/html;
index index.html;
}Эта конфигурация позволит Certbot пройти проверку владения доменом и корректно получить сертификат.
3. Запрос сертификата и интеграция с Nginx
sudo certbot --nginx -d example.com -d www.example.com
Certbot сам добавит в конфигурацию Nginx необходимые директивы для SSL, укажет пути к файлам сертификата и настроит оптимальные параметры шифрования.
4. Настройка редиректа с HTTP на HTTPS
server {
listen 80;
server_name example.com www.example.com;
return 301 https://$host$request_uri;
}Это гарантирует, что все пользователи попадут на ваш сайт через защищённое соединение.
5. Автоматическое продление сертификата
Certbot по умолчанию создаёт системное задание (cron или systemd-таймер) для проверки и обновления сертификатов за 30 дней до истечения срока их действия.
Чтобы убедиться, что всё работает исправно, выполните тестовое продление:
sudo certbot renew --dry-run
Внедрите эти настройки на своём сервере, чтобы укрепить доверие к ресурсу.
🐸Библиотека devops'a #буст
