ssl_certificate

Директива ssl_certificate указывает путь к файлу SSL-сертификата для конфигураций сервера HTTPS в NGINX. — NGINX HTTP Core

ssl_certificate
httpserver
Синтаксисssl_certificate file_path;
По умолчаниюnone
Контекстhttp, server
МодульNGINX HTTP Core
Аргументы1

Описание

Директива ssl_certificate необходима для включения SSL на сервере NGINX. Она задаёт путь к PEM-encoded файлу SSL-сертификата, который содержит публичный ключ управляемого сервера. Этот сертификат критически важен для установления защищённых соединений HTTPS, так как он позволяет клиентам проверить подлинность сервера, к которому они подключаются. Директива может быть определена в контекстах http или server, влияя либо на всю конфигурацию сервера, либо на конкретный серверный блок соответственно. Обычно директива ssl_certificate используется вместе с директивой ssl_certificate_key, которая указывает соответствующий приватный ключ для сертификата. Оба файла должны соответствовать друг другу; в противном случае SSL handshake завершится неудачей, что помешает установлению защищённых соединений. Конфигурация также должна включать параметры, связанные с SSL, такие как директивы ssl_protocols и ssl_ciphers, которые определяют используемые протоколы безопасности и алгоритмы шифрования при соединении. При использовании этой директивы важно убедиться, что указанный файл сертификата доступен и имеет правильный формат. Сертификаты можно получить у различных центров сертификации, и они обычно представлены в виде файлов .crt. Кроме того, если используется цепочка сертификатов, файл должен содержать в себе серверный сертификат и любые промежуточные сертификаты для корректной проверки на стороне клиента.

Пример конфига

server {
    listen 443 ssl;
    server_name example.com;

    ssl_certificate /etc/ssl/certs/example.com.crt;
    ssl_certificate_key /etc/ssl/private/example.com.key;

    location / {
        # Other configurations
    }
}

Убедитесь, что путь к файлу сертификата указан правильно и доступен пользователю NGINX.

Убедитесь, что SSL-сертификат действителен и правильно подписан доверенным центром сертификации.

Если используется подстановочный сертификат, значение server_name должно корректно соответствовать формату подстановки, чтобы сертификат был действителен.