БъздаванС Π½Π° ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° Π·Π° ΠΏΠ°Ρ€ΠΎΠ»ΠΈ Π² Linux

Π—Π΄Ρ€Π°Π²Π΅ΠΉΡ‚Π΅ ΠΎΡ‚Π½ΠΎΠ²ΠΎ! Π£Ρ‚Ρ€Π΅ Π·Π°ΠΏΠΎΡ‡Π²Π°Ρ‚ занятията Π² Π½ΠΎΠ²Π°Ρ‚Π° Π³Ρ€ΡƒΠΏΠ° Π½Π° курса "Администратор Linux", ΠΏΠΎΡ€Π°Π΄ΠΈ ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°ΠΌΠ΅ ΠΏΠΎΠ»Π΅Π·Π½Π° статия ΠΏΠΎ Ρ‚Π΅ΠΌΠ°Ρ‚Π°.

БъздаванС Π½Π° ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° Π·Π° ΠΏΠ°Ρ€ΠΎΠ»ΠΈ Π² Linux

Π’ ΠΏΡ€Π΅Π΄ΠΈΡˆΠ½ΠΈΡ tutorial обяснихмС ΠΊΠ°ΠΊ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ pam_cracklib, Π·Π° Π΄Π° услоТнитС ΠΏΠ°Ρ€ΠΎΠ»ΠΈΡ‚Π΅ Π² систСмитС Red Hat 6 ΠΈΠ»ΠΈ CentOS. Π’ Red Hat 7 pam_pwquality Π·Π°ΠΌΠ΅Π½ΠΈ cracklib Π² качСството Π½Π° pam ΠΌΠΎΠ΄ΡƒΠ»Π° ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ Π·Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΠΏΠ°Ρ€ΠΎΠ»ΠΈ. ΠœΠΎΠ΄ΡƒΠ»ΡŠΡ‚ pam_pwquality ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° сС ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° Π² Ubuntu ΠΈ CentOS, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ Π² ΠΌΠ½ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΈ ОБ. Π’ΠΎΠ·ΠΈ ΠΌΠΎΠ΄ΡƒΠ» опростява ΡΡŠΠ·Π΄Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ Π·Π° ΠΏΠ°Ρ€ΠΎΠ»ΠΈ, Π·Π° Π΄Π° сС ΡƒΠ²Π΅Ρ€ΠΈΡ‚Π΅, Ρ‡Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ спазват Π²Π°ΡˆΠΈΡ‚Π΅ стандарти Π·Π° слоТност Π½Π° ΠΏΠ°Ρ€ΠΎΠ»ΠΈΡ‚Π΅.

Π”ΡŠΠ»Π³ΠΎ Π²Ρ€Π΅ΠΌΠ΅ обичайният ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ към ΠΏΠ°Ρ€ΠΎΠ»ΠΈΡ‚Π΅ бСшС Π΄Π° Π½Π°ΠΊΠ°Ρ€Π°Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π² тях символи с Π³Π»Π°Π²Π½Π° ΠΈ ΠΌΠ°Π»ΠΊΠ° Π±ΡƒΠΊΠ²Π°, Ρ†ΠΈΡ„Ρ€ΠΈ ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ символи. Π’Π΅Π·ΠΈ основни ΠΏΡ€Π°Π²ΠΈΠ»Π° Π·Π° слоТност Π½Π° ΠΏΠ°Ρ€ΠΎΠ»ΠΈΡ‚Π΅ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ сС ΠΏΡ€ΠΎΠΏΠ°Π³Π°Π½Π΄ΠΈΡ€Π°Ρ‚ ΠΏΡ€Π΅Π· послСднитС дСсСт Π³ΠΎΠ΄ΠΈΠ½ΠΈ. ИмашС ΠΌΠ½ΠΎΠ³ΠΎ дискусии ΠΏΠΎ Π²ΡŠΠΏΡ€ΠΎΡΠ°, Π΄Π°Π»ΠΈ Ρ‚ΠΎΠ²Π° Π΅ Π΄ΠΎΠ±Ρ€Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° ΠΈΠ»ΠΈ Π½Π΅. ΠžΡΠ½ΠΎΠ²Π½ΠΈΡΡ‚ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ ΠΏΡ€ΠΎΡ‚ΠΈΠ² Π²ΡŠΠ²Π΅ΠΆΠ΄Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ слоТни условия бСшС, Ρ‡Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ записват ΠΏΠ°Ρ€ΠΎΠ»ΠΈΡ‚Π΅ си Π½Π° хартия ΠΈ Π³ΠΈ ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ‚ нСбСзопасно.

