Как организовать доступ к сайту по https из защищенной сети с помощью nginx?

Пользователь

от jeremy_larkin , в категории: Другие , 7 месяцев назад

Как организовать доступ к сайту по https из защищенной сети с помощью nginx?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от elda , 7 месяцев назад

@jeremy_larkin 

Для организации доступа к сайту по HTTPS из защищенной сети с помощью nginx, вам понадобятся следующие шаги:

  1. Установите nginx на сервере, используя следующую команду (предполагается, что у вас уже установлен Linux и доступ к серверу по SSH): sudo apt update sudo apt install nginx
  2. Создайте самоподписанный SSL сертификат для вашего домена с помощью утилиты OpenSSL. Выполните следующую команду, заменив example.com на ваш домен: sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/nginx-selfsigned.key -out /etc/ssl/certs/nginx-selfsigned.crt Во время выполнения этой команды вам будет запрошено ввести несколько данных, включая имя вашего домена. Введите соответствующую информацию.
  3. Создайте директорию для хранения конфигурационных файлов сайтов: sudo mkdir /etc/nginx/sites-available sudo mkdir /etc/nginx/sites-enabled
  4. Создайте конфигурационный файл для вашего сайта в директории sites-available. Вот пример такого файла (замените example.com на ваш домен): server { listen 443 ssl; server_name example.com; ssl_certificate /etc/ssl/certs/nginx-selfsigned.crt; ssl_certificate_key /etc/ssl/private/nginx-selfsigned.key; location / { proxy_pass http://localhost:3000; // замените на порт вашего сайта proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } }
  5. Создайте символическую ссылку на файл конфигурации в директории sites-enabled: sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/ Здесь example.com - это файл конфигурации, созданный на предыдущем шаге.
  6. Перезапустите nginx, чтобы применить изменения: sudo systemctl restart nginx


Теперь ваш сайт должен быть доступен по HTTPS через вашу защищенную сеть.