Назад к обновлениям
New releaseSep 12, 2026

kanidm v1.11.2

Самостоятельно размещаемая платформа управления идентификацией, предоставляющая WebAuthn-ключи доступа (passkeys), единый вход OAuth2/OIDC (SSO), распространение SSH-ключей и интеграцию RADIUS и LDAP для современной аутентификации.

Поделиться

Kanidm — простое и безопасное управление идентификацией

Логотип Kanidm

О проекте

Kanidm — это простая и безопасная платформа управления идентификацией, позволяющая другим приложениям и сервисам переложить задачу аутентификации и хранения учётных записей на Kanidm.

Цель проекта — стать полноценным поставщиком идентификации, охватывающим максимально широкий набор требований и интеграций. Вам не понадобятся никакие другие компоненты (например, Keycloak) при использовании Kanidm — у нас уже есть всё, что вам нужно!

Для достижения этой цели мы во многом полагаемся на строгие настройки по умолчанию, простую конфигурацию и самовосстанавливающиеся компоненты. Это позволяет Kanidm поддерживать небольшие домашние лаборатории, семьи, малый бизнес и вплоть до потребностей крупнейших предприятий.

Если вы хотите разместить собственную службу аутентификации, Kanidm — для вас!

Поддерживаемые функции

Kanidm поддерживает:

  • Passkeys (WebAuthn) для безопасной криптографической аутентификации
    • Аттестованные passkeys для сред с высокими требованиями безопасности
  • Портал приложений, обеспечивающий лёгкий доступ к связанным приложениям
  • Поставщик аутентификации OAuth2/OIDC для SSO
  • Доступ к сервисам OAuth2/OIDC с помощью служб обмена токенами
  • Интеграция с Linux/Unix с автономной аутентификацией, защищённой TPM
  • Распространение SSH-ключей на системы Linux/Unix
  • RADIUS для сетевой и VPN-аутентификации
  • Шлюз LDAPs только для чтения для устаревших систем
  • Полный набор CLI-инструментов для администрирования
  • Высокая доступность из двух узлов с использованием репликации базы данных
  • Веб-интерфейс для самостоятельного обслуживания пользователей
  • И многое другое!

Документация / Начало работы / Установка

Если вы хотите узнать больше о возможностях Kanidm, вам следует прочитать нашу документацию.

У нас также есть набор правил поддержки, описывающих, что команда проекта будет поддерживать.

Кодекс поведения / Этика

Все взаимодействия с проектом регулируются нашим [кодексом поведения].

При разработке функций мы следуем руководству проекта по [правам и этике].

Мы поддерживаем [политику использования AI/LLM] для взаимодействия с этим проектом.

Связь / Вопросы

У нас есть канал сообщества на базе Matrix, где участники проекта всегда рады пообщаться и ответить на вопросы. Кроме того, вы можете открыть новое обсуждение на GitHub.

Что означает Kanidm?

Kanidm — это слово-портманто из 'kani' и 'idm'. Kani по-японски означает краб, что связано с талисманом Rust — Феррисом крабом. Управление идентификацией часто сокращают до 'idm', и это распространённый отраслевой термин для поставщиков аутентификации.

Kanidm произносится как «кар — ни — ди — эм».

Гимн Kanidm

Гимн — это популярная песня, особенно рок-песня, которая, как считается, выражает настроения или чувства, связанные с периодом или социальной группой.

Гимн Kanidm — Crab Rave - Noisestorm

Сравнение с другими сервисами

LLDAP

LLDAP — похожий проект, ориентированный на предоставление небольшого и простого в администрировании LDAP-сервера с веб-порталом администрирования. И LLDAP, и Kanidm используют привязки Kanidm LDAP и разделяют многие общие идеи проектирования.

Основное преимущество Kanidm перед LLDAP — более широкий встроенный набор функций, включая нативную поддержку OAuth2 и OIDC. В отличие от этого, LLDAP требует интеграции с внешним порталом, таким как Keycloak, для предоставления этих функций. Однако простота LLDAP — меньшее количество функций — может сделать его более простым в развёртывании и управлении для определённых случаев использования.

