@jeremy_larkin
Для организации доступа к сайту по HTTPS из защищенной сети с помощью nginx, вам понадобятся следующие шаги:
- Установите nginx на сервере, используя следующую команду (предполагается, что у вас уже установлен Linux и доступ к серверу по SSH):
sudo apt update
sudo apt install nginx
- Создайте самоподписанный 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
Во время выполнения этой команды вам будет запрошено ввести несколько данных, включая имя вашего домена. Введите соответствующую информацию.
- Создайте директорию для хранения конфигурационных файлов сайтов:
sudo mkdir /etc/nginx/sites-available
sudo mkdir /etc/nginx/sites-enabled
- Создайте конфигурационный файл для вашего сайта в директории 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;
}
}
- Создайте символическую ссылку на файл конфигурации в директории sites-enabled:
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
Здесь example.com - это файл конфигурации, созданный на предыдущем шаге.
- Перезапустите nginx, чтобы применить изменения:
sudo systemctl restart nginx
Теперь ваш сайт должен быть доступен по HTTPS через вашу защищенную сеть.