Π”Ρ€ΡƒΠ³Π° ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ°, която наскоро бСшС поставСна ΠΏΠΎΠ΄ съмнСниС, Π΅ Π·Π°Π΄ΡŠΠ»ΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ Π΄Π° промСнят ΠΏΠ°Ρ€ΠΎΠ»ΠΈΡ‚Π΅ си Π½Π° всСки x Π΄Π½ΠΈ. ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈ са някои изслСдвания, ΠΊΠΎΠΈΡ‚ΠΎ ΠΏΠΎΠΊΠ°Π·Π²Π°Ρ‚, Ρ‡Π΅ Ρ‚ΠΎΠ²Π° ΡΡŠΡ‰ΠΎ Π²Ρ€Π΅Π΄ΠΈ Π½Π° сигурността.

По Ρ‚Π΅ΠΌΠ°Ρ‚Π° Π½Π° Ρ‚Π΅Π·ΠΈ дискусии са написани мноТСство статии, ΠΊΠΎΠΈΡ‚ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€Π°Ρ‚ Ρ‚Π°Π·ΠΈ ΠΈΠ»ΠΈ ΠΎΠ½Π°Π·ΠΈ Π³Π»Π΅Π΄Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ°. Но Ρ‚ΠΎΠ²Π° Π½Π΅ Π΅ Ρ‚Π΅ΠΌΠ°Ρ‚Π°, която Ρ‰Π΅ обсъдим Π² Ρ‚Π°Π·ΠΈ статия. Π’Π°Π·ΠΈ статия Ρ‰Π΅ Ρ€Π°Π·Π³Π»Π΅Π΄Π° ΠΊΠ°ΠΊ ΠΊΠΎΡ€Π΅ΠΊΡ‚Π½ΠΎ Π΄Π° Π·Π°Π΄Π°Π΄Π΅Ρ‚Π΅ слоТността Π½Π° ΠΏΠ°Ρ€ΠΎΠ»ΠΈΡ‚Π΅, Π° Π½Π΅ Π΄Π° управляватС ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ°Ρ‚Π° Π·Π° сигурност.

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ Π½Π° ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈΡ‚Π΅ Π·Π° ΠΏΠ°Ρ€ΠΎΠ»ΠΈ

