Jak ustawić wymagania (takie jak minimalna długość) dla haseł?


18

Czy jest jakiś sposób, aby ustawić minimalne wymagania dotyczące hasła, takie jak minimalna długość, wymóg alfanumerycznych znaków mieszanych i co najmniej 1 symbol w haśle, i wymuszać to przy zmianie hasła?

Odpowiedzi:


21

Złożoność haseł w Ubuntu jest kontrolowana przez PAM. Niestety, PAM jest „typowo uniksowy” jak w swoim podejściu. Oznacza to, że rozprzestrzenia swoją konfigurację przez dużą liczbę bardzo mylących plików.

Plik sterujący złożonością hasła to:

/etc/pam.d/common-password

Jest linia:

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

Który określa podstawowe zasady dotyczące złożoności hasła. Możesz dodać korektę długości minimalnej, zmieniając ją na:

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

lub cokolwiek minimum chcesz. Jak widać, wartość domyślna już definiuje podstawowe zasady zaciemnienia. Te podstawowe zasady można zobaczyć w:

man pam_unix

Wyszukaj „niejasne”.

Istnieje wiele modułów pam, które można zainstalować.

apt-cache search libpam-

Powinien ci je pokazać.

Obawiam się, że będziesz musiał znaleźć dla nich dokumentację. Ale „cracklib” jest popularnym dodatkiem.

AKTUALIZACJA: Powinienem zauważyć, że domyślny parametr „niejasny” obejmuje testy złożoności oparte na poprzednich hasłach i prostocie (długość, liczba różnych typów znaków). Przykład na stronie man pokazuje cracklib w akcji. Zainstaluj libpam_cracklib, aby działało.

Ponadto po ustaleniu, co należy zmienić, zmiany są takie same w innych plikach, dzięki czemu można wymusić takie same (lub inne) sprawdzanie hasła dla SSH i innych aplikacji.


Zgodnie z tym man pam_unix, domyślna minimalna długość hasła to 6 znaków podczas wyszukiwania minlen.
Timo,

to nie działa na Ubuntu 18.04 - nawet przy tym ustawieniu mogę podać dowolne hasło (krótkie, palindrom, ..) - Muszę tylko powtórzyć takie hasło 4x :(
xhudik

Kiedy mówisz „nie działa”, nie jest jasne, co masz na myśli. Czy to znaczy, że ma pracę, ale że powtarzając krótki hasła 4 razy jest pewnego rodzaju „obwodnicy” - jeśli tak, to z szacunkiem, nie masz racji, że jest nadal silny hasło. W przeciwnym razie czy mógłbyś wyjaśnić?
Julian Knight

1

Wartości haseł są kontrolowane w pliku

/etc/pam.d/common-password

Więcej informacji na temat modyfikowania pliku znajduje się na stronie pam_unix


1
Wymieniłeś pam_unix (5), poprawna strona to pam_unix (8) linux.die.net/man/8/pam_unix . W rzeczywistości internetowe wersje strony podręcznika z jakiegoś powodu wydają się nie zawierać ważnej sekcji parametru „niejasnego” - tej, którą zawarłem w mojej odpowiedzi. Jeśli to zrobisz man pam_unix, będziesz w stanie to zobaczyć.
Julian Knight

1
@JulianKnight Dzięki za komentarz. Naprawiłem link :)
Mitch

1

Wstępnie zainstalowane moduły PAM pozwalają skonfigurować podstawowe wymagania w świetle złożoności. Jest ładny moduł będący następcą modułu pam_cracklib - pam_pwquality. Aby zainstalować, wpisz następujące polecenie

apt-get install libpam-pwquality

następnie zapoznaj się z tym

man pam_pwquality

szczególnie z sekcją „Opcje”.

Teraz możesz edytować wspólne hasło w /etc/pam.d/

vi /etc/pam.d/common-password

znajdź wiersz zawierający następującą instrukcję „wymagane hasło pam_pwquality.so”, a po pam_pwquality. więc dołącz swoje opcje w ten sposób

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

co oznacza „minimalny rozmiar hasła to 16 znaków, przy czym minimum 4 z nich to wielkie litery. Pytaj użytkownika o hasło 3 razy.

pam_pwquality pozwala na znacznie bardziej złożone wymagania dotyczące hasła w połączeniu z innymi modułami, takimi jak pam_pwhistory. Powodzenia

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.