Небольшое уточнение
С момента выпуска статьи прошло много времени. Как приложение, так и расширение уже обновились, стали быстрее и красивее. Но логика работы не изменилась. Так что статья всё еще актуальна.
Немного истории и как я пришел к использованию Bitwarden
Году так в 20 я начал задумываться о парольном менеджере. И дело было не в безопасности, а я просто стал забывать пароли. На тот момент я пользовался Яндекс браузером и там в списке расширений был LastPass. Я его установил и пользовался для автозаполнения на компьютере. Затем они ввели ограничения на устройства в бесплатном варианте.
Я попытался перейти на KeePass (в том числе KeePassXC), но он мне не понравился. Пользовался не совсем официальным Enpass, потом попробовал SafeInCloud. Купил его, но были некоторые проблемы с лицензией. Кроме того, мне нужна была возможность делиться паролями. И вот, я обратил внимание на Bitwarden. Но держать свои данные на чужом сервере не особо хотел, а у меня был свой сервер. И я установил Vaultwarden (у нас есть инструкция по установке - Установка Vaultwarden).
Вне зависимости от того, используете вы официальный вариант, или свой сервер - в обоих случаях не забывайте о создании резервных копий!
Вам необязательно запускать свой сервер. Это лишь мои личные заскоки.
Критерии выбора решения
Платные решения меня избаловали, и мне уже было необходимо, чтобы мой новый менеджер поддерживал большинство уже базовых для меня функций:
- Поддержка вложений (добавлять скриншоты, документы, текстовые файлы к записям);
- Был доступен на всех моих устройствах;
- Должен быть бесплатный, либо с возможностью приобрести LifeTime (вечную) лицензию;
- Поддерживал возможности двухфакторной аутентификации для записей;
- Данные должны храниться у меня локально, либо на моем сервере, к которому я имею прямой доступ.
Абсолютно всем этим критериям удовлетворял Bitwarden. Ну а теперь главное - переходим к опыту использования.
Опыт использования на компьютере
1, Регистрация на сайтах
В процессе регистрации я просто нажимаю на иконку менеджера паролей, открываю раздел "Генератор" и создаю новый пароль:
Можно создать пароль и через меню ПКМ (правая кнопка мыши):
Существуют еще разные комбинации клавиш для заполнения, но иконка сверху мне как-то более привычна. Да и я сразу могу задать настройки для нового пароля.
2. Авторизация на сайтах
Недавно разработчики выпустили обновление и добавили всплывающие окна с вашими записям:
Это очень удобно особенно для тех сайтов, где для авторизации открывается отдельное окно. Пример такого сайта - Рамблер. Можно автозаполнить через ПКМ или как обычно - через иконку:
По какой-то причине Bitwarden очень плохо работает с автозаполнением одноразовых (TOTP) кодов. Заполнение сработает корректн не всегда. Возможно, в США или других странах дела с этим обстоят получше, так как Bitwarden в первую очередь проверяется на их сайтах.
3. Сохранение введённых данных
После регистрации на каком-нибудь сайте, расширение предложит вам сохранить пароль в своей базе:
Вы можете выполнить сохранение вручную, нажав на иконку расширения и нажав на кнопку плюса:
Если вы находитесь на каком-нибудь сайте, то расширение подставит URL этого сайта само. Но если вы решите скопировать URL сами, то окно расширения закроется и все введенные вами данные слетят (если они не были сохранены).
Решение: выведите расширение в отдельное окно, нажав на иконку квадрата со стрелочкой:
В этом случае окно откроется как отдельное приложение и не будет закрываться.
4. Редактирование записей
Вы можете прямо через расширение отредактировать записи. Тут особых вопросов нет, все происходит быстро:
На всякий случай предлагаю выполнять синхронизацию после внесённых изменений в разделе Настройки - Хранилище - Синхронизация.
5. Мелочи, а приятно
! При входе на сайт, если у вас есть сохраненные записи для этого сайта, расширение покажет их количество, добавив цифру около иконки:
Расширение должно быть разблокировано. Иначе не покажет.
! Расширение работает с Passkey (ключи доступа) и притворяется ключом FIDO 2:
Для входа достаточно будет ввести пароль/пинкод или приложить палец. Смотря как вы настроили расширение.
! Если вы настраиваете двухфакторную аутентификацию на сайте и вам надо отсканировать QR-код, то в расширении откройте нужную запись и нажмите на иконку камеры:
Расширение определит QR-код на странице и автоматически его добавит к записи. Только не забудьте сохранить изменения. Это очень удобно, рекомендую.
Опыт использования на телефоне
Окно мобильного приложения поделено на 4 части:
- Хранилище - основной раздел. В нем вы сможете увидеть все ваши записи, заметки и.т.д;
- Send - Это возможность безопасно делиться файлами (указывать доступ по паролю, открывать доступ на время, ограничивать количество скачиваний) и так далее;
- Генератор - генератор паролей. Точно такой же, как и в расширении.
- Настройки - обычные настройки приложения.
Если у вас в хранилище есть записи, в которых вы добавили двухфакторную аутентификацию (TOTP), то все записи с TOTP будут отображены в разделе "Коды подтверждения". Это аутентификатор, например, как Google Authenticator.
1. Авторизация на сайтах
Если вы выдали приложению все необходимые права, то приложение будет определять окна для ввода логина и пароля и у вас появится небольшое окно Bitwarden:
Конечно, вам нужно будет пройти авторизацию по пин-коду или биометрии (сканер отпечатка, сканирование лица). Если у записи есть TOTP - он будет скопирован в буфер обмена.
Приложение совершенно спокойно интегрируется и в клавиатуру (В моем случае - Gboard). При авторизации в приложениях, bitwarden часто определяет поля как на сайтах, или если не определит - он появится в виде кнопки на клавиатуре (часто они появляются вместе):
Кстати, если приложение не обнаружило запись, но она есть, в базе, то вы можете её найти. И при автозаполнении можно нажать на кнопку "Заполнить и сохранить":
После этого в запись добавится строка с приложением и в дальнейшем он будет понимать, что для именно этого приложения нужно показывать именно эту запись.
2. Редактирование записей
Процесс добавления новых записей такой же, как и в приложении. Разработчики придерживаются одного и того же концепта во всех своих приложениях и расширениях:
Снизу, в пункте "Владелец" можно указать, кто именно будет владельцем записи. Забегая наперёд скажу, что вы можете создать "организации" и через них делиться паролями. Например, если у вас есть аккаунт, которым пользуется вся семья или коллеги по работе.
По редактированию записей мне добавить нечего, там все точно так же, как и в расширении или где-либо еще. Переходим сразу к удалению записей.
3. Удаление записей
Вот удаление записей сделано неудобно, и это очень большой минус. Представим, что у вас есть несколько записей, которые надо удалить одновременно. Вы не можете это сделать. Нужно обязательно открыть каждую запись, открыть контекстное меню и нажать на кнопку "Удалить" (первый скриншот);
Запись отправится в корзину. Если вы в корзине попробуете удалить запись, не открывая её - не получится. Надо обязательно открыть запись и удалить её. И так надо проходиться по каждой записи. В процессе удаления, приложение немного подвисает.
Первый и третий скриншот - это разные скриншоты, но выглядят одинаково. Третий скриншот сделан уже непосредственно в корзине. И это может запутать.
4. Функционал приложения
Функционал приложения крайне ограничен и очень сильно уступает веб-сайту. Вот каких возможностей нет в приложении:
- Возможность проверить все записи на утечку;
- Выделение нужных элементов и групповое удаление;
- Возможность проверить записи с одинаковыми паролями;
И несколько других функций. Справедливости ради стоит уточнить, что этим функционалом я часто не пользовался. Только первые дни. В основном мне нужно автозаполнение и возможность сохранять/редактировать записи. Этот функционал есть.
5. Скорость работы
Приложение под IOS и Android написаны на языке Xamarin от Microsoft. Как рассказали недавно разработчики, этот язык был выбран не случайно. Он был хорошо известен разработчику и позволял поддерживать работу Bitwarden в течение длительного времени, так как этот язык позволяет не писать под каждую платформу отдельное приложение. Язык универсален и работает сразу везде.
Но, к сожалению, это повлияло на работу приложения. Если сравнивать Bitwarden с другими аналогами, то работает он медленнее, чем конкуренты. Разработчики уже сейчас переписывают приложения под Swift и Kotlin (нативные для платформ) языки. И вот они работают куда быстрее. А вот несколько скриншотов новой версии:
Разработчики решили придерживаться той же концепции, но будут менять визуальную составляющую и ускорять работу приложения.
Веб-версия Bitwarden
Раз уж мы говорим про Bitwarden, то я не могу не упомянуть веб-версию менеджера паролей. Это основа, на которой все держится. В недавнем обновлении разработчики поменяли дизайн сайта и теперь весь основной функционал находится слева:
Пункты так же поделены на категории, но больше всего интересуют отчеты. О них я писал выше, в функционале мобильного ПО. Все вот эти пункты доступны на сайте (ну, почти):
К сожалению, раздел "Утечка данных" не работает без токена от HIBP. А токен этот платный. Так что, этот пункт пропускаем:
Управление организациями разработчики перенесли. Теперь надо нажать на квадрат и выбрать пункт "Admin console". После этого вы переключитесь в режим управления организацией:
На самом деле рассказать про веб-версию мне больше и нечего. Она чаще всего нужна в начале, когда вы переносите базу в Bitwarden. В дальнейшем я туда захожу раз в месяц, чтобы что-нибудь проверить. А вот про организации надо поговорить отдельно.
Организации и работа с ними
1. Коллекции и организации
Bitwarden - онлайн менеджер паролей, он работает на сервере. А, значит, поддерживает расшаривание паролей между пользователями. Происходит это методом создания организаций.
В каждой организации есть коллекции. Как раз через них вы сможете настроить групповой доступ к паролям. При добавлении пользователя в организацию, вы сразу сможете настроить для него доступ к коллекциям:
Представим, что у вас есть две коллекции: "Работа" и "Семья".
Вы хотите дать коллеге по работе доступ к паролям из коллекции "Работа", а брату доступ к паролям из коллекции "Семья".
Вам нужно будет пригласить обоих пользователей в организацию и настроить для них доступ.
Для брата выбираете коллекцию "Семья", даете нужные права. Для коллеги выбираете коллекцию "Работа" и даете права. Всё
После этого, даже учитывая, что оба пользователя находятся в одной организации, ваш коллега не будет иметь доступа к коллекции "Семья", а брат не будет иметь доступ к коллекции "Работа"
Можно настроить не только таким образом, но и добавить несколько администраторов. Все как вам нужно.
2. Добавление элементов в коллекцию
Чтобы добавить элементы в организацию, нужно будет выделить их, затем открыть контекстное меню и выбрать пункт "Переместить выбранное в организацию":
Останется выбрать коллекцию и нажать на кнопку подтверждения. Но, обратно просто так вы записи этим из коллекции не вытащите. Почему-то разработчики такой функционал не реализовали. Будет доступно только удаление:
На самом деле это не удобно и я надеюсь, что этот недочет поправят.
Решения тут два:
- Сделать экспорт записей из организации и импортировать их в нужный профиль;
- Сделать дублирование записей и выбрать владельца при их сохранении.
Экспорт записей из профилей и из организаций выполняется отдельно. Если вы в настройках своего профиля сделаете экспорт, то данные из вашей организации экспортированы не будут!
3. Правила домена
Это глобальная настройка, но доступна она только в веб-версии. Вы сможете указать несколько доменов и указать, что у них используются общие данные авторизации:
Представим, что у вас есть три сайта: site1, site2, site3. У них используется одна общая учетная запись (как у Google с YouTube, Gmail, Maps итд).
Вы указываете site1, site2, site3 и сохраняете изменения. После этого Bitwarden будет понимать, что это один сайт.
Дальше вы создаете запись и указываете в нём адрес site3. А затем просто заходите на site2. Менеджер будет знать, куда вы зашли.
Безопасность хранилища
Когда речь идет об онлайн менеджере паролей, двухфакторная аутентификация становится строго обязательной и это не обсуждается. Двухфакторная аутентификация - единственное, что будет вас защищать даже в том случае, если пароль к вашему хранилищу подберут. Bitwarden дает несколько вариантов для безопасности:
- Приложение-аутентификатор - нужно будет ввести одноразовый код после ввода пароля доступа к хранилищу;
- YubiKey - возможность проходить авторизацию через аппаратный ключ YubiKey (физический) с помощью NFC, или сканера отпечатка на нём;
- DUO - авторизация с помощью звонка, смс (никогда не пользовался);
- FIDO - возможность авторизации через аппаратный ключ с поддержкой FIDO.
- Email - подтверждение входа через сообщение по электронной почте;
Я использую обычный аутентификатор, который установлен на моем устройстве. Каждый раз, после ввода логина и пароля потребуется ввести одноразовый код, который создается каждые 30 секунд.
Итог
Конечно, у Bitwarden есть минусы. И их довольно много. Но все минусы перекрываются тремя самыми главными преимуществами:
- Цена. Это самый очевидный плюс. Если точнее, то Bitwarden бесплатный. В случае использования своего сервера вы платите только за сам сервер (ну или если поставить официальный пакет, то и за доп. функционал, который мало кому бывает нужен);
- Опенсорс. Код открытый, менеджер проходит частые аудиты безопасности;
- Доступность. Bitwarden в прямом смысле доступен везде. В расширениях браузера, на мобильных платформах, в консоли (CLI);
Минусы решения:
- Дизайн UX/UI. Приложение выглядит устаревшим. Большинство возможностей отсутствует. Даже сортировка.
- Скорость работы. Из-за языка Xamarin, приложение работает медленнее, чем у конкурентов;
- Автозаполнение TOTP. Работает оно крайне плохо, в большинстве случаев приходится копировать TOTP вручную.
Если вы находитесь в поисках расширения для хранения паролей - присмотритесь. Вдруг вам понравится. Как минимум два первых минуса уже скоро должны поправить. Поддержка у менеджера очень хорошая и он развивается не по дням, а по часам.