Hej igen! Redan imorgon börjar lektionerna i den nya gruppen av kursen , dÀrför publicerar vi en anvÀndbar artikel i Àmnet.

I den föregÄende handledningen berÀttade vi hur man anvÀnder pam_cracklib, för att komplicera lösenord i systemen eller CentOS. I Red Hat 7 pam_pwquality har ersatt cracklib som pam som standardmodul för lösenordsvalidering. Modulen pam_pwquality stöds Àven i Ubuntu och CentOS, samt i mÄnga andra operativsystem. Denna modul förenklar skapandet av lösenordspolicyer för att sÀkerstÀlla att anvÀndare accepterar dina sÀkerhetsstandarder för lösenordskomplexitet.
Under en lÄng tid har den vanliga metoden för lösenord varit att tvinga anvÀndare att anvÀnda bÄde stora och smÄ bokstÀver, siffror eller andra tecken. Dessa grundlÀggande regler för lösenordskomplexitet har aktivt propagandats de senaste tio Ären. Det har varit mycket diskussioner om detta Àr en bra praxis eller inte. Huvudargumentet mot att införa sÄdana komplicerade krav var att anvÀndare skriver ner sina lösenord pÄ papper och lagrar dem osÀkert.
En annan policy som nyligen har ifrÄgasatts tvingar anvÀndare att Àndra sina lösenord var x:e dag. Det har genomförts viss forskning som har visat att detta ocksÄ skadar sÀkerheten.
Det har skrivits mÄnga artiklar om dessa diskussioner som har motiverat den ena eller den andra Äsikten. Men det Àr inte vad vi kommer att diskutera i denna artikel. Denna artikel kommer att handla om hur man korrekt stÀller in lösenordskomplexitet, inte om hur man hanterar sÀkerhetspolicyer.
InstÀllningar för lösenordspolicyn
Nedan ser du instÀllningarna för lösenordspolicyn och en kort beskrivning av var och en av dem. MÄnga av dem liknar instÀllningarna i modulen cracklib. Denna metod förenklar porteringen av dina policys frÄn det gamla systemet.
- difok â Antalet tecken i ditt nya lösenord som INTE fĂ„r finnas i ditt gamla lösenord. (Standard 5)
- minlen â Minimalt lösenords lĂ€ngd. (Standard 9)
- ucredit â Maximalt antal poĂ€ng för anvĂ€ndning av stora bokstĂ€ver (om parametern > 0), eller minimiantalet stora bokstĂ€ver som krĂ€vs (om parametern < 0). Standard 1.
- lcredit â Det högsta antalet krediter för anvĂ€ndning av smĂ„ bokstĂ€ver (om parametern > 0), eller det minimi krav pĂ„ smĂ„ bokstĂ€ver (om parametern < 0). Som standard Ă€r det 1.
- dcredit â Det högsta antalet krediter för anvĂ€ndning av siffror (om parametern > 0), eller det minimi krav pĂ„ siffror (om parametern < 0). Som standard Ă€r det 1.
- ocredit â Det högsta antalet krediter för anvĂ€ndning av andra tecken (om parametern > 0), eller det minimi krav pĂ„ andra tecken (om parametern < 0). Som standard Ă€r det 1.
- minclass â Anger det erforderliga antalet klasser. Klasserna inkluderar ovanstĂ„ende parametrar (stora bokstĂ€ver, smĂ„ bokstĂ€ver, siffror, andra tecken). Som standard Ă€r det 0.
- maxrepeat â Det högsta antalet upprepningar av ett tecken i lösenordet. Som standard Ă€r det 0.
- maxclassrepeat â Det högsta antalet pĂ„ varandra följande tecken i en klass. Som standard Ă€r det 0.
- gecoscheck â Kontrollerar om lösenordet innehĂ„ller nĂ„gra ord frĂ„n anvĂ€ndarens GECOS-strĂ€ngar. (AnvĂ€ndarinformation, dvs. riktiga namnet, plats osv.) Som standard Ă€r det 0 (avstĂ€ngt).
- dictpath â SökvĂ€g till cracklib-ordlistor.
- badwords â Mellanrum-separerade ord som Ă€r förbjudna i lösenord (företagsnamn, ordet 'lösenord' osv.).
Om begreppet krediter lÄter konstigt, Àr det helt okej. Vi kommer att prata mer om detta i kommande avsnitt.
Konfiguration av lösenordspolicy
Innan du börjar redigera konfigurationsfiler Àr det en bra praxis att skriftligt registrera den grundlÀggande lösenordspolicyn. Till exempel, vi kommer att anvÀnda följande komplexitetsregler:
- Lösenordet mÄste ha en minimi lÀngd pÄ 15 tecken.
- I lösenordet fÄr samma tecken inte upprepas mer Àn tvÄ gÄnger.
- Teckenkategorierna i lösenordet kan upprepas upp till fyra gÄnger.
- Lösenordet mÄste innehÄlla tecken frÄn varje kategori.
- Det nya lösenordet mÄste ha 5 nya tecken jÀmfört med det gamla.
- Aktivera GECOS-kontroll.
- Förbjuda orden 'password, pass, word, putorius'
Nu, nÀr vi har redogjort för policyn, kan vi redigera filen /etc/security/pwquality.conf, för att stÀrka kraven pÄ lösenordskomplexitet. Nedan Àr ett exempel pÄ filen med kommentarer för bÀttre förstÄelse.
# 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 putoriusSom du kanske har mÀrkt, Àr vissa parametrar i vÄr fil överflödiga. Till exempel, parameter minclass Àr överflödig eftersom vi redan anvÀnder minst tvÄ tecken frÄn klassen med hjÀlp av fÀlten [u,l,d,o]credit. VÄr lista över ord som inte kan anvÀndas Àr ocksÄ överflödig eftersom vi har förbjudit att upprepa nÄgon klass 4 gÄnger (alla ord pÄ vÄr lista skrivs med smÄ bokstÀver). Jag har inkluderat dessa parametrar bara för att demonstrera hur man anvÀnder dem för att anpassa lösenordspolicyn.
SÄ snart du har skapat din policy kan du tvinga anvÀndare att byta sina lösenord vid nÀsta inloggning i .
En annan konstig sak som du kanske har noterat Àr att fÀlten [u,l,d,o]credit innehÄller ett negativt tal. Detta beror pÄ att nummer som Àr större eller lika med 0 ger kredit för att anvÀnda en symbol i ditt lösenord. Om fÀltet innehÄller ett negativt tal betyder det att ett visst antal krÀvs.
Vad Àr krediter (credit)?
Jag kallar dem krediter eftersom det bÀst beskriver deras syfte. Om parameter vÀrdet Àr större Àn 0 lÀgger du till antalet "symbolkrediter" lika med "x" till lösenordets lÀngd. Till exempel, om alla parametrar (u,l,d,o)credit Àr instÀllda pÄ 1 och den erforderliga lösenordslÀngden var 6, behöver du 6 tecken för att uppfylla lÀngdkravet eftersom varje stort tecken, litet tecken, siffra eller annan symbol ger dig en kredit.
Om du stÀller in dcredit till 2 kan du teoretiskt anvÀnda ett lösenord med en lÀngd av 9 tecken och fÄ 2 symbolkrediter för siffror, vilket gör att lösenordets lÀngd kan vara 10.
Titta pÄ det hÀr exemplet. Jag stÀllde in lösenordslÀngden till 13, stÀllde dcredit till 2, och allt annat till 0.
$ pwscore
Thisistwelve
Lösenords kvalitetstest misslyckades:
Lösenordet Àr kortare Àn 13 tecken
$ pwscore
Th1sistwelve
18Min första kontroll misslyckades eftersom lösenordets lÀngd var mindre Àn 13 tecken. NÀsta gÄng Àndrade jag bokstaven "I" till siffran "1" och fick tvÄ krediter för siffror, vilket gjorde att lösenordet blev 13.
Lösenordstestning
Paket libpwquality fungerar enligt beskrivningen i artikeln. Det levereras ocksÄ med programmet pwscore, som Àr avsedd för att kontrollera lösenordets komplexitet. Vi anvÀnde det ovan, för att kontrollera krediter.
Verktyg pwscore lÀser frÄn . Bara kör verktyget och skriv ditt lösenord, det ger ett felmeddelande eller ett vÀrde frÄn 0 till 100.
Kvalitetsindikatorn för lösenord relaterar till parametern minlen i konfigurationsfilen. Generellt betraktas ett poÀng under 50 som "ett normalt lösenord", medan ett poÀng över 50 ses som "ett starkt lösenord". Varje lösenord som klarar kvalitetskontroller (sÀrskilt obligatorisk kontroll cracklib) bör stÄ emot ordlistattacker, och ett lösenord med poÀng över 50 med standardinstÀllningen minlen till och med bruteforce attacker.
Slutsats
InstÀllning pwquality Àr enkelt och smidigt jÀmfört med besvÀren med att anvÀnda cracklib genom att redigera filer direkt. pamI denna guide har vi gÄtt igenom allt du behöver veta för att stÀlla in lösenordspolicyer i Red Hat 7, CentOS 7 och Àven Ubuntu-system. Vi har ocksÄ diskuterat begreppet krediter, som sÀllan skrivs om i detalj, sÄ detta Àmne har ofta förblivit oklart för dem som inte har stött pÄ det tidigare.
KĂ€llor:
Nyttiga lÀnkar:
KĂ€lla: habr.com
