INTEGRITY Документация

Устранение неполадок

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


Проверка SSL/TLS-рукопожатия

В терминале выполните следующую команду, чтобы проверить, удаётся ли установить SSL/TLS-соединение между клиентом и конечной точкой API.

curl --verbose --cert /path/to/certificate.pem --key /path/to/key.pem https://your-api-endpoint.com

Если рукопожатие SSL/TLS не удается завершить, проверьте правильность сертификата и закрытого ключа. Если рукопожатие завершается, но запросы по-прежнему блокируются, убедитесь, что Cloudflare проверяет клиентский сертификат.


Проверьте хосты mTLS

Проверьте, mTLS был включён для правильного хоста. Хост должен совпадать с конечной точкой API, которую вы хотите защитить.


Просмотр правил mTLS

Чтобы просмотреть правила mTLS, выполните указанные ниже действия. Дополнительные сведения см. в Custom rules.

  1. На панели управления Cloudflare перейдите к разделу Правила безопасности страницу.

    Перейдите в Правила безопасности ↗
  2. Для конкретного правила выберите Изменить.

  3. В этом правиле проверьте следующее:

    • Expression Preview корректен.

    • Если имя хоста задано, оно совпадает с вашей конечной точкой API. Например, для конечной точки API api.trackers.ninja/time, правило должно выглядеть так:

      (http.host in {"api.trackers.ninja"} and not cf.tls_client_auth.cert_verified)
  4. Чтобы изменить правило, воспользуйтесь пользовательским интерфейсом либо выберите Edit expression.


Расширенная отладка

Вы можете использовать Cloudflare Workers для отладки сбоев проверки клиентских сертификатов.

  1. Создайте Worker для отладочной печати cf.properties:

    export default {
      async fetch(request, env, ctx) {
        console.info({ message: JSON.stringify(request.cf, null, 2) });
        return new Response(JSON.stringify(request.cf, null, 2))
      }
    };
  2. Привяжите Worker к имени хоста, для которого включён mTLS, с помощью маршрут Worker или Custom Domain.

  3. Отправляйте запросы на настроенный хост и/или путь как с отправкой клиентского сертификата mTLS, так и без нее.

  4. Просмотрите журналы в Observability панели управления и сравните ответы с ожидаемыми значениями, указанными ниже.

    Перейдите в Observability ↗