По-Π΄ΠΎΠ»Ρƒ Ρ‰Π΅ Π²ΠΈΠ΄ΠΈΡ‚Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΡ‚Π΅ Π½Π° ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈΡ‚Π΅ Π·Π° ΠΏΠ°Ρ€ΠΎΠ»ΠΈ ΠΈ ΠΊΡ€Π°Ρ‚ΠΊΠΎ описаниС Π½Π° всСки ΠΎΡ‚ тях. Много ΠΎΡ‚ тях са ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ Π½Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΡ‚Π΅ Π² ΠΌΠΎΠ΄ΡƒΠ»Π° cracklib. Вакъв ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ улСснява прСноса Π½Π° Π²Π°ΡˆΠΈΡ‚Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ ΠΎΡ‚ старата систСма.

  • difok – Π‘Ρ€ΠΎΠΉ символи Π² Π½ΠΎΠ²Π°Ρ‚Π° Π²ΠΈ ΠΏΠ°Ρ€ΠΎΠ»Π°, ΠΊΠΎΠΈΡ‚ΠΎ НЕ трябва Π΄Π° ΠΏΡ€ΠΈΡΡŠΡΡ‚Π²Π°Ρ‚ Π² старата Π²ΠΈ ΠΏΠ°Ρ€ΠΎΠ»Π°. (По ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ 5)
  • minlen – Минимална дълТина Π½Π° ΠΏΠ°Ρ€ΠΎΠ»Π°Ρ‚Π°. (По ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ 9)
  • ucredit – МаксималСн Π±Ρ€ΠΎΠΉ ΠΊΡ€Π΅Π΄ΠΈΡ‚ΠΈ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° символи с Π³Π»Π°Π²Π½Π° Π±ΡƒΠΊΠ²Π° (Π°ΠΊΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€ΡŠΡ‚ > 0), ΠΈΠ»ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΎΡ‚ΠΎ изисквано число символи с Π³Π»Π°Π²Π½Π° Π±ΡƒΠΊΠ²Π° (Π°ΠΊΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€ΡŠΡ‚ < 0). По ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ 1.
  • lcredit β€” ΠœΠ°ΠΊΡΠΈΠΌΠ°Π»Π½ΠΎΡ‚ΠΎ количСство ΠΊΡ€Π΅Π΄ΠΈΡ‚ΠΈ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° символи с ΠΌΠ°Π»ΠΊΠΈ Π±ΡƒΠΊΠ²ΠΈ (Π°ΠΊΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€ΡŠΡ‚ > 0) ΠΈΠ»ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΎΡ‚ΠΎ изискуСмо количСство символи с ΠΌΠ°Π»ΠΊΠΈ Π±ΡƒΠΊΠ²ΠΈ (Π°ΠΊΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€ΡŠΡ‚ < 0). По ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ 1.
  • dcredit β€” ΠœΠ°ΠΊΡΠΈΠΌΠ°Π»Π½ΠΎΡ‚ΠΎ количСство ΠΊΡ€Π΅Π΄ΠΈΡ‚ΠΈ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Ρ†ΠΈΡ„Ρ€ΠΈ (Π°ΠΊΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€ΡŠΡ‚ > 0) ΠΈΠ»ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΎΡ‚ΠΎ изискуСмо количСство Ρ†ΠΈΡ„Ρ€ΠΈ (Π°ΠΊΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€ΡŠΡ‚ < 0). По ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ 1.
  • ocredit β€” ΠœΠ°ΠΊΡΠΈΠΌΠ°Π»Π½ΠΎΡ‚ΠΎ количСство ΠΊΡ€Π΅Π΄ΠΈΡ‚ΠΈ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈ символи (Π°ΠΊΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€ΡŠΡ‚ > 0) ΠΈΠ»ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΎΡ‚ΠΎ изискуСмо количСство Π΄Ρ€ΡƒΠ³ΠΈ символи (Π°ΠΊΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€ΡŠΡ‚ < 0). По ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ 1.
  • minclass – Установява количСството изисквани класовС. ΠšΠ»Π°ΡΠΎΠ²Π΅Ρ‚Π΅ Π²ΠΊΠ»ΡŽΡ‡Π²Π°Ρ‚ горСпосочСнитС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ (символи с Π³Π»Π°Π²Π½ΠΈ Π±ΡƒΠΊΠ²ΠΈ, ΠΌΠ°Π»ΠΊΠΈ Π±ΡƒΠΊΠ²ΠΈ, Ρ†ΠΈΡ„Ρ€ΠΈ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ символи). По ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ 0.
  • maxrepeat – ΠœΠ°ΠΊΡΠΈΠΌΠ°Π»Π½ΠΎΡ‚ΠΎ число повторСния Π½Π° символ Π² ΠΏΠ°Ρ€ΠΎΠ»Π°Ρ‚Π°. По ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ 0.
  • maxclassrepeat β€” ΠœΠ°ΠΊΡΠΈΠΌΠ°Π»Π½ΠΎΡ‚ΠΎ количСство послСдоватСлни символи Π² Π΅Π΄ΠΈΠ½ клас. По ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ 0.
  • gecoscheck – ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ²Π° Π΄Π°Π»ΠΈ ΠΏΠ°Ρ€ΠΎΠ»Π°Ρ‚Π° ΡΡŠΠ΄ΡŠΡ€ΠΆΠ° някакви Π΄ΡƒΠΌΠΈ ΠΎΡ‚ GECOS Π½ΠΈΠ·ΠΎΠ²Π΅Ρ‚Π΅ Π½Π° потрСбитСля. (Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ Π·Π° потрСбитСля, Ρ‚.Π΅. истинско ΠΈΠΌΠ΅, мСстополоТСниС ΠΈ Ρ‚.Π½.) По ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ 0 (ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ).
  • dictpath – ΠŸΡŠΡ‚Ρ към cracklib Ρ€Π΅Ρ‡Π½ΠΈΡ†ΠΈΡ‚Π΅.
  • badwords – Π”ΡƒΠΌΠΈΡ‚Π΅, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈ с ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ са Π·Π°Π±Ρ€Π°Π½Π΅Π½ΠΈ Π² ΠΏΠ°Ρ€ΠΎΠ»ΠΈΡ‚Π΅ (ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° компанията, Π΄ΡƒΠΌΠ°Ρ‚Π° Β«ΠΏΠ°Ρ€ΠΎΠ»Π°Β» ΠΈ Ρ‚.Π½.).

