Сильный пароль должен содержать не менее 14 символов, включая по крайней мере один специальный символ, один цифровой символ, одну заглавную и строчную букву.
Что еще более важно, пароли не должны быть легко предсказуемыми и не должны основываться на словарных словах.
Некоторые нетехнические люди, однако, не поймут или не заботятся о безопасности.
Они будут продолжать использовать легко предсказуемые пароли, такие как pass123, welcome123, Welcome @ 1 и т.д.,которые можно легко сломать несколькими попытками.
Кроме того, они не изменят пароли на века.
Как безопасника, ваша работа заключается в обеспечении надежной политики паролей для защиты ваших систем от атак на основе словарей и брутфорса..
В этом кратком руководстве вы узнаете, как заставить пользователей использовать надежные пароли в дистрибутивах на основе DEB, таких как Debian, Ubuntu, Linux Mint и т. д., Используя подключаемые модули аутентификации (PAM).
Я проверил это руководство в версии Ubuntu 16.04 LTS.
Хотя инструкции, опубликованные здесь, одинаковы для Debian и других дистрибутивов Debian и Ubuntu, таких как Linux Mint, Elementary OS и т.д.
Заставить пользователей использовать сильные пароли в Debian, Ubuntu, Linux Mint
PAM устанавливается по умолчанию в системах на основе DEB.
Однако вам необходимо установить дополнительный модуль libpam-cracklib.
Для этого запустите следующую команду из терминала:
# sudo apt-get install libpam-cracklib
В системах на основе DEB политики паролей определяются в файле /etc/pam.d/common-password.
Перед внесением любых изменений создайте резервную копию этого файла.
# sudo cp /etc/pam.d/common-password / home / sk /
Теперь отредактируйте файл /etc/pam.d/common-password:
# sudo nano /etc/pam.d/common-password
Найдите следующую строку и отредактируйте или измените ее, как показано ниже.
password required pam_cracklib.so try_first_pass retry=3 minlen=12 lcredit=1 ucredit=1 dcredit=2 ocredit=1 difok=2 reject_username
Давайте разберем эту строку и посмотрим, что делает каждый вариант.
- retry = N – максимальное количество попыток смены пароля. N указывает номер. По умолчанию используется значение 1.
- minlen = N – определить максимальную оценку сложности. Обратите внимание, что это не максимальное количество символов в пароле, а суммарная оценка пароля. Простыми словами, оценка сложности будет возрастать для каждого
- type (в верхнем, нижнем регистре, специальных символов и т. д.) символы в пароле.
- lcredit = N – определить максимальный кредит для ввода строчных букв в пароле. Значение по умолчанию – 1.
- ucredit = N – определить максимальное число для ввода заглавных букв в пароле. Значение по умолчанию – 1.
- dcredit = N – определить максимальный кредит для ввода цифр в пароле. Значение по умолчанию – 1.
- ocredit = N – определить максимальный кредит для хранения других символов в пароле. Значение по умолчанию – 1.
- difok = N – Определить количество символов, которые должны отличаться от предыдущего пароля.
- reject_username – запретить пользователям использовать свое имя в качестве пароля.
Надеюсь, вы получили базовое представление о вышеуказанных параметрах.
Как определено в вышеприведенном файле, пользователи теперь могут использовать пароль с оценкой сложности пароля 12.
Тем не менее, вы можете отключить кредиты, назначив отрицательные значения и заставить пользователя использовать комбинацию разных символов с минимальной длиной.
password required pam_cracklib.so minlen=8 lcredit=-1 ucredit=-1 dcredit=-2 ocredit=-1 difok=2 reject_username
Как определено выше, пользователи должны использовать пароль длиной 8 символов, включая 1 строчную букву, 1 прописную букву, 2 цифры и 1 другой символ.
Обратите внимание, что эти ограничения применяются для обычных пользователей, но не для пользователя root.
Пользователь root может использовать любой тип пароля.