ssl_verify_depth

Директива ssl_verify_depth задаёт максимальную глубину цепочки сертификатов CA, которой будет доверять сервер при SSL/TLS-аутентификации клиента. — NGINX HTTP Core

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

Описание

Директива ssl_verify_depth используется в контексте SSL-модуля NGINX для установки максимально допустимой глубины цепочки центров сертификации (CA) для SSL/TLS-аутентификации клиента. Эта глубина задаётся целым числом, которое указывает, сколько сертификатов CA может быть в цепочке доверия, представляемой сертификатом клиента. Если соединение представляет цепочку сертификатов длиной больше значения, установленного этой директивой, соединение будет отклонено. Директива особенно полезна в средах, где требуется аутентификация клиента, так как она гарантирует, что в проверочном пути допускается только ограниченное число промежуточных CA. Ограничивая максимальную глубину, администраторы сервера могут лучше контролировать отношения доверия и снижать потенциальные риски, связанные с чрезмерно глубокими или недоверенными цепочками сертификатов. Например, установка ssl_verify_depth в 1 означает, что сервер будет доверять только сертификату, у которого либо есть прямой доверенный издатель (корневой CA), либо цепочка, включающая одного промежуточного CA. Это помогает задать строгую иерархию CA и может предотвратить потенциальные проблемы с безопасностью, возникающие из-за глубоких цепочек доверия, в которые может быть включён недоверенный CA.

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

server {
    listen 443 ssl;
    server_name example.com;

    ssl_certificate /etc/ssl/certs/server.crt;
    ssl_certificate_key /etc/ssl/private/server.key;

    ssl_client_certificate /etc/ssl/certs/ca.crt;
    ssl_verify_client on;
    ssl_verify_depth 2;
}

Убедитесь, что заданное значение не чрезмерно ограничивает доверие; проконсультируйтесь с иерархией вашего центра сертификации (CA) перед определением глубины.

Цепочка, превышающая указанную глубину, приведёт к отказам в соединении, что может повлиять на доступ пользователей в случае неправильной настройки.