Перейти к содержанию

Диагностика

Эта страница — указатель, а не третий пересказ. У каждого раздела по цели есть свой «если не работает», написанный рядом с настройкой, которую надо проверить. Здесь — куда идти с конкретным симптомом и что делать, когда симптом ни в один раздел не укладывается.

Куда идти с симптомом

Вход по SSH

Что вы видите Где разобрано
Permission denied (publickey), а в журнале Alatyr нет ни одного обращения к /keyholder/keys SSH → Если вход не проходит
Keyholder отвечает {"keys": []} — пустой список SSH → Если вход не проходит
Keyholder отвечает 403 SSH → Разрешите вашему серверу спрашивать Alatyr
Окно агента: «Сервер отказал в регистрации ключа» — личность не подтверждена SSH → principal не доказывает личность
Ключ у сотрудника не появляется вовсе SSH → Если ключ не появляется
Доступ отозвали, а сотрудник продолжает входить SSH → Отзыв доступа
Сервер Alatyr недоступен — и вход перестал проходить SSH → Вход зависит от доступности Alatyr
На сервере уже настроен FreeIPA или другой источник ключей Совмещение с FreeIPA

mTLS пользователя и приёмники сертификатов

Что вы видите Где разобрано
Приложение отвечает 400 всем, включая сотрудника с годным сертификатом mTLS → Если вход не проходит
Приложение пускает сертификат машины (wifi) как пользовательский mTLS → Общий удостоверяющий центр сводит защиту к нулю
Сертификат отозван, а приложение по нему пускает mTLS → Три правила для списка отзыва
Настраиваете haproxy, nginx или OpenVPN и не уверены, что конфигурация рабочая Приёмники сертификатов

Доступ к Kubernetes

Что вы видите Где разобрано
no broker address has reached this device или no clusters are registered for this device Kubernetes → Если доступ не работает
Выдача отказывает со ссылкой на подтверждение человеком — спросить на этой машине негде (macOS, хост без графического сеанса) Kubernetes → Подтверждение человеком
Кластер говорит «сертификат истёк или ещё не действует», а выдан он секунды назад Kubernetes → Если доступ не работает
kubectl не видит ни одного кластера Kubernetes → Пустой реестр означает отсутствие доступа

Wi-Fi и проводной 802.1X

Что вы видите Где разобрано
Сертификат выдан, а устройство к сети не подключается Wi-Fi → Если подключение не проходит
Сертификат отозван, а устройство остаётся в сети Wi-Fi → Отзыв доходит до сети только через ваш RADIUS
Настраиваете FreeRADIUS или NPS Сторона RADIUS

Вход в домен по смарт-карте

Что вы видите Где разобрано
Плитка входа по карте не появляется или вход отклоняется Карта → Если вход не проходит
Карта не доходит до сеанса RDP Вход по RDP
Сертификат нельзя отозвать через Alatyr Карта → Пределы и нюансы

Сервер Alatyr

Что вы видите Где разобрано
Сервер не стартует: configuration error: ... ниже, «Ошибки валидации конфигурации»
Вебхуки не доходят, записи копятся в pending Эксплуатация → Мониторинг webhook-очереди
Заявки висят в ca_pending Эксплуатация → Очередь async-SCEP
Отзыв прошёл, а на стороне внешнего УЦ сертификат действует Известные ограничения → SCEP
Странное поведение при нескольких репликах сервера Отказоустойчивость (HA)

Общие инструменты

Когда симптом не попал ни в одну строку выше, порядок такой.

1. request_id и serial

Каждый HTTP-ответ несёт заголовок X-Request-ID; сервер связывает им все свои структурные лог-строки одного запроса, а полем serial — все строки, касающиеся конкретного устройства, поперёк запросов. Формат и способ поиска — Логирование.

2. Журналы агента — их два, а не один

Машинная и пользовательская половины агента пишут в разные файлы. Симптом «цель не выдаётся» обычно живёт в пользовательском журнале, а открывают чаще машинный. Пути по платформам — Логирование.

3. Аудит-лог

GET /api/v1/audit — персистентный журнал административных действий (approve/reject/revoke, изменение ролей), отдельный от структурных логов. Он отвечает на вопрос «кто это сделал», а не «что сломалось». См. Администрирование.

4. Ошибки валидации конфигурации при старте

Сервер отказывается стартовать (configuration error: ...) с конкретным списком проблем, если обязательные переменные не заданы или заданы некорректно — например ALATYR_DB_URL is not set, ALATYR_WEBHOOK_ENC_KEY must decode to exactly 32 bytes of hex (64 hex chars) when ALATYR_WEBHOOKS_ENABLED=true, ALATYR_SCEP_URL is required when ALATYR_ISSUER=scep. Сообщение всегда называет конкретную переменную и условие — читайте его буквально, это не generic-ошибка. См. Конфигурация.

5. Метрики

GET /metrics отвечает на вопросы «растёт ли доля ошибок» и «не молчит ли запись аудита» без похода в логи. Список метрик — Эксплуатация.

Чего на этой странице нет