Генеруємо сертифікат від letsencrypt для сайту в Debian
зупиняємо nginx
sudo service nginx stop
для початку потрібно встановити certbot, якщо не встановлено
https://certbot.eff.org/#debianstretch-nginx
sudo apt-get install python-certbot-nginx -t stretch-backports
згенеруємо сертифікат
sudo certbot certonly --manual
після вводу доменного імені та субдоменів,
нас попросять створити файл-підтверження володіння доменом
відкриваємо ще одну консоль і в неї пишемо наступні команди
(назву і вміст файлу в команді printf підставляєте свої)
mkdir -p /tmp/letsencrypt/public_html/.well-known/acme-challenge
cd /tmp/letsencrypt/public_html
printf "%s" OKfg5yfdhgt6534frtry54ewfregret > .well-known/acme-challenge/OKgfy5t4hjb34hrfg34fre3grvhgfv
# run once per server:
sudo $(command -v python2 || command -v python2.7 || command -v python2.6) -c \
"import BaseHTTPServer, SimpleHTTPServer; \
s = BaseHTTPServer.HTTPServer(('',80), SimpleHTTPServer.SimpleHTTPRequestHandler); \
s.serve_forever()"
після цього в першій консолі натискаємо ENTER
і повторяємо для кожного субдомена
(в другій консолі CTRL+C, далі створення файла з потрібною назвою та вмістом,
далі - знову запуск python-сервера, як вище,, далі - ENTER в першій консолі)
для оновлення сертифіката
(вимикаємо nginx, запускаємо python-сервер, далі наступна команда)
sudo certbot renew --dry-run
upd. про сертифікат з автоматизацією