LET'S ENCRYPT. НАСТРОЙКА SSL НА СЕРВЕРЕ NGINX
Тут самое главное иметь под рукой несколько образцовых конфигов, которые мы потом создадим в папке /etc/nginx/sites-enabled
cd /etc/nginx/sites-enabled
sudo nano mysite.conf
Вот этот конфиг для обратного прокси, т. е., тут реализовано перенаправление на другой сервер.
server { # Настраиваем слушание порта 80 для HTTP listen 80; listen [::]:80; # Указываем серверное имя для перенаправления server_name mysite.ard-s.ru www.mysite.ard-s.ru; # Перенаправляем все запросы на внутренний IP-адрес location / { proxy_pass http://192.168.88.53; 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; } }
А тут настройка для локального сервера:
server { # Настраиваем слушание порта 80 для HTTP listen 80; listen [::]:80; # Указываем серверное имя server_name mysite.ard-s.ru www.mysite.ard-s.ru; # Обрабатываем запросы к корню и передаем их в /var/www/html location / { root /var/www/html; # Указываем корневой каталог для статических файлов index index.html index.htm; # Указываем файлы индекса # Если файл не найден, возвращаем 404 try_files $uri $uri/ =404; } }
Вот, после создания конфига на основе одного из этих вариантов, мы сначала установим cerbot
sudo apt install certbot python3-certbot-nginx
Затем установим сами сертификаты:
sudo certbot --nginx -d mysite.ru -d www.mysite.ru
Количество сайтов не ограничено, можно добавлять сколько угодно чрез -d. Cerbot автоматически перелопатит конфиги, добавив туда какие-то свои записи. После установки сертификатов желательно перезагрузить nginx.
sudo systemctl restart nginx
Если в вашей сети работает какой-то локальный DNS-сервер, то лучше отключить его на период, пока сертификаты обнавляются. Иначе лыжи не поедут. На этом все.