Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ Π² Linux

И снова здравствуйтС! Π£ΠΆΠ΅ Π·Π°Π²Ρ‚Ρ€Π° Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ занятия Π² Π½ΠΎΠ²ΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΠ΅ курса «Администратор LinuxΒ», Π² связи с этим ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ΅ΠΌ ΠΏΠΎΠ»Π΅Π·Π½ΡƒΡŽ ΡΡ‚Π°Ρ‚ΡŒΡŽ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ Π² Linux

Π’ ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΌ Ρ‚ΡƒΡ‚ΠΎΡ€ΠΈΠ°Π»Π΅ ΠΌΡ‹ рассказывали, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ 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
 Password quality check failed:
  The password is shorter than 13 characters

$ pwscore
 Th1sistwelve
 18

Моя пСрвая ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΡ€ΠΎΠ²Π°Π»ΠΈΠ»Π°ΡΡŒ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π΄Π»ΠΈΠ½Π° пароля Π±Ρ‹Π»Π° мСньшС 13 символов. Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ€Π°Π· я ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ» Π±ΡƒΠΊΠ²Ρƒ β€œI” Π½Π° Ρ†ΠΈΡ„Ρ€Ρƒ β€œ1” ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» Π΄Π²Π° ΠΊΡ€Π΅Π΄ΠΈΡ‚Π° Π·Π° Ρ†ΠΈΡ„Ρ€Ρ‹, Ρ‡Ρ‚ΠΎ приравняло ΠΏΠ°Ρ€ΠΎΠ»ΡŒ ΠΊ 13.

ВСстированиС пароля

ΠŸΠ°ΠΊΠ΅Ρ‚ libpwquality обСспСчиваСт Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π», описанный Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅. Π’Π°ΠΊΠΆΠ΅ с Π½ΠΈΠΌ поставляСтся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° pwscore, которая ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ пароля Π½Π° ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ. ΠœΡ‹ использовали Π΅Π΅ Π²Ρ‹ΡˆΠ΅, для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΊΡ€Π΅Π΄ΠΈΡ‚ΠΎΠ².
Π£Ρ‚ΠΈΠ»ΠΈΡ‚Π° pwscore Ρ‡ΠΈΡ‚Π°Π΅Ρ‚ ΠΈΠ· stdin. ΠŸΡ€ΠΎΡΡ‚ΠΎ запуститС ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ ΠΈ Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ свой ΠΏΠ°Ρ€ΠΎΠ»ΡŒ, ΠΎΠ½Π° выдаст ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΈΠ»ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΎΡ‚ 0 Π΄ΠΎ 100.

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ качСства пароля соотносится с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ minlen Π² Ρ„Π°ΠΉΠ»Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. Π’ Ρ†Π΅Π»ΠΎΠΌ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ мСньшС 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

ΠŸΠΎΠ»Π΅Π·Π½Ρ‹Π΅ ссылки:

Choosing Secure Passwords – Bruce Schneier
Lorrie Faith Cranor discusses her password studies at CMU
The Infamous xkcd cartoon on Entropy

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