Настройка сертификата SSL для сайта на веб-сервере Apache с помощью сервиса Let’s Encrypt

Задача: привязать к сайту SSL-сертификат и использовать защищенное соединение HTTPS.

    Преимущества использования SSL-сертификата:

  • данные между клиентом и сервером (явки, пароли) передаются по защищенному соединению HTTPS;
  • улучшение ранжирования Гуглом;
  • URL-сайта подсвечивается зеленым значком в адресной строке браузера - эстетическое наслаждение.

В качестве центра проверки подлинности сертификата будет использоваться бесплатный сервис Let's Encrypt.

Настройка веб-сервера Apache:

sudo a2enmod ssl
sudo a2ensite default-ssl

Получение SSL-сертификата от Let's Encrypt:

sudo apt-get install git
sudo git clone https://github.com/letsencrypt/letsencrypt /opt/letsencrypt
cd /opt/letsencrypt
sudo -H ./letsencrypt-auto certonly --standalone -d site.com -d www.site.com

В директории /etc/letsencrypt/live должна появиться директория site.com, содержащая новые сертификаты.

Если появляется ошибка "Problem binding to port 80: Could not bind to IPv4 or IPv6.", остановить службу Apache, повторить последнюю команду и запустить Apache заново.

Настройка виртуального хоста на порту 443:

SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/site.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/site.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/site.com/fullchain.pem

Дополнительно можно настроить переадресацию HTTP -> HTTPS. В дефолтный виртуальный хост добавляем:

Redirect / https://www.site.com/

Перезапуск Apache.

Настройка автоматического продления SSL-сертификата Let's Encrypt - добавляем в crontab задание:
0 0 1 * * root /opt/letsencrypt/letsencrypt-auto renew

Добавить комментарий

Ваш e-mail не будет опубликован.

Подтвердите, что Вы не бот — выберите человечка с поднятой рукой: