...
| Термин | Пояснение | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Источник (source) | Модуль или пространство имён для сбора данных (например, ipahealthcheck.ipa.certs). Полный список источников см. Обзор источников и проверок для диагностики и мониторинга FreeIPA. | ||||||||||||
| Проверка (check) | Конкретная проверка в рамках источника (например, IPADNSSystemRecordsCheck). Полный список проверок см. Обзор источников и проверок для диагностики и мониторинга FreeIPA. | ||||||||||||
CLI | Аббревиатура от Command Line Interface. | ||||||||||||
| Сокращенное название проекта Dogtag Certificate System. | ||||||||||||
| Аббревиатура от Certificate System. | ||||||||||||
| Аббревиатура от Certificate Authority. | ||||||||||||
| Аббревиатура от Certificate Revocation List. | ||||||||||||
| Аббревиатура от Key Recovery Authority. | ||||||||||||
| Аббревиатуры от Directory Server <сокращенное название проверки> Lint Error. | ||||||||||||
| Главный файл конфигурации подсистемы DogTag CS. В DogTag подсистемы запускаются независимо, каждая со своим CS.cfg:
| ||||||||||||
| Аббревиатура от Domain Name System. | ||||||||||||
| Аббревиатура от Lightweight Directory Access Protocol. | ||||||||||||
| Аббревиатура от Network Security Services. | ||||||||||||
| Аббревиатура от Directory Server | ||||||||||||
| Аббревиатура от Replica Update Vector. | ||||||||||||
| Аббревиатура от Transport Layer Security (TLS) и Secure Sockets Layer (SSL). | ||||||||||||
| Служба для автоматического управления жизненным циклом сертификатов: генерирует запросы, отслеживает их, обновляет истекающие сертификаты и взаимодействует с центром сертификации для их продления. | ||||||||||||
|
Сертификат, для которого служба certmonger ведёт слежение по его параметрам и состоянию. В выводе команды getcert list такие сертификаты имеют статус MONITORING, что указывает на активное наблюдение за их сроком действия. При использовании DogTag (см. FreeIPA: Подключение центра сертификации DogTag в Astra Linux Common Edition) служба certmonger по умолчанию отслеживает все сертификаты, выданные центром сертификации DogTag и выполняет их продление за 28 дней до окончания срока действия. Если DogTag не используется, то по умолчанию служба certmoner не отслеживает и не продлевает сертификаты. Для ручного добавления сертификата в отслеживаемые см. Порядок включения сертификатов в отслеживаемые. | ||||||||||||
| Аббревиатура от Fully Qualified Domain Name. | ||||||||||||
| Аббревиатура от Key Distribution Center. | ||||||||||||
| Аббревиатура от Ticket Granting Ticket. | ||||||||||||
| Аббревиатура от Distributed Numeric Assignment. | ||||||||||||
| Файл “key table” Kerberos, хранящий длинно-срочные ключи одного или нескольких принципалов. Используется сервисами для автоматической аутентификации без ввода пароля. | ||||||||||||
| Аббревиатура от Apache JServ Protocol. | ||||||||||||
| Схема взаимосвязей и соглашений репликации между IPA-серверами. | ||||||||||||
| Аббревиатура от Active Directory. | ||||||||||||
| RID (Аббревиатура от Relative Identifier) SID (Аббревиатура от Security Identifier) | ||||||||||||
| Аббревиатура от Identity, Policy, Audit. |
...
| Раскрыть | ||
|---|---|---|
| ||
Доступные параметры CLI
|
...
При установке пакета создаются два системных юнита:
- ipa-healthcheck.service - основной основная юнит-служба, который которая запускает инструмент ipa‑healthcheck, выполняет проверки состояния установки FreeIPA и формирует отчёт об обнаруженных проблемах.
- ipa-healthcheck.timer - юнит-таймер, инициирующий запуск юнита-службы (ipa‑healthcheck.service) через заданные интервалы времени. Позволяет автоматизировать регулярное выполнение проверок для постоянного мониторинга системы.
...
- ipahealthcheck.dogtag.ca
Отвечает за диагностику служб центра сертификации DogTag (если DogTag используется). Диагностируются службы CA и FreeIPA Health Check. Обзор функциональных возможностей. [ЧЕРНОВИК].Раскрыть title Проверки в источнике ipahealthcheck.dogtag.ca DogtagCertsConfigCheck
Сравнивает значение сертификатов центра сертификации (а также FreeIPA Health Check. Обзор функциональных возможностей. [ЧЕРНОВИК], если установлен) с значением, найденным в файле CS.cfg. Если значения не совпадают, то, вероятно, CS не сможет запуститься.
Блок кода title json { "source": "ipahealthcheck.dogtag.ca", "check": "DogtagCertsConfigCheck", "result": "ERROR", "kw": { "key": "ocspSigningCert cert-pki-ca", "directive": "ca.ocsp_signing.cert", "configfile": "/var/lib/pki/pki-tomcat/conf/ca/CS.cfg", "msg": "Certificate 'ocspSigningCert cert-pki-ca' does not match the value of ca.ocsp_signing.cert in /var/lib/pki/pki-tomcat/conf/ca/CS.cfg" } }DogtagCertsConnectivityCheck
Информация title Справка Команда ipa cert-show отображает полную информацию о сертификате из IPA-CA по его серийному номеру: метаданные и сам сертификат в PEM-формате.
Выполняет эквивалент команды "ipa cert-show 1" для проверки базовой доступности.
Блок кода title json { "source": "ipahealthcheck.dogtag.ca", "check": "DogtagCertsConnectivityCheck", "result": "ERROR", "kw": { "msg": "Request for certificate failed, Certificate operation cannot be completed: Unable to communicate with CMS (503)" } }
...
- ipahealthcheck.ds.ruv
Следит за корректностью записей FreeIPA Health Check. Обзор функциональных возможностей. [ЧЕРНОВИК], необходимых для правильной работы репликации.Раскрыть title Проверки в источнике ipahealthcheck.ds.ruv RUVCheck
Извлекает текущий (локальный) RUV для основного FreeIPA Health Check. Обзор функциональных возможностей. [ЧЕРНОВИК]‑суффикса и для суффикса Dogtag CA и возвращает их как единичные значения.
Блок кода title json { "source": "ipahealthcheck.ds.ruv", "check": "RUVCheck", "result": "SUCCESS", "uuid": "9875d929-c813-4a91-b757-57798fc5aaff", "when": "20250421034249Z", "duration": "0.002770", "kw": { "key": "dc=testdomain,dc=test", "ruv": "4" } }KnownRUVCheck
Сканирует записи из tombstone, содержащие атрибут nsds50ruv, извлекает из них все известные RUV для каждого суффикса и возвращает список кортежей
(host, replicaID), что помогает выявить устаревшие записи репликации.Блок кода title json { "source": "ipahealthcheck.ds.ruv", "check": "KnownRUVCheck", "result": "SUCCESS", "uuid": "95da5759-5e7d-4260-9d79-01fa9d591b25", "when": "20250421034249Z", "duration": "0.002467", "kw": { "key": "ruvs_dc=testdomain,dc=test", "suffix": "dc=testdomain,dc=test", "ruvs": [ [ "ipasrv.testdomain.test", "4" ], [ "ipacln.testdomain.test", "3" ] ] } }
- ipahealthcheck.ipa.certs
Содержит набор проверок, связанных с сертификатами FreeIPA: контролирует срок действия сертификатов, проверяет целостность и корректность цепочки доверия, сверяет сертификаты в FreeIPA Health Check. Обзор функциональных возможностей. [ЧЕРНОВИК]-базах и PEM-файлах, а также их соответствие записям в FreeIPA Health Check. Обзор функциональных возможностей. [ЧЕРНОВИК].Раскрыть title Проверки в источнике ipahealthcheck.ipa.certs IPACertmongerExpirationCheck
Перебирает все ожидаемые запросы certmonger и проверяет срок действия сертификата, основываясь на информации, которой располагает certmonger. Если сертификат истекает в пределах cert_expiration_days (по умолчанию 28 дней), выдается предупреждение.
Истекший сертификат:
Блок кода title json { "source": "ipahealthcheck.ipa.certs", "check": "IPACertmongerExpirationCheck", "result": "ERROR", "kw": { "key": 1234, "expiration_date": "20160101001704Z", "msg": "Request id 1234 expired on 20160101001704Z" } }Сертификат, истекающий скоро:
Блок кода title json { "source": "ipahealthcheck.ipa.certs", "check": "IPACertmongerExpirationCheck", "result": "WARNING", "kw": { "key": 1234, "expiration_date": "20160101001704Z", "days": 9, "msg": "Request id 1234 expires in 9 days" } }IPACertfileExpirationCheck
Похожа на IPACertmongerExpirationCheck, но сертификат извлекается из PEM-файла или базы NSS и повторно проверяется. Это используется в случае, если сведения certmonger устарели по сравнению с сертификатом, находящимся на диске.
Если файл сертификата не может быть открыт:
Блок кода title json { "source": "ipahealthcheck.ipa.certs", "check": "IPACertfileExpirationCheck", "result": "ERROR", "kw": { "key": 1234, "certfile": "/path/to/cert.pem", "error": [error], "msg": "Unable to open cert file '/path/to/cert.pem': [error]" } }Если FreeIPA Health Check. Обзор функциональных возможностей. [ЧЕРНОВИК]-база не может быть открыта:
Блок кода title json { "source": "ipahealthcheck.ipa.certs", "check": "IPACertfileExpirationCheck", "result": "ERROR", "kw": { "key": 1234, "dbdir": "/path/to/nssdb", "error": [error], "msg": "Unable to open NSS database '/path/to/nssdb': [error]" } }Если отслеживаемый никнейм не найден в FreeIPA Health Check. Обзор функциональных возможностей. [ЧЕРНОВИК]-базе:
Блок кода title json { "source": "ipahealthcheck.ipa.certs", "check": "IPACertfileExpirationCheck", "result": "ERROR", "kw": { "key": 1234, "dbdir": "/path/to/nssdb", "nickname": [nickname], "error": [error], "msg": "Unable to retrieve cert '[nickname]' from '/path/to/nssdb': [error]" } }Истекший сертификат:
Блок кода title json { "source": "ipahealthcheck.ipa.certs", "check": "IPACertfileExpirationCheck", "result": "ERROR", "kw": { "key": 1234, "expiration_date", "20160101001704Z", "msg": "Request id 1234 expired on 20160101001704Z" } }Сертификат, истекающий скоро:
Блок кода title json { "source": "ipahealthcheck.ipa.certs", "check": "IPACertfileExpirationCheck", "result": "WARNING", "kw": { "key": 1234, "expiration_date", "20160101001704Z", "days": 9, "msg": "Request id 1234 expires in 9 days" } }IPACAChainExpirationCheck
Загружает цепочку сертификатов из файла /etc/ipa/ca.crt и проверяет срок действия каждого сертификата в цепочке. Это тест, предназначенный для подтверждения валидности всей цепочки доверия (включая случаи, когда сертификаты веб-сервера или LDAP были заменены, а цепочка находится в /etc/ipa/ca.crt).
Сертификат, истекающий скоро:
Блок кода title json { "source": "ipahealthcheck.ipa.certs", "check": "IPACAChainExpirationCheck", "result": "WARNING", "kw": { "path": "/etc/ipa/ca.crt", "key": "CN=Certificate Authority,O=EXAMPLE.TEST", "days": 2, "msg": "CA '{key}' is expiring in {days} days." } }Истекший сертификат:
Блок кода { "source": "ipahealthcheck.ipa.certs", "check": "IPACAChainExpirationCheck", "result": "WARNING", "kw": { "path": "/etc/ipa/ca.crt", "key": "CN=Certificate Authority,O=EXAMPLE.TEST", "days": 2, "msg": "CA '{key}' is expiring in {days} days." } }IPACertTracking
Сравнивает информацию отслеживания сертификатов, полученную от FreeIPA Health Check. Обзор функциональных возможностей. [ЧЕРНОВИК], с ожидаемыми значениями. Результат показывает ошибку, если какая-либо часть отслеживания отсутствует или отличается от ожидаемой.
Предупреждение title Важно! По умолчанию FreeIPA на Astra Linux развёртывается без полноценного CA. Генерируется ключевая пара CA (создаются закрытый ключ и самоподписанный сертификат открытого ключа), остальные сертификаты формируются через CSR и подписываются этим закрытым ключом CA, а их проверка выполняется по самоподписанному сертификату CA.
Поскольку в системе отсутствует как внутренний (DogTag), так и внешний CA, проверка IPACertTracking всегда будет завершаться с ERROR. Для исправления нужно начать отслеживать сертификат вручную, подробнее . Для дополнительной информации см. Отслеживаемый сертификат Порядок включения сертификатов в отслеживаемые.Если отслеживание отсутствует:
Блок кода title json { "source": "ipahealthcheck.ipa.certs", "check": "IPACertTracking", "result": "ERROR", "kw": { "key": "cert-file=/var/lib/ipa/ra-agent.pem, key-file=/var/lib/ipa/ra-agent.key, ca-name=dogtag-ipa-ca-renew-agent, cert-storage=FILE, cert-presave-command=/usr/libexec/ipa/certmonger/renew_ra_cert_pre, cert-postsave-command=/usr/libexec/ipa/certmonger/renew_ra_cert" "msg": "Missing tracking for cert-file=/var/lib/ipa/ra-agent.pem, key-file=/var/lib/ipa/ra-agent.key, ca-name=dogtag-ipa-ca-renew-agent, cert-storage=FILE, cert-presave-command=/usr/libexec/ipa/certmonger/renew_ra_cert_pre, cert-postsave-command=/usr/libexec/ipa/certmonger/renew_ra_cert" } }Если отслеживается неизвестный сертификат:
Блок кода title json { "source": "ipahealthcheck.ipa.certs", "check": "IPACertTracking", "result": "WARNING", "kw": { "key": 1234, "msg": "Unknown certmonger id 1234' } }IPACertNSSTrust
Сравнивает настройки доверия для сертификатов, хранящихся в FreeIPA Health Check. Обзор функциональных возможностей. [ЧЕРНОВИК]-базе, с известным корректным состоянием.
Блок кода title json { "source": "ipahealthcheck.ipa.certs", "check": "IPACertNSSTrust", "result": "ERROR", "kw": { "key": "auditSigningCert cert-pki-ca", "expected": "u,u,Pu", "got": "u,u,u", "nickname": "auditSigningCert cert-pki-ca", "dbdir": "/etc/pki/pki-tomcat/alias", "msg": "Incorrect NSS trust for auditSigningCert cert-pki-ca. Got u,u,u expected u,u,Pu" } }IPACertMatchCheck
Удостоверяется, что записи сертификата CA в LDAP совпадают с данными, полученными из FreeIPA Health Check. Обзор функциональных возможностей. [ЧЕРНОВИК]-базы (или файла).
Блок кода title json { "source": "ipahealthcheck.ipa.certs", "check": "IPACertMatchCheck", "result": "ERROR", "kw": { "msg": "CA Certificate from /etc/ipa/nssdb does not match /etc/ipa/ca.crt" } }IPADogtagCertsMatchCheck
Проверяет, совпадают ли сертификаты DogTag, присутствующие как в FreeIPA Health Check. Обзор функциональных возможностей. [ЧЕРНОВИК]-базе, так и в FreeIPA Health Check. Обзор функциональных возможностей. [ЧЕРНОВИК].
Блок кода title json { "source": "ipahealthcheck.ipa.certs", "check": "IPADogtagCertsMatchCheck", "result": "ERROR", "kw": { "msg": "'subsystemCert cert-pki-ca' certificate in NSS DB does not match entry in LDAP" } }IPANSSChainValidation
Информация title Справка Команда"certutil -V -u V -e -d [dbdir] -n [nickname]"проверяет указанный сертификат на валидность цепочки доверия и корректность подписи из NSS-базы.
-d [dbdir] и -n [nickname] — путь к базе и её псевдоним.
-V -u V -e — валидация по дате/флагам доверия и проверка подписи.Проверяет цепочку сертификатов, полученных из FreeIPA Health Check. Обзор функциональных возможностей. [ЧЕРНОВИК]-базы. Выполняется команда "certutil -V -u V -e -d [dbdir] -n [nickname]".
Блок кода title json { "source": "ipahealthcheck.ipa.certs", "check": "IPANSSChainValidation", "result": "ERROR", "kw": { "key": "/etc/dirsrv/slapd-EXAMPLE-TEST:Server-Cert", "nickname": "Server-Cert", "dbdir": [path to NSS database], "reason": "certutil: certificate is invalid: Peer's Certificate issuer is not recognized.\n: ", "msg": ""Validation of Server-Cert in /etc/dirsrv/slapd-EXAMPLE-TEST/ failed: certutil: certificate is invalid: Peer's Certificate issuer is not recognized.\n " } }IPAOpenSSLChainValidation
Информация title Справка Команда "openssl verify -verbose -show_chain -CAfile /etc/ipa/ca.crt /path/to/cert.pem" проверяет цепочку доверия для сертификата /path/to/cert.pem, используя доверенный FreeIPA Health Check. Обзор функциональных возможностей. [ЧЕРНОВИК]-файл /etc/ipa/ca.crt.
Проверяет цепочку сертификатов для файлов OpenSSL. Выполняется команда "openssl verify -verbose -show_chain -CAfile /etc/ipa/ca.crt /path/to/cert.pem".
Блок кода title json { "source": "ipahealthcheck.ipa.certs", "check": "IPAOpenSSLChainValidation", "result": "ERROR", "kw": { "key": "/var/lib/ipa/ra-agent.pem", "reason": "O = EXAMPLE.TEST, CN = IPA RA\nerror 20 at 0 depth lookup: unable to get local issuer certificate\n", "msg": "Certificate validation for /var/lib/ipa/ra-agent.pem failed: O = EXAMPLE.TEST, CN = IPA RA\nerror 20 at 0 depth lookup: unable to get local issuer certificate\n" } }IPARAAgent
Проверяет соответствие описания и значения атрибута userCertificate для RA-агента в FreeIPA Health Check. Обзор функциональных возможностей. [ЧЕРНОВИК].
Блок кода title json { "source": "ipahealthcheck.ipa.certs", "check": "IPARAAgent", "result": "ERROR", "kw": { "expected": "2;125;CN=Certificate Authority,O=EXAMPLE.TEST;CN=IPA RA,O=EXAMPLE.TEST", "got": "2;7;CN=Certificate Authority,O=EXAMPLE.TEST;CN=IPA RA,O=EXAMPLE.TEST", "msg": "RA agent description does not match. Found 2;7;CN=Certificate Authority,O=EXAMPLE.TEST;CN=IPA RA,O=EXAMPLE.TEST in LDAP and expected 2;125;CN=Certificate Authority,O=EXAMPLE.TEST;CN=IPA RA,O=EXAMPLE.TEST" } }IPAKRAAgent
Проверяет соответствие описания и значения атрибута userCertificate для FreeIPA Health Check. Обзор функциональных возможностей. [ЧЕРНОВИК]-агента в FreeIPA Health Check. Обзор функциональных возможностей. [ЧЕРНОВИК].
Блок кода title json { "source": "ipahealthcheck.ipa.certs", "check": "IPAKRAAgent", "result": "ERROR", "kw": { "expected": "2;125;CN=Certificate Authority,O=EXAMPLE.TEST;CN=IPA RA,O=EXAMPLE.TEST", "got": "2;7;CN=Certificate Authority,O=EXAMPLE.TEST;CN=IPA RA,O=EXAMPLE.TEST", "msg": "KRA agent description does not match. Found 2;7;CN=Certificate Authority,O=EXAMPLE.TEST;CN=IPA RA,O=EXAMPLE.TEST in LDAP and expected 2;125;CN=Certificate Authority,O=EXAMPLE.TEST;CN=IPA RA,O=EXAMPLE.TEST" } }IPACertRevocation
Подтверждает, что сертификаты IPA не отозваны, используя отслеживание certmonger для определения списка сертификатов, подлежащих проверке.
Блок кода title json { "source": "ipahealthcheck.ipa.certs", "check": "IPACertRevocation", "result": "ERROR", "kw": { "key": 1234, "revocation_reason": "superseded", "msg": "Certificate is revoked, superseded" } }IPACertmongerCA
Проверяет корректность конфигурации CA в FreeIPA Health Check. Обзор функциональных возможностей. [ЧЕРНОВИК], анализируя настройки dogtag-ipa-ca-renew-agent и dogtag-ipa-ca-renew-agent-reuse.
Блок кода title json { "source": "ipahealthcheck.ipa.certs", "check": "IPACertmongerCA", "result": "ERROR", "kw": { "key": "dogtag-ipa-ca-renew-agent", "msg": "Certmonger CA 'dogtag-ipa-ca-renew-agent' missing" } }IPACertDNSSAN
Проверяет, что во всех действующих заявках certmonger на серверные сертификаты профиля caIPAserviceCert для CA присутствует FreeIPA Health Check. Обзор функциональных возможностей. [ЧЕРНОВИК]‑Subject Alt Name, совпадающий с FQDN текущего хоста.
Блок кода title json { "source": "ipahealthcheck.ipa.certs", "check": "IPACertDNSSAN", "result": "ERROR", "uuid": "431c42c0-9396-4593-ad2b-09b40298ba1f", "when": "20240416115958Z", "duration": "0.904624", "kw": { "key": "20240318110910", "hostname": "ipa-ca.example.com", "san": [ "ipa02.example.com" ], "ca": "IPA", "profile": "caIPAserviceCert", "msg": "Certificate request id {key} with profile {profile} for CA {ca} does not have a DNS SAN {san} matching name {hostname}" } }CertmongerStuckCheck
Ищет заявки FreeIPA Health Check. Обзор функциональных возможностей. [ЧЕРНОВИК], у которых статус stuck = true, и оповещает об «застрявших» запросах.
Блок кода title json { "source": "ipahealthcheck.ipa.certs", "check": "CertmongerStuckCheck", "result": "WARNING", "uuid": "d32781d5-09e7-4d52-89f1-57eca541e9e4", "when": "20230407120255Z", "duration": "0.019584", "kw": { "key": "20230407091205", "msg": "certmonger request {key} is in the stuck state" } }
...
| Предупреждение | ||
|---|---|---|
| ||
При ручном добавлении сертификата в отслеживание, служба certmonger лишь начинает за ним наблюдать, но автоматическое обновление происходит только через CA, сконфигурированный в certmonger. Если в системе нет ни одного CA (внутреннего DogTag или внешнего, зарегистрированного через getcert add-scep-ca или ipa-getcert), то при приближении срока истечения служба certmonger попытается продлить сертификат, но получит ошибку CA_UNREACHABLE и не обновит его автоматически. |
...