Управление файлами KeePass2 при помощи kpcli на сервере Ubuntu 14.04

Published by Leave your thoughts

Один из важнейших моментов при работе в интернете является безопасность. Надёжные уникальные пароли учётных записей имеют очень большое значение для защиты информации и устранения нарушений безопасности.

Время от времени в сети обнаруживаются различные уязвимости (например, HeartBleed, POODLE), и различные компаний, считающиеся надёжными, становятся жертвами взломов. Это приводит к утечке, повреждению или потере информации учётных записей вне зависимости от сложности пароля. Последствия использования одного пароля для разных аккаунтов могут быть гораздо более серьёзными.

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

Как правило, пользователи KeePass2 взаимодействуют с локальной базой данных паролей через графический интерфейс; но в этом руководстве речь пойдёт о том, как создавать и управлять этими файлами в среде сервера. Для этого можно использовать kpcli; это утилита командной строки для создания и редактирования записей и баз данных KeePass.

Загрузка компонентов

Для начала нужно загрузить несколько программ из репозиториев Ubuntu.

Скачайте утилиту kpcli и несколько вспомогательных библиотек, предварительно обновив индекс пакетов apt.

sudo apt-get update
sudo apt-get install kpcli libterm-readline-gnu-perl libdata-password-perl

Теперь все компоненты загружены, и можно переходить к ознакомлению с утилитой.

Начало сессии и начало работы с kpcli

Чтобы запустить интерактивную сессию kpcli, используйте команду:

kpcli

На экране появится командная строка для взаимодействия с пустым файлом базы данных KeePass2. Чтобы просмотреть доступные опции, введите:

help
cd -- Change directory (path to a group)
cl -- Change directory and list entries (cd+ls)
close -- Close the currently opened database
cls -- Clear screen ("clear" command also works)
edit -- Edit an entry: edit <path to entry|entry number>
export -- Export entries to a new KeePass DB (export <file.kdb> [<file.key>])
. . .

Если же у вас уже есть заполненная БД KeePass2, переместите её на сервер при помощи sftp и откройте в сессии:

open password_database.kdbx
Please provide the master password:

Программа запросит пароль администратора БД.

Если же пока что такой БД нет, создайте её:

saveas password_database.kdbx
Please provide the master password:
Retype to verify:

Будет предложено выбрать и подтвердить пароль администратора файла БД KeePass. Этот пароль позволяет защитить другие пароли, потому очень важно не пренебрегать им. Выберите надёжный и уникальный пароль.

Как правило, файлы KeePass2 хранятся с расширением .kdbx, что позволяет обеспечить совместимость между системами.

Итак, теперь у вас есть файл БД, загруженный в сессию kpcli. Что дальше?

Во-первых, если вы проверяли меню справки, вы могли заметить в нём несколько команд, эмулирующих поведение базовых команд *nix. Однако они не работают в файловой системе; они предназначены для структур баз данных.

Введите:

ls
=== Groups ===
eMail/
Internet/

Как видите, БД выла инициализирована с двумя группами, eMail и Internet. KeePass хранит пароли и все связанные с ними данные в структуре entry. Также KeePass имеет структуру groups, которая используются для систематизации записей паролей. В настоящее время есть две группы и ни одной записи.

Чтобы добавить группу, используйте:

mkdir test

Чтобы удалить группу, введите команду:

rmdir test

Создание записей паролей

Попробуйте создать первую запись.

В руководстве будут создаваться пароли для условного домена example.com. Поскольку это сайт, его нужно хранить в группе Internet. Перейдите в эту группу:

cd Internet

Создайте запись:

new
Adding new entry to "/Internet"
Title: example
Username: demo_user

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

Password:                ("g" to generate a password)

Затем нужно указать сам пароль. Если у вас уже есть пароль, который вы хотите использовать, можете просто указать его здесь, после чего будет предложено проверить запись. Если пока что пароля нет, можно просто ввести g, и kpcli сгенерирует надежный пароль самостоятельно.

URL: http://www.example.com
Notes/Comments (""):
(end multi-line input with a single "." on a line)

Затем программа попросит указать URL-адрес сайта, а также предоставит поле для примечаний и комментариев к данному аккаунту.

К примеру, в этом поле можно оставить подсказки для восстановления пароля. Чтобы завершить ввод, нажмите Enter и введите символ точки, а затем нажмите Enter еще раз.

Программа сообщит об изменениях в БД. Чтобы сохранить эти изменения, введите y.

Просмотрите содержимое группы снова.

ls
=== Entries ===
1. example www.example.com

Чтобы сослаться на эту запись, используйте её порядковый номер или имя, которое вы выбрали для неё вначале.

Управление записями

Итак, теперь в сессии есть готовая запись.

Чтобы отредактировать запись, используйте команду edit и вызовите запись по номеру или имени:

edit 0

Программа предоставит все поля записи по порядку, в которых уже содержатся ранее внесённые данные. Чтобы пропустить  значения полей, которые вы хотели бы сохранить без изменений, просто нажмите Enter.

Чтобы просмотреть содержимое записи, используйте команду show:

show 0
Path: /Internet
Title: example
Uname: demo_user
Pass:
URL: http://www.example.com
Notes:

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

Чтобы снять защиту с пароля и увидеть его на экране, используйте флаг –f:

show -f 0
Path: /Internet
Title: example
Uname: demo_user
Pass: _OZ1oMyZiC4ceydUDVvC
URL: http://www.example.com
Notes:

Также можно использовать флаг –а, чтобы получить дополнительные сведения: время создания, последнего изменения и т.п.

Чтобы удалить запись, введите команду:

rm example

Имейте в виду: программа не уточняет, действительно ли необходимо удалить запись. Однако она предложит сохранить изменения; потому, если вы случайно удалить запись, не сохраняйте изменений. После этого можно использовать команду open, чтобы повторно открыть файл.

Чтобы переместить запись в другую группу, используйте команду mv:

mv 0 /eMail/

Чтобы найти запись, введите:

find example
Searching for "example" ...
- 1 matches found and placed into /_found/
Would you like to show this entry? [y/N]

Результаты команды будут доступны в новой группе /_found. Если вам не нужна такая группа, просто удалите её после того как найдёте нужную запись. Это никак не повредит найденным записям.

Дополнительные команды kpcli

Утилита kpcli имеет много дополнительных команд.

Чтобы переименовать группу, введите:

rename Internet
Enter the groups new Title: internet

Проверить надёжность выбранных паролей можно при помощи:

pwck /

Эта команда позволяет рекурсивно проверить все пароли. Кроме того, вы можете проверить пароль для одной записи.

Команда stats предоставляет статистику БД:

stats
KeePass file version: 2
Encryption type:      rijndael
Encryption rounds:    6000
Number of groups:     2
Number of entries:    1
Entries with passwords of length:
- 20+: 1

Чтобы закрыть сессию, сохраните изменения.

save

Чтобы закрыть текущий файл БД, но остаться в сессии kpcli, введите:

close

Чтобы завершить сессию kpcli:

exit

Заключение

Как видите, инструмент kpcli позволяет эффективно взаимодействовать с файлами KeePass2 без помощи графического интерфейса. Теперь вы умеете управлять записями и файлами KeePass2 в серверной среде.

Tags: , ,

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *


*

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>