Як ви встановлюєте вимоги (наприклад, мінімальна довжина) для паролів?


18

Чи є спосіб встановити мінімальні вимоги пароля, такі як мінімальна довжина, вимога буквено-цифрових значень змішаного регістру та принаймні 1 символ у коді пароля та застосувати це при зміні пароля?

Відповіді:


21

Складність пароля в Ubuntu контролюється PAM. На жаль, PAM є "типово Unix", як у своєму підході. Це означає, що вона поширює свою конфігурацію через велику кількість дуже заплутаних файлів.

Файл, що контролює складність пароля:

/etc/pam.d/common-password

Є рядок:

password [success=1 default=ignore] pam_unix.so obscure sha512

Що визначає основні правила складності пароля. Ви можете додати заміщення мінімальної довжини, змінивши його на:

password [success=1 default=ignore] pam_unix.so obscure sha512 minlen=12

або будь-який мінімум, який ви хочете. Як бачимо, за замовчуванням вже визначено деякі основні правила незрозумілості. Ці основні правила можна побачити в:

man pam_unix

Шукати "незрозуміле".

Існує велика кількість модулів пам’яті, які можна встановити.

apt-cache search libpam-

Слід показати вам їх.

Вам потрібно буде відшукати документацію на них, боюся. Але "cracklib" - це звичайне доповнення.

ОНОВЛЕННЯ: Я мав би зазначити, що параметр «незрозумілий» за замовчуванням включає тести на складність на основі попередніх паролів та простоти (довжина, кількість різних типів символів). Приклад на маніпуляції показує cracklib в дії. Встановіть libpam_cracklib, щоб це працювало.

Крім того, після того, як ви відпрацювали, що потрібно змінити, зміни будуть однаковими в інших файлах, щоб ви могли застосувати однакові (або різні) перевірки паролів для SSH та інших програм.


Відповідно man pam_unix, мінімальна довжина пароля за замовчуванням становить 6 знаків, якщо ви шукаєте minlen.
Тимо

це не працює для ubuntu 18.04 - навіть при такому налаштуванні я можу поставити будь-який пароль, який я хочу (короткий, паліндром, ..) - мені просто потрібно повторити такий пароль 4x :(
xhudik

Коли ви говорите "не працює", не ясно, що ви маєте на увазі. Ви хочете сказати , що це дійсно працює , але що повторенні короткий пароль 4 рази це свого роду «обхід» - якщо так, то з повагою, ви не праві, що по - , як і раніше сильний код доступу. Інакше ви могли б уточнити?
Джуліан Найт

1

Значення пароля контролюються у файлі

/etc/pam.d/common-password

Для отримання додаткової інформації про те, як змінити файл, див. Сторінку пам_unix


1
Ви перерахували pam_unix (5), правильна сторінка - pam_unix (8) linux.die.net/man/8/pam_unix . Насправді, в Інтернет-версіях сторінки, чомусь, схоже, не перелічено важливий розділ щодо "незрозумілого" параметра - той, який я включив у свою відповідь. Якщо ви зробите це man pam_unix, ви зможете побачити це.
Джуліан Найт

1
@JulianKnight Дякую за коментар. Я зафіксував посилання :)
Мітч

1

Попередньо встановлені модулі PAM дозволяють задавати основні вимоги у світлі складності. Є приємний модуль, який є наступником модуля pam_cracklib - pam_pwquality. Щоб встановити його, введіть наступне

apt-get install libpam-pwquality

потім ознайомтеся з цим

man pam_pwquality

особливо з розділом "Параметри".

Тепер ви можете редагувати загальний пароль у /etc/pam.d/

vi /etc/pam.d/common-password

знайдіть рядок, який містить наступний вислів "необхідний пароль pam_pwquality.so", а після pam_pwquality.so додайте такі параметри, як цей

password        requisite         pam_pwquality.so minlen=16 ucredit=-4 retry=3

що означає "мінімальний розмір пароля - 16 символів, де мінімум 4 з них є великими літерами. Запрошуйте користувача ввести пароль 3 рази.

pam_pwquality дозволяє зробити набагато складніші вимоги до пароля в поєднанні з іншими модулями, такими як pam_pwhistory. Удачі

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.