Pwgen — различия между версиями
Andrey (обсуждение | вклад) (→Проверьте свой пароль) |
Andrey (обсуждение | вклад) (→Вариант 2.) |
||
Строка 75: | Строка 75: | ||
===Вариант 2.=== | ===Вариант 2.=== | ||
В командной строке: | В командной строке: | ||
− | echo -n 'любой_текст_который_легко_вспомнить' | md5sum | base64 #команда | + | echo '''-n''' 'любой_текст_который_легко_вспомнить' | md5sum | base64 #команда |
Yjg2YTQ5MTAyYjA4NWE5YjRiNzY4ZWZjOGVkOGE0MDIgIC0K #результат | Yjg2YTQ5MTAyYjA4NWE5YjRiNzY4ZWZjOGVkOGE0MDIgIC0K #результат | ||
''Обратите внимание:'' <br> | ''Обратите внимание:'' <br> | ||
если не используется ключ '''"-n"''', то хеш будет не для пароля '''"любой_текст_который_легко_вспомнить"''', а для "'''''любой_текст_который_легко_вспомнить\n'''''''', т.к. команда '''echo''' по умолчанию добавляет перевод строки '''\n''' <br> | если не используется ключ '''"-n"''', то хеш будет не для пароля '''"любой_текст_который_легко_вспомнить"''', а для "'''''любой_текст_который_легко_вспомнить\n'''''''', т.к. команда '''echo''' по умолчанию добавляет перевод строки '''\n''' <br> | ||
− | Нужно использовать ключ '''"-n"''', что бы не вставлялся перевод строки. | + | Нужно использовать ключ '''"-n"''', что бы не вставлялся перевод строки. |
+ | |||
===Вариант 3.=== | ===Вариант 3.=== | ||
В командной строке: | В командной строке: |
Версия 11:26, 15 августа 2023
Содержание
PWGen
PWGen – это генератор паролей, удовлетворяющий самым высоким требованиям безопасности. Может создавать пароли длиной до 2048 битов, которые можно также сохранить в виде бинарного файла-ключа или в виде диска-ключа, которые можно использовать для шифрования, не оставляя следов. PWGen – бесплатная программа, распространяемая по лицензии GNU General Public License (GPL).
Установка pwgen
sudo apt-get install pwgen
Использование pwgen
Утилита pwgen генерирует случайные (сложные для запоминания) или легкие для восприятия (не такие сложные для запоминания) пароли и может использоваться в диалоговом или пакетном режимах.
По умолчанию pwgen выводит заполненный паролями экран на стандартное устройство вывода. Обычно вам это не нужно, однако может оказаться полезным, если вы (или пользователь) хотите выбрать вводимый вручную пароль для разового использования. По умолчанию при генерировании паролей pwgen будет пытаться вставлять в них прописные буквы и цифры.
Формат использования утилиты pwgen следующий:
pwgen <опции> <длина_пароля> <количество_паролей>
Опции утилиты следующие:
-1 печатать по одному паролю в строке -c пароль должен содержать прописную букву -n пароль должен содержать цифру -0 не использовать цифры при создании пароля -y включить в пароль хотя бы один специальный символ -s случайный пароль, сложный для запоминания -N = количество_паролей -C вывод сгенерированных паролей несколькими столбиками -B пароль не будет содержать буквы, которые можно спутать l L i I 0 O и т.д. -A не включать ЗАГЛАВНЫЕ буквы -v генерировать случайные пароли, которые не содержат гласные или символы, которые с ними можно перепутать
-H, --sha1=/path/to/file[#seed]
Использует sha1 сумму заданного файла и, опционально, фильтр для создания пароля.
Это позволит вам вычислить тот же пароль в будущем, если вы запомните файл, фильтр и используете эту опцию pwgen.
Примеры
pwgen -H ~/your_favorite.mp3#your@email.com даст список возможных паролей для вашего pop3 аккаунта, и вы сможете запрашивать этот список снова и снова.
ОСТОРОЖНО: Пароли, сгенерированные с использованием этой опции не слишком случайны. Если вы используете эту опцию стоит быть уверенным, что злоумышленник не обладает копией файла. Также имейте в виду, что имя файла может быть легко доступно по команде: ~/.history или в файле ~/.bash_history.
Ключи можно объединять. Если мы хотим создать пароль с цифрами, большими буквами и специальными символами, можно ввести:
pwgen -ncy
Напечатать один пароль длиной в 8 символов:
pwgen 8 1 eej3eeZu
Напечатать три пароля длиной в 7 символов с обязательным использованием прописных букв:
pwgen -c 7 3 ohw4Aj7 Pei0obe gaw4De4
Напечатать 10 паролей длиной в 8 символов с обязательным использованием прописных букв и цифр:
pwgen -c -n 8 10 zum5Shei Choo6Eih Ub5uagei Ooxu6ohs Eix9xeip iV4yoeph Io3aeGhe taiTh6ia cuere1AW phai9Pai
Pwgen определяет, вызываете ли вы ее через tty или нет. В последнем случае, если не указаны дополнительные опции, по умолчанию будет сгенерирован один пароль. Это облегчает написание сценариев в тех случаях, когда вам необходимо сохранять значения в переменных, как показано ниже:
pass=$(pwgen) echo $pass ohtherah
Если хотите, вы можете использовать обратные апострофы для подстановки команды – результат будет тем же:
pass=`pwgen` echo $pass oowahxei
Конечно, мы можем сгенерировать столько паролей, сколько захотим. В следующем примере генерируются три пароля:
pass=$(pwgen -c -n 8 3) echo $pass EluBie0z thohku0W Ail3fu3z
Чтобы напечатать по-настоящему произвольный пароль из восьми символов, используйте следующую команду:
pwgen -s 8 1 9bTzZxt9
При использовании опции генерации случайного пароля (как в приведённом выше примере) необходимо обратить внимание на то, что такие пароли чрезвычайно сложно запомнить, и обычно пользователи записывают их на листочке.
Ещё несколько вариантов создания паролей.
Вариант 1.
В командной строке:
echo 'любой_текст_который_легко_вспомнить' | md5sum | base64 #команда YWRiNWM2OWYwMjAwMTFjNzQ3MGM2NThiOWEwM2ExYTYgIC0K #результат
Вариант 2.
В командной строке:
echo -n 'любой_текст_который_легко_вспомнить' | md5sum | base64 #команда Yjg2YTQ5MTAyYjA4NWE5YjRiNzY4ZWZjOGVkOGE0MDIgIC0K #результат
Обратите внимание:
если не используется ключ "-n", то хеш будет не для пароля "любой_текст_который_легко_вспомнить", а для "любой_текст_который_легко_вспомнить\n''', т.к. команда echo по умолчанию добавляет перевод строки \n
Нужно использовать ключ "-n", что бы не вставлялся перевод строки.
Вариант 3.
В командной строке:
echo -n 'любой_текст_который_легко_вспомнить' | md5sum | base64 | head -c 30 #команда Yjg2YTQ5MTAyYjA4NWE5 #результат
head -c 30 - выводит суму из первых двадцати символов
Вариант 4.
В командной строке:
echo "любой_текст_который_легко_вспомнить" | md5sum | cut -d " " -f1 | base64 #команда YWRiNWM2OWYwMjAwMTFjNzQ3MGM2NThiOWEwM2ExYTYK #результат
Вариант 5.
В командной строке:
echo "password" | md5sum | cut -d " " -f1 | base64 | tr -d "password" #команда Mjg2NzU1ZmFkMDQ4NjljYTUyMzMyMGFjY2UZGM2YTQK #результат
Таким образом мы удаляем из результата все символы, которые содержаться в оригинальной фразе.
Вариант 6.
В командной строке:
echo "password" | sha1sum | cut -d " " -f1 | base64 | tr -d "password=" #команда YzhmZWQMGViMmU4N2YxY2VlOGU5MGViYmU4NzBjMTkYWMzODQ4Y #результат
Символ "=" - это специальный суффикс, который обычно добавляется при кодировании в Base64, и я его убираю.
Вариант 7.
Использование двух ключевых фраз.
В командной строке:
echo "password" | md5sum | cut -d " " -f1 | base64 | tr -d "MySecret=" #команда jg2NzU1ZmFkDQ4NjljYTUzGFjY2UwZG2YTQK #результат
Во всех перечисленных вариантах можно заменить md5sum на sha1sum, или sha256sum, или sha512sum.
Проверьте свой пароль
Проверить насколько надёжный получился пароль можно тут