Здравствуйте! Почти три часа проэкспериментировал с модулем, результаты не слишком утешительны. Чтобы разобраться с логикой работы модуля, пришлось заглянуть в
исходный код, и эта логика оказалась весьма своеобразной. В проверке учитываются значения по умолчанию (нули), например, такой вариант настроек:
minPoints 1
useCracklib 0
minUpper 4
по факту превращается в такой:
minPoints 1
useCracklib 0
minUpper 4
minLower 0
minDigit 0
minPunct 0
Проверка пароля происходит посимвольно, и если символ попадает в заданную категорию, то от целочисленного значения, заданного в качестве условия для этой категории символов, отнимается единица. Если полученное в результате значение меньше единицы, то условие по данной категории символов считается выполненным. А поскольку минимальная длина пароля -- 6 символов (тоже заложено в коде), то, с учётом проверок значений по умолчанию (ноль всегда меньше единицы), под эти настройки подходят, практически, любые пароли. Например, для пароля
AAbb11 проверка завершится уже на третьем символе, поскольку совпадёт условия для букв в нижнем регистре, и этого будет достаточно, чтобы пароль считался "правильным" (minPoints 1).
Возможных выходов тут два: либо поиграться с параметрами (см. ниже), чтобы найти приемленый для себя вариант, либо переписать логику работы модуля, так, чтобы она Вас устраивала, взяв за основу имеющийся исходник.
Под такой вариант параметров:
minPoints 3
useCracklib 0
minUpper 3
minLower 3
minDigit 1
minPunct 1
подойдут пароли AAAaaa1 AAAaaa_ AAAaa_1 Aaaaa_1 AAAA_1 aaaa_1
В общем, подобрать "оптимальный" набор параметров можно.
Егор