Ако концСпцията Π·Π° ΠΊΡ€Π΅Π΄ΠΈΡ‚ΠΈ Π·Π²ΡƒΡ‡ΠΈ странно, Π½Π΅ сС притСснявайтС, Ρ‚ΠΎΠ²Π° Π΅ Π½ΠΎΡ€ΠΌΠ°Π»Π½ΠΎ. Π©Π΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π·Π° Ρ‚ΠΎΠ²Π° ΠΏΠΎ-ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Π² слСдващитС Ρ€Π°Π·Π΄Π΅Π»ΠΈ.

ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ Π½Π° ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ°Ρ‚Π° Π·Π° ΠΏΠ°Ρ€ΠΎΠ»ΠΈ

ΠŸΡ€Π΅Π΄ΠΈ Π΄Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅Ρ‚Π΅ Π΄Π° Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€Π°Ρ‚Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅, Π΄ΠΎΠ±Ρ€Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° Π΅ Π΄Π° Π·Π°ΠΏΠΈΡˆΠ΅Ρ‚Π΅ основната ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° Π·Π° ΠΏΠ°Ρ€ΠΎΠ»ΠΈ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»Π½ΠΎ. НапримСр, Ρ‰Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ слСднитС ΠΏΡ€Π°Π²ΠΈΠ»Π° Π·Π° слоТност:

  • ΠŸΠ°Ρ€ΠΎΠ»Π°Ρ‚Π° трябва Π΄Π° ΠΈΠΌΠ° ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½Π° дълТина ΠΎΡ‚ 15 символа.
  • Π’ ΠΏΠ°Ρ€ΠΎΠ»Π°Ρ‚Π° Π΅Π΄ΠΈΠ½ ΠΈ ΡΡŠΡ‰ символ Π½Π΅ трябва Π΄Π° сС повтаря ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ Π΄Π²Π° ΠΏΡŠΡ‚ΠΈ.
  • Π’ ΠΏΠ°Ρ€ΠΎΠ»Π°Ρ‚Π° класовСтС символи ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС повтарят Π΄ΠΎ Ρ‡Π΅Ρ‚ΠΈΡ€ΠΈ ΠΏΡŠΡ‚ΠΈ.
  • ΠŸΠ°Ρ€ΠΎΠ»Π°Ρ‚Π° трябва Π΄Π° ΡΡŠΠ΄ΡŠΡ€ΠΆΠ° символи ΠΎΡ‚ всСки клас.
  • Новата ΠΏΠ°Ρ€ΠΎΠ»Π° трябва Π΄Π° ΠΈΠΌΠ° 5 Π½ΠΎΠ²ΠΈ символа Π² сравнСниС със старата.
  • Π’ΠΊΠ»ΡŽΡ‡Π΅Ρ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°Ρ‚Π° Π½Π° GECOS.
  • Π—Π°Π±Ρ€Π°Π½Π΅Ρ‚Π΅ Π΄ΡƒΠΌΠΈΡ‚Π΅ Β«password, pass, word, putoriusΒ»

Π‘Π΅Π³Π°, слСд ΠΊΠ°Ρ‚ΠΎ ΠΈΠ·Π»ΠΎΠΆΠΈΡ…ΠΌΠ΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ°Ρ‚Π°, ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€Π°ΠΌΠ΅ Ρ„Π°ΠΉΠ»Π° /etc/security/pwquality.conf, Π·Π° Π΄Π° засилим изискванията Π·Π° слоТност Π½Π° ΠΏΠ°Ρ€ΠΎΠ»Π°Ρ‚Π°. По-Π΄ΠΎΠ»Ρƒ Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅Π½ Ρ„Π°ΠΉΠ» с ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈ Π·Π° ΠΏΠΎ-Π΄ΠΎΠ±Ρ€ΠΎ Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅.

# 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

