Salutami di novu! E classi in u novu gruppu di corsi cumincianu dumani
In u tutoriale precedente avemu dettu cumu utilizà pam_cracklib
per fà e password in i sistemi più cumplessi pam_pwquality
rimpiazzatu cracklib
cum'è pam
modulu predeterminatu per verificà e password. Modulu pam_pwquality
supportatu ancu in Ubuntu è CentOS, è ancu in parechji altri OS. Stu modulu facilita a creazione di pulitiche di password per assicurà chì l'utilizatori accettanu i vostri standard di forza di password.
Per un bellu pezzu, l'approcciu cumuni di password era di furzà l'utilizatori à utilizà maiuscule, minuscule, numeri, o altri simboli. Queste regule basiche per a cumplessità di password sò state largamente prumuvute in l'ultimi deci anni. Ci hè statu assai discussione nantu à s'ellu hè una bona pratica o micca. L'argumentu principalu contru à stabilisce tali cundizioni cumplessi era chì l'utilizatori scrivenu password nantu à pezzi di carta è l'almacenà in modu inseguru.
Un'altra pulitica chì hè stata recentemente chjamata in quistione forza l'utilizatori à cambià e so password ogni x ghjorni. Ci sò stati qualchi studii chì anu dimustratu chì questu hè ancu preghjudiziu à a sicurità.
Molti articuli sò stati scritti nantu à u tema di sti discussioni, chì sustene un puntu di vista o un altru. Ma questu ùn hè micca ciò chì avemu da discutiri in questu articulu. Questu articulu parlerà di cumu stabilisce a cumplessità di a password in modu correttu invece di gestisce a pulitica di sicurezza.
Paràmetri di pulitica di password
Sottu vi vede l'opzioni di pulitica di password è una breve descrizzione di ognunu. Parechji di elli sò simili à i paràmetri in u modulu cracklib
. Stu approcciu rende più faciule per portà e vostre pulitiche da u sistema legatu.
- difok - U numeru di caratteri in a vostra nova password chì ùn deve esse presente in a vostra vechja password. (Default 5)
- minlen - Lunghezza minima di password. (Default 9)
- ucreditu - U numeru massimu di crediti per l'usu di caratteri maiusculi (se paràmetru > 0), o u numeru minimu necessariu di caratteri maiusculi (se paràmetru < 0). Predeterminatu hè 1.
- creditu — U numeru massimu di crediti per l'usu di caratteri minusculi (se paràmetru > 0), o u numeru minimu necessariu di caratteri minusculi (se paràmetru < 0). Predeterminatu hè 1.
- dcreditu - U numeru massimu di crediti per l'usu di cifre (se paràmetru > 0), o u numeru minimu necessariu di cifre (se paràmetru < 0). Predeterminatu hè 1.
- ocreditu - U numeru massimu di crediti per l'usu di altri simboli (se paràmetru > 0), o u numeru minimu necessariu di altri simboli (se paràmetru < 0). Predeterminatu hè 1.
- minclass - Definisce u numeru di classi necessariu. E classi includenu i paràmetri sopra (caratteri maiusculi, caratteri minusculi, numeri, altri caratteri). Default hè 0.
- maxrepeat - U numeru massimu di volte chì un caratteru pò esse ripetutu in una password. Default hè 0.
- maxclassrepeat - U numeru massimu di caratteri consecutivi in una classe. Default hè 0.
- gecoscheck - Verifica se a password cuntene qualchì parolla da e stringhe GECOS di l'utilizatore. (Informazioni di l'utilizatori, vale à dì u veru nome, locu, etc.) Default hè 0 (off).
- dittaru – Andemu à i dizionari cracklib.
- badwords - Parolle separate da u spaziu chì sò pruibiti in password (Nome di a cumpagnia, a parolla "password", etc.).
Se u cuncettu di prestiti sona stranu, hè bè, hè normale. Parlaremu di più nantu à questu in e seguenti sezzioni.
Cunfigurazione di a pulitica di password
Prima di cumincià à edità i schedarii di cunfigurazione, hè una bona pratica per scrive una pulitica di password di basa in anticipu. Per esempiu, avemu aduprà e seguenti reguli di difficultà:
- A password deve avè una lunghezza minima di 15 caratteri.
- U listessu caratteru ùn deve esse ripetutu più di duie volte in a password.
- I classi di caratteri ponu esse ripetuti finu à quattru volte in una password.
- A password deve cuntene caratteri di ogni classa.
- A nova password deve avè 5 caratteri novi cumparatu cù u vechju.
- Abilita a verificazione GECOS.
- Proibite e parolle "password, pass, word, putorius"
Avà chì avemu stabilitu a pulitica, pudemu edità u schedariu /etc/security/pwquality.conf
per aumentà i requisiti di cumplessità di password. Quì sottu hè un schedariu d'esempiu cù cumenti per capisce megliu.
# Make sure 5 characters in new password are new compared to old password
difok = 5
# Set the minimum length acceptable for new passwords
minlen = 15
# Require at least 2 digits
dcredit = -2
# Require at least 2 upper case letters
ucredit = -2
# Require at least 2 lower case letters
lcredit = -2
# Require at least 2 special characters (non-alphanumeric)
ocredit = -2
# Require a character from every class (upper, lower, digit, other)
minclass = 4
# Only allow each character to be repeated twice, avoid things like LLL
maxrepeat = 2
# Only allow a class to be repeated 4 times
maxclassrepeat = 4
# Check user information (Real name, etc) to ensure it is not used in password
gecoscheck = 1
# Leave default dictionary path
dictpath =
# Forbid the following words in passwords
badwords = password pass word putorius
Comu pudete avè nutatu, certi paràmetri in u nostru schedariu sò redundant. Per esempiu, u paràmetru minclass
hè redundante postu chì avemu digià utilizatu almenu dui caratteri da a classa utilizendu campi [u,l,d,o]credit
. A nostra lista di parolle chì ùn ponu micca esse aduprate hè ancu redundante, postu chì avemu pruibitu di ripetiri ogni classa 4 volte (tutte e parolle in a nostra lista sò scritte in caratteri minusculi). Aghju inclusu queste opzioni solu per dimustrà cumu aduprà per cunfigurà a vostra pulitica di password.
Una volta chì avete creatu a vostra pulitica, pudete furzà l'utilizatori à cambià e so password a prossima volta chì accedenu.
Un'altra cosa strana chì pudete avè nutatu hè chì i campi [u,l,d,o]credit
cuntene un numeru negativu. Questu hè chì i numeri più grande o uguali à 0 daranu creditu per aduprà u caratteru in a vostra password. Se u campu cuntene un numeru negativu, significa chì una certa quantità hè necessaria.
Chì sò i prestiti?
Li chjamu prestiti perchè chì trasmette u so scopu u più precisamente pussibule. Se u valore di u paràmetru hè più grande di 0, aghjunghje un numeru di "crediti di caratteri" uguali à "x" à a lunghezza di password. Per esempiu, se tutti i paràmetri (u,l,d,o)credit
stabilitu à 1 è a lunghezza di password necessaria era 6, allora avete bisognu di 6 caratteri per suddisfà u requisitu di lunghezza perchè ogni maiuscule, minuscule, cifru o altru caratteru vi darà un creditu.
Se installate dcredit
à 2, pudete teoricamente aduprà una password chì hè di 9 caratteri è uttene crediti di caratteri 2 per i numeri, è allora a lunghezza di a password puderia esse digià 10.
Fighjate stu esempiu. Aghju stabilitu a lunghezza di a password à 13, stabilitu dcredit à 2, è tuttu u restu à 0.
$ pwscore
Thisistwelve
Password quality check failed:
The password is shorter than 13 characters
$ pwscore
Th1sistwelve
18
U mo primu cuntrollu hà fiascatu perchè a password era menu di 13 caratteri. A prossima volta aghju cambiatu a lettera "I" à u numeru "1" è hà ricevutu dui crediti per i numeri, chì facenu a password uguale à 13.
Test di password
Poney libpwquality
furnisce a funziunalità descritta in l'articulu. Veni ancu cù un prugramma pwscore
, chì hè pensatu per verificà a cumplessità di password. L'avemu utilizatu sopra per verificà i prestiti.
Utilità pwscore
leghje da
U puntu di qualità di password hè in relazione cù u paràmetru minlen
in u schedariu di cunfigurazione. In generale, un puntuatu di menu di 50 hè cunsideratu "password normale", è un puntuatu sopra hè cunsideratu "password forte". Ogni password chì passa cuntrolli di qualità (in particulare verificazione forzata cracklib
) deve resiste à attacchi di dizziunariu, è una password cù un puntuatu sopra 50 cù u paràmetru minlen
ancu per difettu brute force
attacchi.
cunchiusioni
cutter pwquality
- hè faciule è simplice paragunatu à l'inconveniente di l'usu cracklib
cù editazione diretta di u schedariu pam
. In questa guida, avemu cupertu tuttu ciò chì avete bisognu quandu stabilisce e pulitiche di password in Red Hat 7, CentOS 7, è ancu i sistemi Ubuntu. Avemu ancu parlatu di u cuncettu di prestiti, chì raramente hè scrittu in dettagliu, cusì stu tema spessu ùn era micca chjaru à quelli chì ùn avianu micca scontru prima.
Sources:
Ligami utili:
Source: www.habr.com