FAQ и устранение неполадок
Краткие ответы на частые вопросы. Более глубокий контекст: Безопасность, Настройка сервера, Использование приложения, Nearby, Расширение браузера, CLI.
Мастер-пароль и восстановление
Я забыл мастер-пароль. Могу ли я восстановить сейф?
Нет. OpenKey — zero-knowledge: сервер никогда не видит мастер-пароль или ключ сейфа в открытом виде. Без пароля (и без устройства с ещё разблокированной сессией или зашифрованным локальным бэкапом, который можно разблокировать) шифротекст невосстановим.
Держите сильный уникальный мастер-пароль и хотя бы один Pro зашифрованный локальный бэкап (.okbak) или офлайн-экспорт.
Может ли админ сервера сбросить мой пароль?
Нет. Админы могут удалять или удерживать шифротекст и наблюдать метаданные (email, размеры, время). Они не могут расшифровать ваш сейф или задать новый мастер-пароль за вас.
Как сменить мастер-пароль?
В приложении используйте поток аккаунта / безопасности, который ротирует учётные данные (/auth/rekey на сервере). Сам ключ сейфа остаётся тем же; обновляются только auth hash и обёрнутый ключ сейфа на сервере. Синхронизируйте другие устройства с новым мастер-паролем.
Sync и сервер
Sync не удаётся или login возвращает ошибку
- Убедитесь, что
http(s)://your-host/healthотвечает healthy. - Используйте точно ту же URL сервера на каждом клиенте (завершающий слэш допустим; в продакшене предпочитайте HTTPS).
- Проверьте, что
JWT_SECRETзадан (≥ 32 символов, не placeholder) — иначе API откажется стартовать. - Проверьте, что
CORS_ORIGINSвключает origin расширения / веба, если используете их (никогда*). - Auth endpoints rate-limited по IP (
AUTH_RATE_LIMIT_*). Подождите минуту и повторите после многих неудачных login. - Зарегистрируйтесь один раз на первом устройстве; на других войдите с тем же email + мастер-паролем, затем Синхронизировать сейчас.
Телефон не достигает http://localhost:8000
localhost на телефоне — это сам телефон. Используйте LAN IP компьютера (http://192.168.x.x:8000) в той же Wi‑Fi, или откройте HTTPS через reverse proxy / туннель. Cleartext HTTP может блокироваться на мобильном — предпочитайте HTTPS кроме локальной отладки.
Два устройства показывают разное содержимое сейфа после sync
Sync — last-write-wins по revision, не CRDT. Параллельные правки могут перезаписываться. Снова pull/push после редактирования на одном устройстве за раз. Nearby LAN sync использует то же правило LWW.
Как удалить аккаунт на сервере?
Клиенты вызывают аутентифицированный POST /auth/delete после повторного доказательства текущего auth_hash. Это навсегда удаляет серверный шифротекст. Локальные сейфы на устройствах не затрагиваются — удалите или очистите их отдельно при необходимости.
Приложение и Pro
Что бесплатно, а что Pro?
См. матрицу в Использование приложения. Кратко: бесплатно — базовый сейф + sync сервера с лимитами элементов; Pro открывает безлимитные элементы, экспорт, зашифрованные бэкапы, Nearby, организации/шаринг, вложения и пользовательские иконки.
Nearby не находит другое устройство (Pro)
- Оба устройства разблокированы, Настройки → Устройства рядом запущены, одна Wi‑Fi (не гостевая/изоляция клиентов).
- Предпочитайте Сканировать QR спаривания вместо ввода кода; разрешите запросы камеры / локальной сети.
- Временно отключите VPN / private relay. На macOS разрешите dial-back файрвола, если QR-подключение не удаётся.
- Спарьтесь, затем Связать сейф (один отпечаток ключа сейфа). Полное руководство: Nearby.
- Опция Только доверенные сети: добавьте SSID или Nearby паузится в неизвестных сетях.
- Платформы с магазинным IAP (Android / iOS / macOS) игнорируют LAN Pro от пиров — купите/восстановите Pro в том магазине при необходимости.
Как отправить один пароль на другое устройство в LAN?
После спаривания (Pro) используйте Отправить на устройство на записи или из действий пира Nearby. Это отправляет одну запись по LAN-сессии без ожидания полной sync сейфа. Подробнее: Nearby → Отправить запись.
Автозаполнение / passkeys не появляются
Включите OpenKey как системного провайдера паролей и passkeys в Настройки → Автозаполнение, затем разблокируйте сейф. На iOS/macOS разрешите запросы ОС. Перезапустите браузер или целевое приложение после смены провайдера.
Какая горячая клавиша заполнения расширения?
Ctrl+Shift+L на Windows/Linux, ⌘⇧L на macOS. Переназначьте в горячих клавишах расширения браузера при необходимости. См. Расширение браузера.
Импорт сработал, но экспорт заблокирован
Импорт бесплатен; экспорт требует Pro (то же для зашифрованных .okbak). Руководство: Импорт и экспорт.
Как работают вложения?
Pro. Откройте логин → добавьте зашифрованное вложение (макс. около 20 MB). Вложения синхронизируются как шифротекст через сервер. Экспорт OpenKey JSON включает только метаданные — используйте .okbak для полного сейфа с blobs вложений.
Как добавить TOTP / коды аутентификатора?
В записи добавьте секрет аутентификатора или URI otpauth, или отсканируйте QR с настройки 2FA сайта. Коды появляются при разблокированном сейфе; системное Автозаполнение / расширение могут заполнять где поддерживается.
Можно ли вкладывать коллекции?
Да — папки могут содержать другие папки (связь parent). Вложенные логины включаются в автозаполнение и десктопный мост.
Удалённые элементы сразу исчезают на других устройствах?
Мягко удалённые элементы синхронизируются как tombstones, пока пиры не догонят. Last-write-wins использует revision на элемент — параллельные правки всё ещё могут перезаписываться.
Требуют ли web-сборки Pro?
Пока нет. Web-сборки сегодня не применяют лимиты Pro. Мобильные и десктопные store/desktop сборки — да.
Как работают организации и шары?
Pro + тот же self-hosted сервер. Опубликуйте ключи идентичности, затем пригласите в орг или поделитесь снимком записи. Подробнее: Шаринг и организации.
Как работают биометрия / авто-блокировка?
В Настройки → Безопасность можно включить биометрическую разблокировку (зависит от платформы) и связанные защиты блокировки. Предпочитайте блокировку при простое на общих машинах. Биометрия оборачивает ключ сейфа на устройстве — не заменяет сильный мастер-пароль.
Расширение браузера
Расширение не может связаться с десктопным приложением
- Разблокируйте десктопный сейф и оставьте разблокированным.
- Откройте Настройки → Автозаполнение (и Расширение браузера на macOS), чтобы зарегистрировать нативный хост.
- Chromium: запишите ID распакованного расширения в платформенный файл (см. Расширение браузера), затем снова откройте Автозаполнение.
- Выберите Использовать десктопное приложение в расширении.
- macOS нужен Python 3 в
PATHдля скрипта хоста.
Автономная разблокировка не удаётся против моего сервера
Убедитесь, что prelogin работает: email должен быть уже зарегистрирован. Тот же мастер-пароль, что в приложении. URL сервера должен быть достижим из браузера (CORS / HTTPS). Проверьте URL на странице Options и попробуйте /health в обычной вкладке.
Passkeys возвращаются к браузерному аутентификатору
Это ожидаемо, когда выбираете Использовать браузер в диалоге подтверждения или когда сейф расширения заблокирован. Разблокируйте расширение (автономно), чтобы хранить/использовать passkeys OpenKey.
CLI
openkey secret … говорит разблокировать приложение
Команды сейфа требуют разблокированное десктопное приложение (нативный мост) или eval $(openkey unlock) после login. Запустите openkey status, чтобы увидеть состояние моста / сессии.
Сессия истекла
Блокировка по умолчанию — 15 минут (openkey config set-lock). Снова запустите eval $(openkey unlock). Предпочитайте интерактивный ввод пароля вместо OPENKEY_PASSWORD на личных машинах.
Безопасность / приватность
Где в приложении Autofill?
В Настройки → Безопасность — отдельной страницы Autofill нет. OpenKey не отправляет пароли в Have I Been Pwned и не показывает экран Password health.
Nearby — это бэкап?
Нет. Синхронизирует шифротекст в LAN между спаренными, связанными сейфами устройствами. Держите также офлайн Pro-бэкапы.
Всё ещё не работает?
- Зафиксируйте падающий клиент (app / extension / CLI) и примерное время.
- Проверьте логи сервера (
docker compose logs -f api) и/health. - Сообщайте о проблемах безопасности приватно — [email protected] или private advisory в OpenSelfHosting. См. Безопасность.
- Для багов продукта откройте issue в OpenSelfHosting с именем пакета и версией.
Далее: Nearby · Настройка сервера · Безопасность · Загрузка