ΠšΠ°ΠΊΡ‚ΠΎ стС забСлязали, някои ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ Π² нашия Ρ„Π°ΠΉΠ» са излишни. НапримСр, ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€ΡŠΡ‚ minclass излишСн, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Π²Π΅Ρ‡Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΠΏΠΎΠ½Π΅ Π΄Π²Π° символа ΠΎΡ‚ класа, ΠΊΠ°Ρ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΠΏΠΎΠ»Π΅Ρ‚Π° [u,l,d,o]credit. ΠΠ°ΡˆΠΈΡΡ‚ списък с Π΄ΡƒΠΌΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Π½Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚, Π΅ ΡΡŠΡ‰ΠΎ излишСн, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Π·Π°Π±Ρ€Π°Π½ΠΈΡ…ΠΌΠ΅ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° всякакъв клас 4 ΠΏΡŠΡ‚ΠΈ (всички Π΄ΡƒΠΌΠΈ Π² нашия списък са написани с ΠΌΠ°Π»ΠΊΠΈ Π±ΡƒΠΊΠ²ΠΈ). Π’ΠΊΠ»ΡŽΡ‡ΠΈΠ» съм Ρ‚Π΅Π·ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ само Π·Π° Π΄Π° дСмонстрирам ΠΊΠ°ΠΊ Π΄Π° Π³ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ Π·Π° настройка Π½Π° ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ°Ρ‚Π° Π·Π° ΠΏΠ°Ρ€ΠΎΠ»ΠΈ.
Π‘Π»Π΅Π΄ ΠΊΠ°Ρ‚ΠΎ ΡΡŠΠ·Π΄Π°Π΄Π΅Ρ‚Π΅ своята ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ°, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ Π΄Π° смСнят ΠΏΠ°Ρ€ΠΎΠ»ΠΈΡ‚Π΅ си ΠΏΡ€ΠΈ слСдващото ΠΈΠΌ Π²Π»ΠΈΠ·Π°Π½Π΅ Π² систСма.

Π•Π΄Π½Π° странна Π½Π΅Ρ‰Π°, ΠΊΠΎΠΈΡ‚ΠΎ вСроятно забСлязахтС, Π΅, Ρ‡Π΅ ΠΏΠΎΠ»Π΅Ρ‚Π° [u,l,d,o]credit ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Ρ‚ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»Π½ΠΎ число. Π’ΠΎΠ²Π° Π΅ Ρ‚Π°ΠΊΠ°, Π·Π°Ρ‰ΠΎΡ‚ΠΎ числа ΠΏΠΎ-Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΈΠ»ΠΈ Ρ€Π°Π²Π½ΠΈ Π½Π° 0 Ρ‰Π΅ Π΄Π°Π΄Π°Ρ‚ ΠΊΡ€Π΅Π΄ΠΈΡ‚ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° символа във Π²Π°ΡˆΠ°Ρ‚Π° ΠΏΠ°Ρ€ΠΎΠ»Π°. Ако ΠΏΠΎΠ»Π΅Ρ‚ΠΎ ΡΡŠΠ΄ΡŠΡ€ΠΆΠ° ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»Π½ΠΎ число, Ρ‚ΠΎΠ²Π° ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°, Ρ‡Π΅ сС изисква ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ Π±Ρ€ΠΎΠΉ.

Какво Π΅ ΠΊΡ€Π΅Π΄ΠΈΡ‚ (credit)?

Наричам Π³ΠΈ ΠΊΡ€Π΅Π΄ΠΈΡ‚ΠΈ, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Ρ‚ΠΎΠ²Π° Π½Π°ΠΉ-Ρ‚ΠΎΡ‡Π½ΠΎ отразява тяхното ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Ако стойността Π½Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€Π° Π΅ ΠΏΠΎ-голяма ΠΎΡ‚ 0, добавятС Π±Ρ€ΠΎΠΉ "ΠΊΡ€Π΅Π΄ΠΈΡ‚ΠΈ Π½Π° символи" Ρ€Π°Π²Π΅Π½ Π½Π° "Ρ…" към Π΄ΡŠΠ»ΠΆΠΈΠ½Π°Ρ‚Π° Π½Π° ΠΏΠ°Ρ€ΠΎΠ»Π°Ρ‚Π°. НапримСр, Π°ΠΊΠΎ всички ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ (u,l,d,o)credit са настроСни Π½Π° 1, Π° изискваната дълТина Π½Π° ΠΏΠ°Ρ€ΠΎΠ»Π°Ρ‚Π° Π΅ Π±ΠΈΠ»Π° 6, Ρ‚ΠΎ Ρ‰Π΅ Π²ΠΈ трябват 6 символа, Π·Π° Π΄Π° ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΠΈΡ‚Π΅ изискванСто Π·Π° дълТина, Π·Π°Ρ‰ΠΎΡ‚ΠΎ всСки символ с Π³Π»Π°Π²Π½Π° Π±ΡƒΠΊΠ²Π°, ΠΌΠ°Π»ΠΊΠ° Π±ΡƒΠΊΠ²Π°, Ρ†ΠΈΡ„Ρ€Π° ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ символ Ρ‰Π΅ Π²ΠΈ Π΄Π°Π΄Π΅ Π΅Π΄ΠΈΠ½ ΠΊΡ€Π΅Π΄ΠΈΡ‚.

