Как настроить веб-менеджер паролей предприятия с двухфакторной аутентификацией
TL;DR
Используйте WebKeePass как централизованный веб‑менеджер паролей и защитите его двухфакторной аутентификацией (2FA) через сервер WiKID. В статье показаны шаги установки, конфигурации LDAP для WiKID, тестирования и типичные решения проблем.
Введение
Двухфакторная аутентификация (2FA) повышает безопасность доступа к критичным сервисам. Если не все ваши сервисы поддерживают 2FA, хорошая практика — хранить уникальные, сложные пароли в корпоративном менеджере паролей и защитить сам менеджер 2FA. Эта инструкция показывает, как установить WebKeePass (open-source, многопользовательский) и подключить к нему сервер WiKID через LDAP.
Важно: мы не проводили полноценный аудит безопасности WebKeePass. Рекомендуется провести ревью конфигурации и периодически обновлять компоненты.
Что потребуется
- Сервер с Java и правами для запуска Tomcat (локально или отдельно).
- Доступ в Интернет или зеркало для скачивания WebKeePass tar/zip.
- Установленный и настроенный WiKID Strong Authentication Server (Community или Enterprise).
- Доступ администратора к WiKIDAdmin и к конфигам WebKeePass.
- Базовые знания LDAP (поиск DN, доменные идентификаторы).
Установка WebKeePass
Установка проста. Скачайте актуальный архив с SourceForge (пример):
wget http://downloads.sourceforge.net/project/webkeepass/WebKeePass-3.101127.zip?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fwebkeepass%2Ffiles%2F&ts=1309378079&use_mirror=softlayerРаспакуйте и запустите установщик:
unzip WebKeePass-3.101127.zipcd WebKeePass-3.101127chmod a+x Install.sh./Install.shВ процессе установки вам предложат принять LGPL, ввести каталоги установки и JAVA_HOME, порты Tomcat, создать пользователей и выбрать алгоритм шифрования.
После установки перейдите в каталог установки и запустите WebKeePass:
chmod a+x ./startup.shchmod a+x jakarta-tomcat-5.5.7/bin/*./startup.shВы должны увидеть примерно такой вывод:
[root@localhost test]# ./startup.sh
Using CATALINA_BASE: /root/test/jakarta-tomcat-5.5.7
Using CATALINA_HOME: /root/test/jakarta-tomcat-5.5.7
Using CATALINA_TMPDIR: /root/test/jakarta-tomcat-5.5.7/temp
Using JAVA_HOME: /usr/java/latest/Затем откройте браузер на порте Tomcat, например: https://localhost:8443/ — браузер может предложить запустить Java-приложение. Разрешите запуск и вы увидите экран входа.

Войдите с учётной записью администратора или пользователем, созданным в инсталляторе, чтобы подтвердить работоспособность до добавления 2FA.
Добавление двухфакторной аутентификации (WiKID)
Предполагается, что сервер WiKID уже установлен и настроен. Если нет — следуйте официальной документации WiKID: http://www.wikidsystems.com/support/wikid-support-center/installation-how-tos.
На сервере WiKID нужно добавить WebKeePass как сетевой клиент (Network Client) с протоколом LDAP. В интерфейсе WiKIDAdmin:
- Откройте вкладку Network Clients.
- Нажмите Create a New Network Client.
- Дайте понятное имя, укажите IP‑адрес сервера WebKeePass и выберите протокол LDAP.
- Ассоциируйте сетевой клиент с доменом, где хранятся пользователи WiKID. Нажмите Add.

На следующей странице нажмите Add NC:

Затем из командной строки перезапустите WiKID, чтобы открыть встроенный брандмауэр и применить изменения:
# wikidctl restartВажно: убедитесь, что между WebKeePass и WiKID нет сетевых ограничений (firewall, SELinux) на порту LDAP (обычно 389) и что DNS/маршрутизация корректны.
Настройка WebKeePass для двухфакторной аутентификации
Отредактируйте файл конфигурации WebKeePassConf.xml, который находится в каталоге конфигурации WebKeePass (например, /$webkeepass_directory/conf/):
vim WebKeePassConf.xmlНайдите секцию LDAP и замените её на следующий пример, адаптировав значения домена и IP‑адреса LDAP сервера WiKID:
true
Users
uid=
,domain=010100000127
ldap://10.100.0.127:389
simple
com.sun.jndi.ldap.LdapCtxFactory
Замените значение
После этого вы должны иметь возможность войти в WebKeePass, используя одноразовый код (OTP) из WiKID вместо или вместе с обычным паролем, в зависимости от конфигурации.
Проверка и тестирование
- Убедитесь, что пользователь существует в WiKID в том домене, который вы указывали.
- Попробуйте выполнить вход в WebKeePass с учётной записью WiKID и одноразовым кодом.
- Проверьте логи Tomcat и WebKeePass при ошибке. Обычно они находятся в папке jakarta-tomcat-*/logs/ или в каталоге установки WebKeePass.
Типичные места для проверки:
- Файл catalina.out (или stdout) Tomcat.
- Логи WebKeePass (application.log или похожие).
- Логи WiKID (для запросов LDAP и ошибок аутентификации).
Типовые проблемы и решения
- Проблема: “Не удаётся подключиться к LDAP” — Проверьте IP/порт, пробросы брандмауэра и что служба WiKID слушает порт 389. Удостоверьтесь, что SELinux/iptables не блокируют соединение.
- Проблема: “Неверный DN пользователя” — Проверьте principalDNPrefix/principalDNSuffix и соответствие схемы именования пользователей в WiKID.
- Проблема: “Ошибка сертификата” при использовании LDAPS — временно используйте LDAP для теста, затем настройте доверие сертификату и LDAPS правильно.
Примечание: для отладки можно использовать ldapsearch или утилиты типа ldp.exe (Windows) для проверки ответа LDAP.
Контрольный список администратора
- Скачать актуальный WebKeePass.
- Установить Java и необходимые зависимости.
- Настроить Tomcat и убедиться в запуске WebKeePass.
- Установить и настроить WiKID (сервер и домены).
- Добавить Network Client с протоколом LDAP в WiKIDAdmin.
- Обновить WebKeePassConf.xml с корректными DN и URL.
- Проверить вход пользователя через WiKID OTP.
- Настроить резервное копирование конфигурации и базы паролей.
Критерии приёмки
- Вход в WebKeePass возможен с использованием WiKID OTP для как минимум одного тестового пользователя.
- Логи не содержат критических ошибок подключения LDAP после конфигурации.
- Администратор может добавлять/удалять пользователей в WiKID, и изменения моментально влияют на доступ в WebKeePass.
- Бэкап конфигурации настроен и протестирован.
Риски и меры по снижению
| Риск | Влияние | Мера по снижению |
|---|---|---|
| Централизация паролей — компрометация WebKeePass | Высокое | Ограничить доступ к серверу, включить TLS, регулярно обновлять и аудировать доступ |
| Неправильная конфигурация LDAP | Среднее | Тестировать на стенде, использовать учетную запись для чтения LDAP, логирование |
| Потеря доступа к WiKID | Высокое | Настроить резервный метод восстановления (админские учетные записи, аварийные токены) |
Короткий глоссарий
- LDAP — протокол каталогов для поиска и аутентификации пользователей.
- 2FA / 2‑факторная аутентификация — метод, требующий два независимых фактора (что-то, что вы знаете, и что-то, что вы имеете).
- WiKID — сервер одноразовых паролей/двухфакторной аутентификации, поддерживающий LDAP-интеграцию.
Рекомендации и альтернативы
- Если требуется поддержка расширенных политик доступа и аудита, рассмотрите коммерческие или поддерживаемые решения (например, специализированные PAM/SSO).
- Альтернатива WebKeePass: CorporateVault и другие менеджеры паролей с LDAP/SSO интеграцией.
Резюме
WebKeePass + WiKID даёт относительно простой путь к централизованному хранению паролей в организации с защитой 2FA. Следуйте шагам установки, корректно настройте LDAP-интеграцию и протестируйте входы и логи. Не забывайте про резервные сценарии и аудит безопасности.
Важно: перед развертыванием в продакшн выполните внешний аудит безопасности и настройте резервирование и обновления.
Похожие материалы
Herodotus: механизм и защита Android‑трояна
Включить новое меню «Пуск» в Windows 11
Панель полей сводной таблицы в Excel — руководство
Включить новое меню «Пуск» в Windows 11
Дубликаты Диспетчера задач в Windows 11 — как исправить