Настройка https (SSL) бесплатно на базе Let’s Encrypt

Настройка https (SSL) бесплатно на базе Let's Encrypt

Не буду вдаваться в подробности, как говорится нет времени объяснять, если у вас Linux Debian и VPS c возможностью исполнять команды от пользователя в консоли, то для установки сертификата вам потребуется последовательно из консоли выполнить следующие команды:

ставим git если еще не установлен

apt-get install git

переходим во временный каталог

cd /tmp

делаем копию certbot с git

git clone https://github.com/certbot/certbot

переходим в каталог certbot

cd certbot

меняем права на certbot-auto

chmod a+x ./certbot-auto

запускаем certbot-auto с ключами (описание ниже)

./certbot-auto certonly --webroot --agree-tos --email mypost@my-domain.ru -w /home/bitrix/www/ -d my-domain.ru -d www.my-domain.ru

<strong>--webroot — так как автоматическая установка для nginx пока не надежна, используем этот ключ;
--agree-tos — соглашаемся с лицензионным соглашением;
--email mypost@my-domain.ru — указываем свой e-mail. В дальнейшем он может пригодиться для восстановления своего аккаунта;
-w /home/bitrix/www — указываем корневую директорию сайта;
-d my-domain.ru — наш домен. так же можно указывать и поддомены, например -d site.my-domain.ru.</strong>

Если все прошло успешно, то вы получите что-то вроде:

IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at
/etc/letsencrypt/live/my-domain.ru/fullchain.pem. Your
cert will expire on 2016-08-21. To obtain a new version of the
certificate in the future, simply run Certbot again.
- If you lose your account credentials, you can recover through
e-mails sent to mypost@my-domain.ru.
- Your account credentials have been saved in your Certbot
configuration directory at /etc/letsencrypt. You should make a
secure backup of this folder now. This configuration directory will
also contain certificates and private keys obtained by Certbot so
making regular backups of this folder is ideal.
- If you like Certbot, please consider supporting our work by:

Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le

Переходим в конфигурационный файл nginx.conf (/etc/nginx/nginx.cong) и правим его включая ssl и добавляя пути к сертификатам для соответствующего хоста

ssl on;
keepalive_timeout 70;
keepalive_requests 150;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
ssl_certificate /etc/letsencrypt/live/my-domain.ru/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/my-domain.ru/privkey.pem;

перезапускаем nginx

service nginx reload

через 90 дней потребуется обновление сертификата. запускаем certbot-auto renew или вешаем команду в cron

certbot-auto renew

Источник: https://habrahabr.ru/post/301558/