Как изменить / отключить проверку сложности пароля при смене пароля?

48

Я знаю, что это «плохая» идея, я знаю, что она небезопасна, я знаю. Я искал в сети ответ, и все, что я видел, было нытье, что это не хорошо. Но мне нравится использовать Linux, потому что он позволяет мне создавать системы, которые я хочу и хотел бы использовать. Конец вступления.

Я пытаюсь сменить пароль:

ruslan:~% passwd
Changing password for ruslan.
(current) UNIX password:
Enter new UNIX password:
Retype new UNIX password:
You must choose a longer password

Если я попробую, sudo passwd ruslanто смогу установить любой пароль, который мне нужен, поэтому мне не нужны проверки сложности пароля для passwd в моей системе.

После поиска в Google я обнаружил, что должен быть модуль PAM pam_cracklib, который проверяет сложность пароля и его можно настроить. Но мои настройки пароля PAM не включают pam_cracklib:

% cat /etc/pam.d/passwd | grep '^[^#]'
@include common-password
% cat /etc/pam.d/common-password | grep '^[^#]'
password    [success=1 default=ignore]  pam_unix.so obscure sha512
password    requisite           pam_deny.so
password    required            pam_permit.so
password    optional    pam_gnome_keyring.so 

Я думаю, что pam_unix делает этот тест ... Упс ... Ребята, в тот момент, когда я закончил писать это предложение, у меня появилось просветление и я набрал man pam_unixв терминале, где я нашел необходимые опции для модуля pam_unix.

Я просто удалил опцию затемнения и добавил minlen = 1, и теперь я счастлив. Так что теперь у меня есть эта строка в /etc/pam.d/common-password:

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

и я могу установить любой пароль, который я хочу.

Я решил оставить этот пост для людей, которым тоже может понадобиться это решение. Извините и спасибо.

rslnx
источник
Я не могу ответить на свой вопрос в течение 8 часов после того, как спросил, буду ждать :)
rslnx
Я просто хотел изменить свой pwd на 123. Не смог сделать это с помощью passwd. Попробовал "sudo passwd <user_name>", и это сработало как шарм. Не нуждался в отдыхе мумий-юмбо. Спасибо за эту часть! :)
zeFree
@zeFree, ключевой момент моего решения - позволить любому пользователю (не имеющему разрешения sudo) использовать простые пароли
rslnx
1
Отличное вступление. У меня есть ноутбук с Windows, который тратит 50% циклов процессора, защищая меня от вирусов. Угадай, что? Не нужно никаких вирусов. Компьютер уже ничего не стоит. Итак ... Linux позволяет нам делать то, что мы хотим. Я за брандмауэром, и компьютер не покидает мой дом. Короткий пароль? Да, пожалуйста.
Джавадба
@rslnx Я думаю, что когда вы публикуете свой вопрос, это дает вам возможность дать ответ немедленно; Я думаю, что 8-часовая задержка
возможна

Ответы:

53

Хорошо, я отвечу на мой вопрос :)

Я обнаружил, что pam_unixмодуль выполняет проверку сложности пароля, и его можно настроить.

man pam_unix:

   minlen=n
       Set a minimum password length of n characters. The default value is
       6. The maximum for DES crypt-based passwords is 8 characters.

   obscure
       Enable some extra checks on password strength. These checks are
       based on the "obscure" checks in the original shadow package. The
       behavior is similar to the pam_cracklib module, but for
       non-dictionary-based checks.

Решение:
измените строку в pam_unixмодуле в /etc/pam.d/common-passwordфайле:

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

Позволяет установить любой пароль с минимальной длиной 1.

rslnx
источник
Связанные сведения о сложности пароля: askubuntu.com/questions/244115/…
Кевин Боуэн
11

Если это один раз, используя команду passwd от имени пользователя root, вы можете установить простой пароль для пользователя, просто введя желаемое значение.

sudo su && passwd username

и затем введите пароль два раза в подсказках.

sweetfa
источник
1
Он имеет в виду, что sudo su && passwd usernameтогда Linux позволит вам использовать любой пароль, который вы захотите.
пользователь
7

Откройте файл конфигурации общего пароля для редактирования

sudo gedit /etc/pam.d/common-password

Прокомментируйте эту строку:

#password   [success=2 default=ignore]  pam_unix.so obscure use_authtok try_first_pass sha512

Также прокомментируйте эту строку, в противном случае установка пароля попросит вас передать комбинацию прописных и строчных букв:

#password   requisite           pam_passwdqc.so enforce=everyone max=18 min=disabled,8,8,1,1 retry=2 similar=deny

Теперь просто добавьте эту строку в тот же файл:

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

это должно сделать это ...

rptr87
источник
К вашему сведению, в моей установке по умолчанию сервера 14.04 нет строки pam_passwdqc.so. Может быть, кто-то (админ?) Добавил это специально? ;)
Томофуми