Следуете ли ли одному из основных принципов надёжности парольной защиты или же используете один и тот же, пусть и «надёжный», пароль? Те, кто чужим или собственным горьким опытом всё-таки пришёл к тому, что хранить все яйца в одной корзине — ой, как не хорошо, сталкиваются с небольшой проблемой. Проблема заключается в том, что фантазии для придумывания сложных паролей редко у кого хватает надолго, особенно если вы решили использовать по одному паролю для каждой учётной записи.
О системных администраторах средних и крупных сетей говорить и вовсе не приходится. Представьте только, каково создать пару сотен учётных записей, выдумывая начальные пароли самостоятельно. Согласен, бред. Однако же, бред и то, как поступают некоторые, количество которых чуть менее, чем все: начальный пароль для всех учётных записей одинаков. «А что делать?» спросят некоторые. Ответ прост: генерировать уникальные пароли приемлемой сложности для каждой создаваемой учётной записи. Чем? Об этом сегодня и поговорим.
Установка
В репозиторяих Ubuntu имеется пакет makepasswd, который и содержит нужное нам благо цивилизации. Установка, как всегда, проста:
sudo apt-get install makepasswd
Интерактивное использование
Часто бывает нужно создать один пароль, например, когда вы регистрируете новую учётную запись на каком-то сайте или создаёте нового пользователя в операционной системе. В это случае обычно достаточно простого вызова makepasswd без параметров:
$ makepasswd
nAiASBXwD
По-умолчанию makepasswd генерирует пароль длиной 8-10 символов, состоящий из английских букв в нижнем и верхнем регистрах, а также цифр.
Если вам нужен пароль другой длины, можно использовать опции --minchars и --maxchars. Например, чтобы сгенерировать пароль длиной в диапазоне от 16 до 32 символов, следует воспользоваться командой:
$ makepasswd --minchars=16 --maxchars=32
1Bvpd208VipcUpSqnIBViyp
В случае, когда вам нужно, чтобы makepasswd генерировала пароли фиксированной длины, используйте опцию --chars:
$ makepasswd --chars=12
y6G74zqTgCWf
Если вам нужно, чтобы созданный пароль состоял лишь из определённых символов, используйте опцию --string:
$ makepasswd --string='0123456789abcdefABCDEF'
ea16bAc37
Также, если вам нужно, makepasswd умеет генерировать более одного пароля за один вызов, если попросить её об этом при помощи параметра --count:
$ makepasswd --count=10
TPTKHU4G
dL1d35sWis
KPnvLxSU
GjtrFMjp
anB6gaCN
qLrdhxj4Bv
TgYdbyxYB
uBALs341m
2K3fajzn2
Qo9H7rEP
Использование в сценариях оболочки
Одной из возможностей makepasswd, которые могут пригодится в повседневной жизни системного администратора, является возможность выводить зашифрованные при помощиcrypt пароли. Для того, чтобы makepasswd вела себя таким образом, необходимо передать ей параметр --crypt при вызове:
$ makepasswd --crypt
eGfIqACF f1Ydu.KUgSrfM
Таким образом получаем удобный способ создавать пользователей в системе и одновременно генерировать им пароли. Остаётся лишь приготовить небольшой скрипт, используя ваши любимые ингредиенты и процесс создания новых пользователей существенно ускорится.