Если вы хотите защитить свой сайт и повысить его безопасность, вам необходимо установить SSL-сертификат на сервер NGINX. В этом руководстве мы расскажем вам о том, как установить SSL-сертификат на сервер NGINX.
Шаг 1: Сгенерируйте закрытый ключ и запрос на подписание сертификата (CSR).
Чтобы сгенерировать закрытый ключ и CSR, вы можете воспользоваться командой openssl
инструмент командной строки. Ниже приведен пример того, как это сделать:
# Generate a self-signed certificate
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /path/to/your/private.key -out /path/to/your/certificate.crt
Country Name (2 letter code) []: State or Province Name (full name) []: Locality Name (eg, city) []: Organization Name (eg, company) []: Organizational Unit Name (eg, section) []: Common Name (eg, fully qualified host name) []: your_ip_address Email Address []:
Эта команда генерирует самоподписанный сертификат X.509 с помощью OpenSSL. Вот что делает каждая опция:
req
: Эта подкоманда указывает, что мы хотим использовать управление запросами на подписание сертификатов X.509 (CSR).-x509
: Эта опция указывает, что мы хотим сделать самоподписанный сертификат вместо генерации запроса на сертификат.-nodes
: Эта опция указывает, что мы не хотим шифровать закрытый ключ.-days 365
: Этот параметр указывает, что сертификат будет действителен в течение 365 дней.-newkey rsa:2048
: Эта опция указывает, что мы хотим сгенерировать новый ключ RSA длиной 2048 бит.-keyout /path/to/your/private.key
: Эта опция указывает, куда сохранить файл закрытого ключа.-out /path/to/your/certificate.crt
: Этот параметр указывает место сохранения файла сертификата.
Шаг 2: Получение SSL-сертификата
Первым шагом является получение SSL-сертификата от доверенного центра сертификации (Certificate Authority, CA). Вы можете либо приобрести SSL-сертификат у стороннего поставщика, либо сгенерировать бесплатный SSL-сертификат с помощью Let’s Encrypt.
Шаг 3: Установите NGINX
В вашей системе должен быть установлен веб-сервер NGINX. Если он еще не установлен, вы можете сделать это, выполнив следующую команду:
$ sudo apt-get update
$ sudo apt-get install nginx
Шаг 4: Настройте NGINX на использование SSL
Далее необходимо настроить NGINX на использование SSL. Для этого выполните следующие шаги:
Создайте новую директорию для вашего SSL-сертификата:
$ sudo mkdir /etc/nginx/ssl
Скопируйте свой SSL-сертификат и закрытый ключ в новый каталог:
$ sudo cp /path/to/your/certificate.crt /etc/nginx/ssl/
$ sudo cp /path/to/your/private.key /etc/nginx/ssl/
Откройте файл конфигурации NGINX в текстовом редакторе:
$ sudo nano /etc/nginx/sites-available/default
Добавьте в файл следующие строки, внутри server
блока:
listen 443 ssl;
ssl_certificate /etc/nginx/ssl/certificate.crt;
ssl_certificate_key /etc/nginx/ssl/private.key;
Сохраните и закройте файл.
Проверьте конфигурационный файл NGINX:
$ sudo nginx -t
Если ошибок нет, перезагрузите NGINX:
$ sudo service nginx reload
Вот и все! Теперь ваш сервер NGINX настроен на использование SSL. Вы можете проверить это, посетив свой сайт по протоколу HTTPS (https://yourwebsite.com).