Налаштування Nginx HTTPS із самопідписаним сертифікатом SSL.
Не рекомендується використовувати HTTPS без дійсного сертифіката SSL/TLS. Сертифікат використовується для шифрування зв’язку між сервером і клієнтом, і без дійсного сертифіката, з'єднання не буде зашифровано і буде вразливим до атак.
Проте, якщо ви все ще хочете використовувати HTTPS без дійсного сертифіката SSL/TLS, ви можете зробити це за допомогою a самопідписаний сертифікат або сертифікат, виданий приватним центром сертифікації (CA). Ось як це зробити за допомогою nginx:
- Створіть самопідписаний сертифікат:
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/nginx/ssl/nginx-selfsigned.key -out /etc/nginx/ssl/nginx-selfsigned.crt
Ця команда генерує самопідписаний сертифікат і ключ із терміном дії 365 днів і зберігає їх у /etc/nginx/ssl/nginx-selfsigned.key
і /etc/nginx/ssl/nginx-selfsigned.crt
відповідно.
- Налаштуйте nginx на використання самопідписаного сертифіката:
server {
listen 443 ssl;
server_name example.com;
ssl_certificate /etc/nginx/ssl/nginx-selfsigned.crt;
ssl_certificate_key /etc/nginx/ssl/nginx-selfsigned.key;
# other server configurations
}
Ця конфігурація вказує nginx прослуховувати порт 443 (HTTPS) і використовуйте самопідписаний сертифікат і ключ для шифрування SSL/TLS.
Зауважте, що самопідписані сертифікати не є довіреними за умовчанням веб-браузерів і призведе до попередження, коли користувач спробує отримати доступ веб-сайт. Щоб уникнути цього, ви можете встановити самопідписаний сертифікат на клієнтські пристрої або використовувати дійсний сертифікат SSL/TLS, виданий довіреним ЦС.