Быстрый HTTPS для сайта с помощью angie (форк nginx)
Ниже описан достаточно лёгкий способ получить обратный прокси с SSL-сертификатом.
Веб-сервер Angie позволяет получать SSL-сертификаты от LetsEncrypt без использования сторонних средств (таких как CertBot).
Установка Angie тривиальна. Документация (на русском языке!) написана понятно и лаконично.
В дополнение к официальной документации, привожу минимально необходимые дополнения к стандартному конфигу, позволяющие автоматически получить и установить SSL для домена example.org, который размещён на веб-сервере с IP-адресом 192.168.2.2.
# cat /etc/angie/http.d/LetsEncrypt.conf
# This part must be included only once into http section (for all sites)
resolver 8.8.8.8;
acme_client letsencrypt https://acme-v02.api.letsencrypt.org/directory;
# cat /etc/angie/http.d/example.org.conf
server {
listen 80;
server_name example.org;
# Redirect all HTTP to HTTPS
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name example.org;
# Obtain and use certificate from LetsEncrypt
acme letsencrypt;
ssl_certificate $acme_cert_letsencrypt;
ssl_certificate_key $acme_cert_key_letsencrypt;
location / {
proxy_pass http://192.168.2.2;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
После создания данных конфигов, следует проверить конфигурацию на отсутствие ошибок:
sudo angie -t
и перезапустить веб-сервер
sudo angie -s reload
Желаю успехов!