Ако Π·Π°Π΄Π°Π΄Π΅Ρ‚Π΅ dcredit Π½Π° 2, Ρ‚Π΅ΠΎΡ€Π΅Ρ‚ΠΈΡ‡Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ ΠΏΠ°Ρ€ΠΎΠ»Π° с дълТина 9 символа ΠΈ Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ 2 ΠΊΡ€Π΅Π΄ΠΈΡ‚Π° Π·Π° символи Π·Π° Ρ†ΠΈΡ„Ρ€ΠΈΡ‚Π΅ ΠΈ Ρ‚ΠΎΠ³Π°Π²Π° Π΄ΡŠΠ»ΠΆΠΈΠ½Π°Ρ‚Π° Π½Π° ΠΏΠ°Ρ€ΠΎΠ»Π°Ρ‚Π° Π²Π΅Ρ‡Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС 10.

Π Π°Π·Π³Π»Π΅Π΄Π°ΠΉΡ‚Π΅ Ρ‚ΠΎΠ·ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€. Π—Π°Π΄Π°Π΄ΠΎΡ… Π΄ΡŠΠ»ΠΆΠΈΠ½Π°Ρ‚Π° Π½Π° ΠΏΠ°Ρ€ΠΎΠ»Π°Ρ‚Π° 13, настроих dcredit Π½Π° 2, Π° всичко останало Π½Π° 0.

$ pwscore
 Thisistwelve
 ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° качСството Π½Π° ΠΏΠ°Ρ€ΠΎΠ»Π°Ρ‚Π° Π½Π΅ успя:
  ΠŸΠ°Ρ€ΠΎΠ»Π°Ρ‚Π° Π΅ ΠΏΠΎ-ΠΊΡ€Π°Ρ‚ΠΊΠ° ΠΎΡ‚ 13 символа

$ pwscore
 Th1sistwelve
 18

ΠŸΡŠΡ€Π²Π°Ρ‚Π° ΠΌΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° сС ΠΏΡ€ΠΎΠ²Π°Π»ΠΈ, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Π΄ΡŠΠ»ΠΆΠΈΠ½Π°Ρ‚Π° Π½Π° ΠΏΠ°Ρ€ΠΎΠ»Π°Ρ‚Π° бСшС ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠ° ΠΎΡ‚ 13 символа. БлСдващия ΠΏΡŠΡ‚ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ… Π±ΡƒΠΊΠ²Π°Ρ‚Π° β€œI” Π½Π° Ρ†ΠΈΡ„Ρ€Π°Ρ‚Π° β€œ1” ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ… Π΄Π²Π° ΠΊΡ€Π΅Π΄ΠΈΡ‚Π° Π·Π° Ρ†ΠΈΡ„Ρ€ΠΈ, ΠΊΠΎΠ΅Ρ‚ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈ ΠΏΠ°Ρ€ΠΎΠ»Π°Ρ‚Π° Π΅ΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½Ρ‚Π½Π° Π½Π° 13.

ВСст Π·Π° ΠΏΠ°Ρ€ΠΎΠ»Π°

