Nggawe Kebijakan Sandi ing Linux

Halo maneh! Kelas ing grup kursus anyar diwiwiti sesuk "Linux Administrator", ing babagan iki, kita nerbitake artikel sing migunani babagan topik kasebut.

Nggawe Kebijakan Sandi ing Linux

Ing tutorial sadurunge, kita ngandhani carane nggunakake pam_cracklibkanggo nggawe sandhi ing sistem luwih rumit Topi Abang 6 utawa CentOS. Ing Red Hat 7 pam_pwquality diganti cracklib minangka pam modul standar kanggo mriksa sandhi. Modul pam_pwquality uga didhukung ing Ubuntu lan CentOS, uga akeh OS liyane. Modul iki nggampangake nggawe kabijakan sandhi kanggo mesthekake yen pangguna nampa standar kekuatan sandi.

Kanggo wektu sing suwe, pendekatan umum kanggo tembung sandhi yaiku kanggo meksa pangguna nggunakake huruf gedhe, huruf cilik, angka, utawa simbol liyane. Aturan dhasar kanggo kerumitan tembung sandhi iki wis akeh dipromosikan sajrone sepuluh taun kepungkur. Ana akeh diskusi babagan apa iki praktik apik utawa ora. Argumentasi utama kanggo nyetel kahanan sing rumit yaiku pangguna nulis sandhi ing kertas lan nyimpen kanthi ora aman.

Kabijakan liyane sing bubar ditakokake meksa pangguna ngganti tembung sandhi saben dina x. Ana sawetara panaliten sing nuduhake manawa iki uga mbebayani kanggo safety.

Akeh artikel sing wis ditulis babagan topik diskusi iki, sing ndhukung siji utawa liyane sudut pandang. Nanging iki dudu sing bakal kita bahas ing artikel iki. Artikel iki bakal ngomong babagan carane nyetel kerumitan sandhi kanthi bener tinimbang ngatur kabijakan keamanan.

Setelan Kebijakan Sandi

Ing ngisor iki sampeyan bakal bisa ndeleng opsi kabijakan sandhi lan katrangan ringkes saben. Akeh sing padha karo paramèter ing modul kasebut cracklib. Pendekatan iki nggampangake port kabijakan sampeyan saka sistem warisan.

  • Nuwun sewu – Jumlah karakter ing sandi anyar sing ngirim ora ana ing sandi lawas. (Default 5)
  • minlen – dawa sandi minimal. (Default 9)
  • ucredit – Jumlah kridit maksimal kanggo nggunakake karakter huruf gedhe (yen parameter > 0), utawa jumlah minimal karakter huruf gedhe sing dibutuhake (yen parameter < 0). Default yaiku 1.
  • kredit β€” Jumlah kridit maksimal kanggo nggunakake karakter huruf cilik (yen parameter > 0), utawa jumlah minimal karakter huruf cilik sing dibutuhake (yen parameter < 0). Default yaiku 1.
  • kredit β€” Jumlah maksimum kridit kanggo nggunakake digit (yen parameter > 0), utawa nomer minimal sing dibutuhake digit (yen parameter < 0). Default yaiku 1.
  • dheweke pracaya β€” Jumlah maksimum kridit kanggo nggunakake simbol liyane (yen parameter > 0), utawa nomer minimal dibutuhake simbol liyane (yen parameter < 0). Default yaiku 1.
  • kelas min - Nyetel jumlah kelas sing dibutuhake. Kelas kalebu paramΓ¨ter ing ndhuwur (karakter gedhe, karakter cilik, angka, karakter liyane). Default yaiku 0.
  • maxrepeat – Jumlah maksimum kaping karakter bisa bola ing sandi. Default yaiku 0.
  • maxclassrepeat - Jumlah maksimum karakter consecutive ing siji kelas. Default yaiku 0.
  • gecoscheck – Priksa manawa tembung sandhi ngemot tembung saka senar GECOS pangguna. (Informasi pangguna, yaiku jeneng asli, lokasi, lsp.) Default yaiku 0 (mati).
  • dictpath – Ayo menyang kamus cracklib.
  • badwords - Tembung sing dipisahake spasi sing dilarang ing sandhi (Jeneng perusahaan, tembung "sandi", lsp).

Nek konsep utangan kok aneh-aneh ya ora apa-apa, lumrah. Kita bakal ngomong luwih lengkap babagan iki ing bagean ing ngisor iki.

Konfigurasi Kebijakan Sandi

Sadurunge miwiti nyunting file konfigurasi, luwih becik nulis kabijakan sandhi dhasar sadurunge. Contone, kita bakal nggunakake aturan kangelan ing ngisor iki:

  • Tembung sandhi kudu dawane minimal 15 karakter.
  • Karakter sing padha ora kudu diulang luwih saka kaping pindho ing sandhi.
  • Kelas karakter bisa diulang nganti kaping papat ing sandhi.
  • Tembung sandhi kudu ngemot karakter saka saben kelas.
  • Tembung sandhi anyar kudu duwe 5 karakter anyar dibandhingake karo sing lawas.
  • Aktifake mriksa GECOS.
  • Larang tembung "sandi, pass, tembung, putorius"