В то время как LLDAP предоставляет простой веб-интерфейс в качестве основного интерфейса управления пользователями, Kanidm в настоящее время предлагает административные функции в основном через свой CLI, а его веб-интерфейс больше предназначен для взаимодействия с пользователями, чем для администрирования.

Если Kanidm кажется вам слишком сложным, LLDAP — меньшая и более простая альтернатива. Но если вы хотите более функциональное решение «из коробки», Kanidm, скорее всего, подойдёт лучше.

389-ds / OpenLDAP

И 389 Directory Server (389-ds), и OpenLDAP являются универсальными LDAP-серверами. Они предоставляют только функции LDAP, поэтому вам придётся самостоятельно обеспечивать компоненты управления идентификацией (IDM) — такие как портал OIDC, веб-интерфейс самообслуживания, инструменты командной строки для администрирования и многое другое.

Если вам требуется максимальная настройка вашего LDAP-развёртывания, 389-ds или OpenLDAP могут быть лучшим выбором. Однако если вы предпочитаете простой в настройке сервис, ориентированный именно на IDM, Kanidm — превосходный вариант.

Kanidm черпает вдохновение как из 389-ds, так и из OpenLDAP и уже соответствует или превосходит 389-ds по производительности и масштабируемости службы каталогов, предлагая при этом более богатый набор функций.

FreeIPA

FreeIPA — это комплексная система управления идентификацией для Linux/Unix, объединяющая множество сервисов, включая LDAP, Kerberos, DNS и центр сертификации.

Однако FreeIPA сложен, состоит из многочисленных компонентов и конфигураций, что приводит к более высокому потреблению ресурсов и административным издержкам при установке и обновлении.

Kanidm стремится предложить такую же функциональность, как FreeIPA, но с меньшим потреблением ресурсов и более простым управлением. В тестах с 3000 пользователей и 1500 групп Kanidm продемонстрировал примерно в три раза более быстрые операции поиска и в пять раз более быстрые операции изменения и добавления (результаты могут варьироваться, но Kanidm обычно превосходит FreeIPA по скорости).

Если вам нужно полноценное решение IDM, которое проще управлять и которое более эффективно, Kanidm стоит рассмотреть.

Keycloak

Keycloak — это поставщик OIDC/OAuth2/SAML, который может добавлять WebAuthn- аутентификацию поверх существующих систем IDM. Хотя он может работать как самостоятельное решение IDM, обычно он используется вместе с LDAP-сервером или аналогичным внутренним компонентом.

Развёртывание Keycloak требует значительной настройки и опыта. Его обширные возможности настройки процессов аутентификации могут сделать первоначальную настройку сложной.

Kanidm не требует Keycloak для предоставления OAuth2 и других сервисов. Он включает многие из этих возможностей в более простой и оптимизированный способ прямо «из коробки».

Rauthy

Rauthy — минимальный поставщик OIDC, поддерживающий WebAuthn, использующий некоторые из тех же библиотек, что и Kanidm.

Однако Rauthy сосредоточен исключительно на OIDC и не поддерживает дополнительные сценарии использования, такие как RADIUS или аутентификация Unix.

Если вам нужен минимальный поставщик только для OIDC, Rauthy — отличный выбор. Но если вам требуется более широкий набор функций, Kanidm — лучший вариант.

Authentik / Authelia / Zitadel

Authentik (написан на Python), Authelia и Zitadel (оба написаны на Go) — это поставщики IDM, во многом похожие на Kanidm. Однако все три имеют более слабую поддержку аутентификации Unix и не предоставляют расширенных политик аутентификации или возможностей WebAuthn Attestation, которые предлагает Kanidm.

Кроме того, эти проекты полагаются на внешние SQL-базы данных, такие как PostgreSQL, что может создавать потенциальные единые точки отказа и узкие места производительности. В отличие от этого, Kanidm использует собственную высокопроизводительную базу данных и систему репликации, разработанную на основе опыта работы с корпоративными LDAP-серверами.

Начало работы для разработчиков

Если вы хотите внести вклад в Kanidm, есть руководство для начинающих [разработчиков]. IDM — разнообразная тема, и мы поощряем вклад различных видов в проект от людей любого происхождения. Обратите внимание, что мы не принимаем контент, созданный AI, в качестве вклада.

При разработке сервера вам следует обращаться к документации последнего коммита.

Категории