суббота, 14 января 2017 г.

Linux - автоматически изменяемый пароль по заранее заданному алгоритму на пользователя


Не секрет для любого администратора, что практически постоянно на ваш любимый сервер, кто то "стучится" пытаясь получить доступ например по ssh. Безусловно существует масса специализированных пакетов для защиты от такого рода атак, например не безызвестный fail2ban. Но всегда есть доля "паранойи" в таких случаях и я например не являюсь исключением. Поэтому и написал скрипт, который постоянно автоматически генерирует новый пароль для заданного пользователя или пользователей по только вам известному алгоритму.
Как правило все пароли имеют какие то знакомые слова или словосочетания, но если внедрить в такой пароль некое число или числа появляющиеся там в определенный промежуток времени и каждый раз разные, то подбор значительно усложняется, что явно неудобно тем кто ищет вход к Вам...  Алгоритм как правило удобно привязывать ко времени, а вот результат расчета можно импровизировать как вам угодно, вплоть до неких внешних данных о которых можете знать только вы. Я покажу тут скрипт, который рабочий, на языке bash. Алгоритм в нем расчета пароля максимально простой, если вам необходимо усложнить, то просто измените получение пароля как вы посчитаете необходимым. После этого вставьте исполнение в службу crontab и все, в заданный вами период времени пароль будет меняться автоматически...

Пример скрипта:

 #!/bin/bash
 ## the automatic password generation script 
 tdate=$(echo $(($(date +%d)+$(date +%H)))); 
 newpass=( "$tdate""mynewpass1\n"
          "$tdate""mynewpass2\n" );
 logins=( "user1"
          "user2" );
 for ((gen_i=0; gen_i != ${#logins[@]}; gen_i++))
  do
 echo -e ${newpass[$gen_i]}${newpass[$gen_i]}| passwd -q ${logins[$gen_i]} 2>/dev/null;
 done
В скрипте суммируется дата и час, после чего значение ставится перед заданным словосочетанием получается новый пароль каждый час из числа и слова. Можно комбинировать множеством значений числа прибавляя еще какие нибудь числа и вставляя в разные участки вашего пароля...

Комментариев нет:

Отправить комментарий