Saiki kita wis nyetel kabijakan, kita bisa ngowahi file kasebut /etc/security/pwquality.confkanggo nambah syarat kerumitan sandi. Ing ngisor iki minangka conto file kanthi komentar kanggo pangerten sing luwih apik.

# 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

Kaya sing sampeyan ngerteni, sawetara paramèter ing file kita keluwih. Contone, parameter minclass keluwih amarga kita wis nggunakake paling ora rong karakter saka kelas nggunakake kolom [u,l,d,o]credit. Dhaptar tembung sing ora bisa digunakake uga keluwih, amarga kita wis nglarang mbaleni kelas 4 kaping (kabeh tembung ing dhaptar ditulis nganggo aksara cilik). Aku wis kalebu pilihan iki mung kanggo nduduhake carane nggunakake kanggo ngatur kabijakan sandi.
Sawise nggawe kabijakan sampeyan, sampeyan bisa meksa pangguna kanggo ngganti tembung sandhi nalika mlebu log. sistem.

Bab aneh liyane sing bisa dingerteni yaiku sawah [u,l,d,o]credit ngemot nomer negatif. Iki amarga nomer luwih saka utawa padha karo 0 bakal menehi kredit kanggo nggunakake karakter ing sandi. Yen kolom kasebut ngemot nomer negatif, tegese jumlah tartamtu dibutuhake.

Apa utangan?

Aku nyebat dheweke utangan amarga menehi tujuane kanthi akurat. Yen nilai parameter luwih saka 0, sampeyan nambahake sawetara "kredit karakter" padha karo "x" kanggo dawa sandi. Contone, yen kabeh paramèter (u,l,d,o)credit disetel kanggo 1 lan dawa sandi dibutuhake 6, banjur sampeyan kudu 6 karakter kanggo gawe marem requirement dawa amarga saben huruf gedhe, cilik, digit utawa karakter liyane bakal menehi siji kredit.

Yen sampeyan nginstal dcredit ing 2, sampeyan bisa kanthi teori nggunakake tembung sandhi sing dawane 9 karakter lan entuk 2 kridit karakter kanggo nomer, banjur dawa tembung sandhi bisa uga 10.

Deleng conto iki. Aku nyetel dawa sandi kanggo 13, nyetel dcredit kanggo 2, lan kabeh liyane kanggo 0.

$ pwscore
 Thisistwelve
 Password quality check failed:
  The password is shorter than 13 characters

$ pwscore
 Th1sistwelve
 18

Priksa pisanan gagal amarga tembung sandhi kurang saka 13 karakter. Sabanjure aku ngganti huruf "I" dadi nomer "1" lan nampa rong kridit kanggo nomer kasebut, sing nggawe tembung sandhi padha karo 13.

Tes sandhi

Paket libpwquality nyedhiyakake fungsi sing diterangake ing artikel kasebut. Iku uga nerangake karo program pwscore, sing dirancang kanggo mriksa kerumitan tembung sandhi. Kita digunakake ing ndhuwur kanggo mriksa silihan.
Utilitas pwscore maca saka stdin. Mung mbukak sarana lan nulis sandhi, bakal nampilake kesalahan utawa nilai saka 0 nganti 100.

Skor kualitas sandi ana gandhengane karo parameter kasebut minlen ing file konfigurasi. UmumΓ©, skor kurang saka 50 dianggep minangka "sandi normal", lan skor ing ndhuwur dianggep minangka "sandi kuwat". Tembung sandhi apa wae sing ngliwati pemeriksaan kualitas (utamane verifikasi paksa cracklib) kudu tahan serangan kamus, lan sandi karo skor ndhuwur 50 karo setelan minlen malah kanthi gawan brute force serangan.

kesimpulan

imbuhan pwquality - iku gampang lan prasaja dibandhingake karo ora nyaman saka nggunakake cracklib karo editing file langsung pam. Ing pandhuan iki, kita wis nyakup kabeh sing dibutuhake nalika nyetel kabijakan sandhi ing Red Hat 7, CentOS 7, lan uga sistem Ubuntu. Kita uga ngomong babagan konsep silihan, sing jarang ditulis kanthi rinci, mula topik iki asring tetep ora jelas kanggo wong-wong sing durung nate nemoni.

Sumber:

kaca wong pwquality
pam_pwquality man page
kaca wong pwscore

Link migunani:

Milih Sandi Aman - Bruce Schneier
Lorrie Faith Cranor mbahas sinau sandi ing CMU
Kartun xkcd Kesuwur ing Entropi

Source: www.habr.com

Add a comment