ΠŸΠ°ΠΊΠ΅Ρ‚ libpwquality осигурява функционалността, описана Π² статията. Π‘ Π½Π΅Π³ΠΎ сС доставя ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ°Ρ‚Π° pwscore, която Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° Π·Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΠΏΠ°Ρ€ΠΎΠ»Π°Ρ‚Π° Π·Π° слоТност. Π˜Π·ΠΏΠΎΠ»Π·Π²Π°Ρ…ΠΌΠ΅ я ΠΏΠΎ-Π³ΠΎΡ€Π΅ Π·Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΠΊΡ€Π΅Π΄ΠΈΡ‚ΠΈΡ‚Π΅.
Π£Ρ‚ΠΈΠ»ΠΈΡ‚Π° pwscore Ρ‡ΠΈΡ‚Π° ΠΎΡ‚ stdin. ΠŸΡ€ΠΎΡΡ‚ΠΎ стартирайтС ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π°Ρ‚Π° ΠΈ Π½Π°ΠΏΠΈΡˆΠ΅Ρ‚Π΅ Π²Π°ΡˆΠ°Ρ‚Π° ΠΏΠ°Ρ€ΠΎΠ»Π°, тя Ρ‰Π΅ прСдостави Π³Ρ€Π΅ΡˆΠΊΠ° ΠΈΠ»ΠΈ стойност ΠΎΡ‚ 0 Π΄ΠΎ 100.

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡΡ‚ Π·Π° качСството Π½Π° ΠΏΠ°Ρ€ΠΎΠ»Π°Ρ‚Π° ΡΡŠΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²Π° Π½Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€Π° minlen Π² конфигурационния Ρ„Π°ΠΉΠ». ΠšΠ°Ρ‚ΠΎ цяло, ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π» ΠΏΠΎΠ΄ 50 сС счита Π·Π° "Π½ΠΎΡ€ΠΌΠ°Π»Π½Π° ΠΏΠ°Ρ€ΠΎΠ»Π°", Π° Π½Π°Π΄ 50 - Π·Π° "сила ΠΏΠ°Ρ€ΠΎΠ»Π°". Всяка ΠΏΠ°Ρ€ΠΎΠ»Π°, която ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Π²Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈΡ‚Π΅ Π·Π° качСство (особСно Π·Π°Π΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½Π°Ρ‚Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° cracklib) трябва Π΄Π° устои Π½Π° Π°Ρ‚Π°ΠΊΠΈ с Ρ€Π΅Ρ‡Π½ΠΈΠΊ, Π° ΠΏΠ°Ρ€ΠΎΠ»Π°Ρ‚Π° с ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π» Π½Π°Π΄ 50 с настройка minlen ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ Π΄ΠΎΡ€ΠΈ brute force Π°Ρ‚Π°ΠΊΠΈ.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Настройка pwquality Π΅ лСсно ΠΈ просто Π² сравнСниС с нСудобствата ΠΏΡ€ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ cracklib Π½Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€Π°Π½Π΅ Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ pam. Π’ Ρ‚ΠΎΠ²Π° Ρ€ΡŠΠΊΠΎΠ²ΠΎΠ΄ΡΡ‚Π²ΠΎ Ρ€Π°Π·Π³Π»Π΅Π΄Π°Ρ…ΠΌΠ΅ всичко, ΠΊΠΎΠ΅Ρ‚ΠΎ Ρ‰Π΅ Π²ΠΈ трябва ΠΏΡ€ΠΈ настройка Π½Π° ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ Π·Π° ΠΏΠ°Ρ€ΠΎΠ»ΠΈ Π² Red Hat 7, CentOS 7 ΠΈ Π΄ΠΎΡ€ΠΈ систСми Ubuntu. ΠžΠ±ΡΡŠΠ΄ΠΈΡ…ΠΌΠ΅ концСпцията Π·Π° ΠΊΡ€Π΅Π΄ΠΈΡ‚ΠΈ, Π·Π° която рядко сС пишС ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ, Π·Π°Ρ‚ΠΎΠ²Π° Ρ‚Π°Π·ΠΈ Ρ‚Π΅ΠΌΠ° чСсто остава Π½Π΅Ρ€Π°Π·Π±Ρ€Π°Π½Π° Π·Π° Ρ‚Π΅Π·ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Π½Π΅ са сС сблъсквали с нСя ΠΏΡ€Π΅Π΄ΠΈ.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΡ†ΠΈ:

pwquality man page
pam_pwquality man page
pwscore man page

ПолСзни Π²Ρ€ΡŠΠ·ΠΊΠΈ:

Π˜Π·Π±ΠΎΡ€ Π½Π° сигурни ΠΏΠ°Ρ€ΠΎΠ»ΠΈ – Брус Π¨Π½Π°ΠΉΠ΅Ρ€
Π›ΠΎΡ€ΠΈ Π€Π΅ΠΉΡ‚ ΠšΡ€Π°Π½ΠΎΡ€ обсъТда своитС изслСдвания Π½Π° ΠΏΠ°Ρ€ΠΎΠ»ΠΈΡ‚Π΅ Π² CMU
Бкандалният комикс xkcd Π·Π° Снтропията

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС със Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS ΠΈ VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС със Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS ΠΈ VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster