

Есть два варианта:
1. Иметь 1-2 постоянных пароля. Но, если уведут один пароль -- сразу взломают много ваших аккаунтов.
2. Иметь на каждый сервис свой сложный пароль. Но их невозможно запомнить.
Предлагаю вам воспользоваться PGP / GnuPG (OpenPGP-совместимым) шифрованием, т. е. хранить всего один зашифрованный файл с вашими аккаунтами.
Для этого нам понадобится несколько вещей:
1. Флешка для хранения приватного ключа;Установим pgpgpg.
2. Программа pgpgpg;
3. Небольшой скрипт на bash'е.
[code] # aptitude install pgpgpg [/code]
Генерируем пару ключей.
[code]$ pgpgpg -kg[/code]
Программа предложит выбрать тип ключа. Выбираем первый вариант.
[code] Выберите тип ключа:
(1) DSA и ElGamal (по умолчанию)
(2) DSA (только для подписи)
(5) RSA (только для подписи)
Ваш выбор (?-подробнее)? 1[/code]
Далее, выбираем длину ключа. Чем она больше, тем надёжнее ключ. Мы же суровые линуксойды, потому выбираем по максимому. :)
[code]Какой размер ключа Вам необходим? (2048) 4096 [/code]
Указываем срок действия ключа -- без срока действия.
[code]Выберите срок действия ключа.
0 = без ограничения срока действительности
Ключ действителен до? (0)
Ключ не имеет ограничения срока действительности
Все верно? (y/N)[/code]
Создаём идентификатор пользователя.
[code] Ваше настоящее имя: Sergey Blohin Email-адрес: sblohin@yandex.ru Комментарий: linux administrator [/code]
Если всё верно, то идём дальше. Задаём пароль для приватного ключа. Дальше система сгенерирует пару ключей. Обычно это длится несколько минут.
[code]Сменить (N)Имя, (C)Комментарий, (E)email-адрес или (O)Принять/(Q)Выход?
Для защиты секретного ключа необходим пароль.[/code]
После того, как у нас сгенерированы ключи уже можно ими пользоваться.
Но прежде сохраним их на флешке, ибо, если мы потеряем приватный ключ -- расшифровать наши пароли будет уже невозможно. Для этого надо экспортировать в файл ключи из системы.
[code]$ pgpgpg -kx my_private_pgp_key
$ pgpgpg -kxa my_public_pgp_key[/code]
Копируем оба файла на флешку и удаляем их с компьютера (они всё равно в системном хранилище ключей останутся.
Хранение личных паролей.
Создаём обычный текстовый файл и вписываем в него наши данные аккаунтов.
[code]
$ echo "-e" "yandex.ru yandex_login yandex_password\n" >> "my_pass" 2> "/dev/null"
$ echo "-e" "mail.ru mail_login mail_password\n" >> "my_pass" 2> "/dev/null"
$ echo "-e" "visa_card card_holder pin_code\n" >> "my_pass" 2> "/dev/null"[/code]
Теперь этот текстовый файл надо зашифровать.
Указываем свой e-mail, который мы указывали при создании ключей.
[code]
$ pgpgpg "-e" "my_pass"
Введите User ID. Пустая строка для завершения:[/code]
После шифрования мы получаем 2 файла. Наш исходный my_pass, который уже можно удалить и my_pass.pgp, который и хранит в себе в зашифрованном виде наши пароли.
Как достать ключи из зашифрованного файла.
[code]$ pgpgpg "-d" "my_pass.pgp"[/code]
Вводим пароль ключа и получаем наш исходный my_pass.
Автоматизирование процесса добавления паролей в файл.
Создаём небольшой скрипт.
[code]$ > add-password.bash
$ chmod "+x" "add-password.bash"
$ vim "add-password.bash"[/code]
Внутри файла:
#!/bin/bash<br><br>declare "-r" FILENAME="my_pass"<br>declare "-r" ERR_FILE="/dev/null"<br>declare "-r" SERVICES="$1"<br>declare "-r" USERNAME="$2"<br>declare "-r" PASSWORD="$3"<br>declare "-r" PGP_USER="<a class="linkification-ext" href="mailto:sblohin@yandex.ru" title="Linkification: mailto:sblohin@yandex.ru">sblohin@yandex.ru</a>"<br><br>pgpgpg "-d" "$FILENAME".pgp 2>> "$ERR_FILE"<br>rm "$FILENAME".pgp 2>> "$ERR_FILE"<br>echo "-e" "$SERVICES" "$USERNAME" "$PASSWORD" >> "$FILENAME" 2>> "$ERR_FILE"<br>pgpgpg "-e" "$FILENAME" "$PGP_USER" 2>> "$ERR_FILE"<br>rm "$FILENAME" 2>> "$ERR_FILE"<br><br>echo "-e" "Done"<br>Добавляем аккаунт в файл:
[code]$ add-password.bash yandex.ru yandex_login yandex_password
$ add-password.bash mail.ru mail_login mail_password[/code]
По аналогии и читаем.
#!/bin/bash<br><br>declare "-r" FILENAME="my_pass"<br>declare "-r" ERR_FILE="/dev/null"<br>declare "-r" SERVICES="$1"<br><br>pgpgpg "-d" "$FILENAME".pgp 2>> "$ERR_FILE"<br>cat "$FILENAME" 2>> "$ERR_FILE" | grep "-i" "$SERVICES" 2>> "$ERR_FILE"<br>rm "$FILENAME" 2>> "$ERR_FILE"<br>
Вот и всё. :)
Комментарии (5)
truecrypt избавит от этого лишнего гемороя
truecrypt избавит от этого лишнего гемороя
ну, каждому - своё :) главное, что есть выбор и есть возможность :)
ну, каждому - своё :) главное, что есть выбор и есть возможность :)
Чего делать?
Чего делать?
лучше использовать http://www.keepassx.org/ , если не хватает опыта с консолью. Всё-таки, достойный инструмент :)
лучше использовать http://www.keepassx.org/ , если не хватает опыта с консолью. Всё-таки, достойный инструмент :)
думать головой
думать головой