Authentik vs Keycloak для корпоративного SSO: что выбрать SMB в 2026
Меня зовут Семёнов Евгений Сергеевич, я директор АйТи Фреш. В 2025–2026 годах мы в компании перевели на SSO 12 клиентов. В шести случаях поставили Authentik, в пяти — Keycloak, один кейс с FreeIPA. Расскажу честное сравнение двух лидеров open-source идентификации для офиса на 30–80 рабочих мест: где что лучше, а где больнее. Всё на примере реального проекта у клиента — маркетинговое агентство с 55 РМ и 14 внутренними сервисами.
Зачем вообще SSO небольшому офису
Когда у сотрудника 2–3 сервиса — SSO избыточен. Когда их 8 и больше — отсутствие SSO превращается в ежедневный ад. У типичного клиента АйТи Фреш 2026 года:
- Почта и календарь (Nextcloud Mail или Zimbra).
- Файлы (Nextcloud, Seafile).
- CRM (amoCRM, Битрикс24).
- 1С:Предприятие (веб-клиент).
- Таск-трекер (Kaiten, Yougile, self-hosted Redmine).
- Wiki (BookStack, Wiki.js, Outline).
- Видеозвонки (Nextcloud Talk, BigBlueButton, Jitsi).
- VPN (NetBird, WireGuard).
- Мониторинг (Grafana, Zabbix).
- Чат (Rocket.Chat, Mattermost).
- Репозиторий (Gitea, GitLab).
- CI/CD (Drone, Jenkins).
12 сервисов × 55 человек × регулярная смена паролей = бардак. С SSO всё становится прозрачно:
- Один логин (обычно доменная учётка).
- 2FA централизованно, настраивается один раз.
- При увольнении HR отключает доменную запись — доступ пропадает ВСЕГДА и ВЕЗДЕ за минуту.
- Audit log всех попыток логина в одном месте.
Краткие портреты
Keycloak — проект Red Hat, написан на Java (Quarkus), самый зрелый open-source IdP. Используется в энтерпрайзе от банков до госсектора. Мощный, гибкий, но тяжёлый в установке и эксплуатации.
Authentik — молодой проект (2020), написан на Python/Django + TypeScript-UI. Изначально позиционировался как «простой open-source Okta», с 2023-го сильно вырос и стал serious contender.
Детальное сравнение
| Критерий | Keycloak | Authentik |
|---|---|---|
| Язык реализации | Java (Quarkus) | Python (Django) |
| Минимум RAM | 4 ГБ | 2 ГБ |
| Минимум CPU | 2 vCPU | 2 vCPU |
| Хранение | PostgreSQL/MSSQL/MySQL | PostgreSQL |
| Поддержка OIDC | да | да |
| Поддержка SAML | да | да |
| Поддержка LDAP/AD | да (встроенный плагин) | да (Source) |
| Поддержка Kerberos | да | экспериментально |
| 2FA (TOTP/WebAuthn) | да | да |
| Passkey/FIDO2 | да | да |
| Сложность настройки | высокая | средняя |
| Интерфейс | функциональный, неуклюжий | современный, интуитивный |
| Русский язык UI | частично | есть, хороший перевод |
| Документация | обширная, часто устаревшая | компактная, актуальная |
| Community/Разработка | Red Hat + большое комьюнити | небольшая команда + комьюнити |
| Horizontal scaling | да, с Infinispan | да, простая архитектура |
| API для автоматизации | REST + Admin | REST GraphQL-like |
Реальный опыт: как мы развернули Authentik у клиента
Клиент — маркетинговое агентство, 55 сотрудников, 14 сервисов. Было желание «один логин на всё с 2FA обязательно». Выбрали Authentik из-за простоты UI и меньших требований.
- День 1. Подняли VPS 2 vCPU / 4 ГБ RAM / 40 ГБ SSD за 900 ₽/мес. Установили Authentik из официального docker-compose. За 40 минут получили рабочую админку.
- День 2. Подключили Active Directory как Source через LDAP. Настроили синхронизацию: 55 пользователей подтянулись за 6 секунд. Включили правило «логин в Authentik = логин в AD» — пользователи вводят свои доменные пароли, которые никогда не уходят за пределы AD.
- День 3. Подключили приложения по одному:
- Nextcloud — OIDC, 5 минут на приложение.
- GitLab Self-managed — OIDC, 10 минут (надо было чуть поправить scope).
- Grafana — OIDC, 5 минут.
- Gitea — OIDC, 5 минут.
- Rocket.Chat — OAuth2, 10 минут.
- BookStack — SAML2, 20 минут (SAML всегда менее приятен).
- amoCRM — нет поддержки SSO в стандартной подписке, пришлось брать Pro-тариф.
- NetBird VPN — OIDC, 5 минут.
- Redmine (с плагином) — OIDC, 15 минут.
- Wiki.js — OIDC, 5 минут.
- Portainer — OIDC, 5 минут.
- Proxmox — OIDC, 10 минут.
- Synology NAS — SAML2, 30 минут (пляски с сертификатом).
- Mattermost — SAML2, 20 минут.
- День 4. Включили обязательный 2FA через TOTP (Google Authenticator). Провели обучение 55 сотрудников в двух группах — 1,5 часа каждая.
Что пошло не так и как исправили
- Outlook не дружит с OIDC без танцев. У части сотрудников (старые Outlook 2016) OIDC через браузер работал плохо — решили оставить им SMTP/IMAP с отдельным паролем приложения.
- 1С:Предприятие. Веб-клиент 1С имеет свою систему аутентификации, OIDC подключается только через прокси-трюк на nginx с auth_request. Мы сделали эту связку, но для клиентов «попроще» оставляем 1С в обход SSO.
- Сессии расходятся. По умолчанию сессия в Authentik — 8 часов, в Nextcloud — 15, в GitLab — 24. Результат: пользователь работает в GitLab, а в Nextcloud его выкидывает. Выровняли таймауты до 10 часов везде.
- Бэкапы Authentik. Забыли настроить регулярный бэкап PostgreSQL. На пятый день месяца всё упало, пришлось восстанавливаться из стандартной ежедневной копии VPS. Урок выучен — теперь делаем WAL-G в S3 на каждом Authentik-проекте.
Когда стоит взять Keycloak, а не Authentik
- Если у вас есть Java-разработчики, и вы планируете писать кастомные SPI (Service Provider Interfaces).
- Если нужно интегрироваться с Kerberos для Windows SSO без ввода пароля.
- Если корпоративная политика требует Red Hat-совместимую технологию.
- Если уже есть опыт с Keycloak в компании.
- Если планируется крупная мультитенантная инсталляция со сложными правилами авторизации.
- Если нужен fine-grained authorization (Keycloak UMA) — у Authentik это слабее.
Когда Authentik — правильный выбор
- SMB и средний бизнес до 200 РМ.
- Нет штатного Java-разработчика.
- Хочется простой UI и быстрого старта.
- Важно меньшее потребление ресурсов.
- Нужна актуальная документация и адекватная Matrix-чат-поддержка сообщества.
- Нужен встроенный Application Portal (пользовательский ландшафт, как в Okta).
Стоимость проектов
| Этап | Authentik | Keycloak |
|---|---|---|
| Установка сервера | 15 000 ₽ | 22 000 ₽ |
| Интеграция с AD/LDAP | 12 000 ₽ | 15 000 ₽ |
| Подключение 5 приложений | 25 000 ₽ | 30 000 ₽ |
| Настройка 2FA и политик | 10 000 ₽ | 13 000 ₽ |
| Обучение и документация | 8 000 ₽ | 10 000 ₽ |
| Итого | 70 000 ₽ | 90 000 ₽ |
Что мы ведём на абонентке
- Подключение новых приложений по мере их появления у клиента.
- Управление группами и ролями при кадровых изменениях.
- Мониторинг работоспособности IdP (Authentik/Keycloak не должен лежать — иначе лежит всё).
- Обновление до новых версий после тестирования.
- Бэкап базы, проверка восстановления.
- Реакция на инциденты входа (пометки о подозрительных активностях).
Хотите «один логин на всё» в вашем офисе?
Приеду, посмотрю, сколько у вас сервисов, какие поддерживают SSO, какой путь дешевле. Чаще всего у SMB находится 10–15 сервисов, которые можно объединить — и потом жизнь сотрудников резко улучшается. Аудит бесплатный, по Москве и МО.
Телефон: +7 903 729-62-41
Telegram: @ITfresh_Boss
Семёнов Евгений Сергеевич, директор АйТи Фреш
FAQ
- Зачем SSO офису на 50 РМ?
- Сотрудник каждое утро логинится в 7–12 разных сервисов. Без SSO это 12 паролей, половина слабых. SSO — один логин, 2FA, прозрачное отключение при увольнении.
- Что лучше для SMB: Authentik или Keycloak?
- Для офиса до 100 РМ — чаще Authentik: проще UI, легче установка, меньше RAM. Keycloak — мощнее, но требует больше опыта. Есть Java-разработчики — берите Keycloak.
- Можно ли подружить с Active Directory?
- Оба подтягивают пользователей из AD по LDAP. Логин в SSO идёт паролем из AD, блокировка доменной учётки = блокировка везде.
- Сколько стоит внедрение?
- Базовый SSO для 30–60 РМ с 5–7 приложениями — от 70 000 ₽, срок 3–4 дня. Каждое дополнительное приложение — 4 000–8 000 ₽.