рд▓рд┐рдирдХреНрд╕ рдореЗрдВ рдкрд╛рд╕рд╡рд░реНрдб рдиреАрддрд┐ рдмрдирд╛рдирд╛

рдлрд┐рд░ рд╕реЗ рд╣реИрд▓реЛ! рдирдП рдкрд╛рдареНрдпрдХреНрд░рдо рд╕рдореВрд╣ рдХреА рдХрдХреНрд╖рд╛рдПрдВ рдХрд▓ рд╕реЗ рд╢реБрд░реВ рд╣реЛрдВрдЧреА "рд▓рд┐рдирдХреНрд╕ рдкреНрд░рд╢рд╛рд╕рдХ"рдЗрд╕ рд╕рдВрдмрдВрдз рдореЗрдВ рд╣рдо рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рдПрдХ рдЙрдкрдпреЛрдЧреА рд▓реЗрдЦ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рд▓рд┐рдирдХреНрд╕ рдореЗрдВ рдкрд╛рд╕рд╡рд░реНрдб рдиреАрддрд┐ рдмрдирд╛рдирд╛

рдкрд┐рдЫрд▓реЗ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдореЗрдВ рд╣рдордиреЗ рдЖрдкрдХреЛ рдмрддрд╛рдпрд╛ рдерд╛ рдХрд┐ рдХреИрд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ pam_cracklibрд╕рд┐рд╕реНрдЯрдо рдкрд░ рдкрд╛рд╕рд╡рд░реНрдб рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд░реЗрдб рд╣реИрдЯ 6 рдпрд╛ CentOS. рд░реЗрдб рд╣реИрдЯ 7 рдореЗрдВ pam_pwquality рдЬрдЧрд╣ рд▓реЗ рд▓реА cracklib рдЬреИрд╕рд╛ pam рдкрд╛рд╕рд╡рд░реНрдб рдЬрд╛рдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдореЙрдбреНрдпреВрд▓ред рдорд╛рдкрд╛рдВрдХ pam_pwquality рдпрд╣ Ubuntu рдФрд░ CentOS рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдХрдИ рдЕрдиреНрдп OSes рдкрд░ рднреА рд╕рдорд░реНрдерд┐рдд рд╣реИред рдпрд╣ рдореЙрдбреНрдпреВрд▓ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╛рд╕рд╡рд░реНрдб рдиреАрддрд┐рдпрд╛рдВ рдмрдирд╛рдирд╛ рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕рд╡рд░реНрдб рддрд╛рдХрдд рдорд╛рдирдХреЛрдВ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред

рд▓рдВрдмреЗ рд╕рдордп рддрдХ, рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЕрдкрд░рдХреЗрд╕, рд▓реЛрдЕрд░рдХреЗрд╕, рд╕рдВрдЦреНрдпрд╛рдУрдВ рдпрд╛ рдЕрдиреНрдп рдкреНрд░рддреАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░рдирд╛ рдерд╛ред рдкрд╛рд╕рд╡рд░реНрдб рдЬрдЯрд┐рд▓рддрд╛ рдХреЗ рд▓рд┐рдП рдЗрди рдмреБрдирд┐рдпрд╛рджреА рдирд┐рдпрдореЛрдВ рдХреЛ рдкрд┐рдЫрд▓реЗ рджрд╕ рд╡рд░реНрд╖реЛрдВ рдореЗрдВ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рдкреНрд░рдЪрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕ рдмрд╛рдд рдкрд░ рдХрд╛рдлрд╝реА рдЪрд░реНрдЪрд╛ рд╣реБрдИ рд╣реИ рдХрд┐ рдпрд╣ рдЕрдЪреНрдЫрд╛ рдЕрднреНрдпрд╛рд╕ рд╣реИ рдпрд╛ рдирд╣реАрдВред рдРрд╕реА рдЬрдЯрд┐рд▓ рд╕реНрдерд┐рддрд┐рдпрд╛рдБ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд╡рд┐рд░реБрджреНрдз рдореБрдЦреНрдп рддрд░реНрдХ рдпрд╣ рдерд╛ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛рдЧрдЬ рдХреЗ рдЯреБрдХрдбрд╝реЛрдВ рдкрд░ рдкрд╛рд╕рд╡рд░реНрдб рд▓рд┐рдЦрддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВред

рдПрдХ рдЕрдиреНрдп рдиреАрддрд┐ рдЬрд┐рд╕ рдкрд░ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рд╕рд╡рд╛рд▓ рдЙрдард╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рд╣рд░ x рджрд┐рди рдореЗрдВ рдЕрдкрдирд╛ рдкрд╛рд╕рд╡рд░реНрдб рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░рддреА рд╣реИред рдХреБрдЫ рдЕрдзреНрдпрдпрди рд╣реБрдП рд╣реИрдВ рдЬрд┐рдирд╕реЗ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕реБрд░рдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП рднреА рд╣рд╛рдирд┐рдХрд╛рд░рдХ рд╣реИред

рдЗрди рдЪрд░реНрдЪрд╛рдУрдВ рдХреЗ рд╡рд┐рд╖рдп рдкрд░ рдХрдИ рд▓реЗрдЦ рд▓рд┐рдЦреЗ рдЧрдП рд╣реИрдВ, рдЬреЛ рдХрд┐рд╕реА рди рдХрд┐рд╕реА рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдпрд╣ рд╡рд╣ рдирд╣реАрдВ рд╣реИ рдЬрд┐рд╕ рдкрд░ рд╣рдо рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХрд░реЗрдВрдЧреЗред рдпрд╣ рдЖрд▓реЗрдЦ рд╕реБрд░рдХреНрд╖рд╛ рдиреАрддрд┐ рдХреЛ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдкрд╛рд╕рд╡рд░реНрдб рдЬрдЯрд┐рд▓рддрд╛ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдЧрд╛ред

рдкрд╛рд╕рд╡рд░реНрдб рдиреАрддрд┐ рд╕реЗрдЯрд┐рдВрдЧреНрд╕

рдиреАрдЪреЗ рдЖрдкрдХреЛ рдкрд╛рд╕рд╡рд░реНрдб рдиреАрддрд┐ рд╡рд┐рдХрд▓реНрдк рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдХрд╛ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╡рд┐рд╡рд░рдг рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛ред рдЙрдирдореЗрдВ рд╕реЗ рдХрдИ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд╕рдорд╛рди рд╣реИрдВ cracklib. рдпрд╣ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЖрдкрдХреА рдиреАрддрд┐рдпреЛрдВ рдХреЛ рд╡рд┐рд░рд╛рд╕рдд рдкреНрд░рдгрд╛рд▓реА рд╕реЗ рдкреЛрд░реНрдЯ рдХрд░рдирд╛ рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИред

  • рдореБрдЭреЗ рдорд╛рдлрд╝ рдХрд░реЗрдВ - рдЖрдкрдХреЗ рдирдП рдкрд╛рд╕рд╡рд░реНрдб рдореЗрдВ рд╡рд░реНрдгреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдЬреЛ рдЖрдкрдХреЗ рдкреБрд░рд╛рдиреЗ рдкрд╛рд╕рд╡рд░реНрдб рдореЗрдВ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред (рдбрд┐рдлрд╝реЙрд▓реНрдЯ 5)
  • рдореАрдирд▓ тАУ рдиреНрдпреВрдирддрдо рдкрд╛рд╕рд╡рд░реНрдб рд▓рдВрдмрд╛рдИ. (рдбрд┐рдлрд╝реЙрд▓реНрдЯ 9)
  • ucredit - рдЕрдкрд░рдХреЗрд╕ рд╡рд░реНрдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрд░реЗрдбрд┐рдЯ рдХреА рдЕрдзрд┐рдХрддрдо рд╕рдВрдЦреНрдпрд╛ (рдпрджрд┐ рдкреИрд░рд╛рдореАрдЯрд░ > 0), рдпрд╛ рдЕрдкрд░рдХреЗрд╕ рд╡рд░реНрдгреЛрдВ рдХреА рдиреНрдпреВрдирддрдо рдЖрд╡рд╢реНрдпрдХ рд╕рдВрдЦреНрдпрд╛ (рдпрджрд┐ рдкреИрд░рд╛рдореАрдЯрд░ < 0)ред рдбрд┐рдлрд╝реЙрд▓реНрдЯ 1 рд╣реИ.
  • рдХреНрд░реЗрдбрд┐рдЯ - рд▓реЛрдЕрд░рдХреЗрд╕ рд╡рд░реНрдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрд░реЗрдбрд┐рдЯ рдХреА рдЕрдзрд┐рдХрддрдо рд╕рдВрдЦреНрдпрд╛ (рдпрджрд┐ рдкреИрд░рд╛рдореАрдЯрд░ > 0), рдпрд╛ рд▓реЛрдЕрд░рдХреЗрд╕ рд╡рд░реНрдгреЛрдВ рдХреА рдиреНрдпреВрдирддрдо рдЖрд╡рд╢реНрдпрдХ рд╕рдВрдЦреНрдпрд╛ (рдпрджрд┐ рдкреИрд░рд╛рдореАрдЯрд░ <0)ред рдбрд┐рдлрд╝реЙрд▓реНрдЯ 1 рд╣реИ.
  • рд╢реНрд░реЗрдп - рдЕрдВрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрд░реЗрдбрд┐рдЯ рдХреА рдЕрдзрд┐рдХрддрдо рд╕рдВрдЦреНрдпрд╛ (рдпрджрд┐ рдкреИрд░рд╛рдореАрдЯрд░ > 0), рдпрд╛ рдЕрдВрдХреЛрдВ рдХреА рдиреНрдпреВрдирддрдо рдЖрд╡рд╢реНрдпрдХ рд╕рдВрдЦреНрдпрд╛ (рдпрджрд┐ рдкреИрд░рд╛рдореАрдЯрд░ < 0)ред рдбрд┐рдлрд╝реЙрд▓реНрдЯ 1 рд╣реИ.
  • рд╡рд╣ рдорд╛рдирддрд╛ рд╣реИ - рдЕрдиреНрдп рдкреНрд░рддреАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрд░реЗрдбрд┐рдЯ рдХреА рдЕрдзрд┐рдХрддрдо рд╕рдВрдЦреНрдпрд╛ (рдпрджрд┐ рдкреИрд░рд╛рдореАрдЯрд░ > 0), рдпрд╛ рдЕрдиреНрдп рдкреНрд░рддреАрдХреЛрдВ рдХреА рдиреНрдпреВрдирддрдо рдЖрд╡рд╢реНрдпрдХ рд╕рдВрдЦреНрдпрд╛ (рдпрджрд┐ рдкреИрд░рд╛рдореАрдЯрд░ < 0)ред рдбрд┐рдлрд╝реЙрд▓реНрдЯ 1 рд╣реИ.
  • minclass - рдЖрд╡рд╢реНрдпрдХ рдХрдХреНрд╖рд╛рдУрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИред рдХрдХреНрд╖рд╛рдУрдВ рдореЗрдВ рдЙрдкрд░реЛрдХреНрдд рдкреИрд░рд╛рдореАрдЯрд░ (рдЕрдкрд░ рдХреЗрд╕ рд╡рд░реНрдг, рд▓реЛрдЕрд░ рдХреЗрд╕ рд╡рд░реНрдг, рд╕рдВрдЦреНрдпрд╛рдПрдВ, рдЕрдиреНрдп рд╡рд░реНрдг) рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ 0 рд╣реИ.
  • maxrepeat - рдкрд╛рд╕рд╡рд░реНрдб рдореЗрдВ рдПрдХ рдЕрдХреНрд╖рд░ рдЕрдзрд┐рдХрддрдо рдХрд┐рддрдиреА рдмрд╛рд░ рджреЛрд╣рд░рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдбрд┐рдлрд╝реЙрд▓реНрдЯ 0 рд╣реИ.
  • maxclassrepeat - рдПрдХ рд╡рд░реНрдЧ рдореЗрдВ рд▓рдЧрд╛рддрд╛рд░ рд╡рд░реНрдгреЛрдВ рдХреА рдЕрдзрд┐рдХрддрдо рд╕рдВрдЦреНрдпрд╛ред рдбрд┐рдлрд╝реЙрд▓реНрдЯ 0 рд╣реИ.
  • gecoscheck - рдЬрд╛рдБрдЪрддрд╛ рд╣реИ рдХрд┐ рдкрд╛рд╕рд╡рд░реНрдб рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ GECOS рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рд╕реЗ рдХреЛрдИ рд╢рдмреНрдж рд╣реИ рдпрд╛ рдирд╣реАрдВред (рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЬрд╛рдирдХрд╛рд░реА, рдпрд╛рдиреА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдирд╛рдо, рд╕реНрдерд╛рди, рдЖрджрд┐) рдбрд┐рдлрд╝реЙрд▓реНрдЯ 0 (рдмрдВрдж) рд╣реИред
  • рддрд╛рдирд╛рд╢рд╛рд╣реА рдкрде -рдЖрдЗрдП рдХреНрд░реИрдХрд▓рд┐рдм рд╢рдмреНрджрдХреЛрд╢реЛрдВ рдкрд░ рдЪрд▓рддреЗ рд╣реИрдВред
  • рдмреБрд░реЗ рд╢рдмреНрдж - рд╕реНрдкреЗрд╕-рдкреГрдердХ рд╢рдмреНрдж рдЬреЛ рдкрд╛рд╕рд╡рд░реНрдб рдореЗрдВ рдирд┐рд╖рд┐рджреНрдз рд╣реИрдВ (рдХрдВрдкрдиреА рдХрд╛ рдирд╛рдо, рд╢рдмреНрдж "рдкрд╛рд╕рд╡рд░реНрдб", рдЖрджрд┐)ред

рдпрджрд┐ рдЛрдг рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдЕрдЬреАрдм рд▓рдЧрддреА рд╣реИ, рддреЛ рдХреЛрдИ рдмрд╛рдд рдирд╣реАрдВ, рдпрд╣ рд╕рд╛рдорд╛рдиреНрдп рд╣реИред рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЕрдиреБрднрд╛рдЧреЛрдВ рдореЗрдВ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗред

рдкрд╛рд╕рд╡рд░реНрдб рдиреАрддрд┐ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди

рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рдЖрдк рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рд╕рдВрдкрд╛рджрди рд╢реБрд░реВ рдХрд░реЗрдВ, рдПрдХ рдмреБрдирд┐рдпрд╛рджреА рдкрд╛рд╕рд╡рд░реНрдб рдиреАрддрд┐ рдкрд╣рд▓реЗ рд╕реЗ рд▓рд┐рдЦ рд▓реЗрдирд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рдЕрднреНрдпрд╛рд╕ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрдард┐рдирд╛рдИ рдирд┐рдпрдореЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ:

  • рдкрд╛рд╕рд╡рд░реНрдб рдХреА рдиреНрдпреВрдирддрдо рд▓рдВрдмрд╛рдИ 15 рдЕрдХреНрд╖рд░ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред
  • рдкрд╛рд╕рд╡рд░реНрдб рдореЗрдВ рдПрдХ рд╣реА рдЕрдХреНрд╖рд░ рджреЛ рдмрд╛рд░ рд╕реЗ рдЕрдзрд┐рдХ рджреЛрд╣рд░рд╛рдпрд╛ рдирд╣реАрдВ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
  • рдкрд╛рд╕рд╡рд░реНрдб рдореЗрдВ рд╡рд░реНрдг рд╡рд░реНрдЧреЛрдВ рдХреЛ рдЪрд╛рд░ рдмрд╛рд░ рддрдХ рджреЛрд╣рд░рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
  • рдкрд╛рд╕рд╡рд░реНрдб рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рд╡рд░реНрдЧ рдХреЗ рдЕрдХреНрд╖рд░ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдПред
  • рдирдП рдкрд╛рд╕рд╡рд░реНрдб рдореЗрдВ рдкреБрд░рд╛рдиреЗ рдкрд╛рд╕рд╡рд░реНрдб рдХреА рддреБрд▓рдирд╛ рдореЗрдВ 5 рдирдП рдЕрдХреНрд╖рд░ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдПред
  • GECOS рдЬрд╛рдБрдЪ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ.
  • "рдкрд╛рд╕рд╡рд░реНрдб, рдкрд╛рд╕, рд╡рд░реНрдб, рдкреБрдЯреЛрд░рд┐рдпрд╕" рд╢рдмреНрджреЛрдВ рдХреЛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░реЗрдВ

рдЕрдм рдЬрдм рд╣рдордиреЗ рдиреАрддрд┐ рдмрдирд╛ рд▓реА рд╣реИ, рддреЛ рд╣рдо рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ /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 рд╕реЗ рдЕрдзрд┐рдХ рдпрд╛ рдЙрд╕рдХреЗ рдмрд░рд╛рдмрд░ рд╕рдВрдЦреНрдпрд╛рдПрдВ рдЖрдкрдХреЗ рдкрд╛рд╕рд╡рд░реНрдб рдореЗрдВ рд╡рд░реНрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рд╢реНрд░реЗрдп рджреЗрдВрдЧреАред рдпрджрд┐ рдлрд╝реАрд▓реНрдб рдореЗрдВ рдЛрдгрд╛рддреНрдордХ рд╕рдВрдЦреНрдпрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдорд╛рддреНрд░рд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдЛрдг рдХреНрдпрд╛ рд╣реИрдВ?

рдореИрдВ рдЙрдиреНрд╣реЗрдВ рдЛрдг рдХрд╣рддрд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЙрдирдХреЗ рдЙрджреНрджреЗрд╢реНрдп рдХреЛ рдпрдерд╛рд╕рдВрднрд╡ рд╕рдЯреАрдХ рд░реВрдк рд╕реЗ рдмрддрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдкреИрд░рд╛рдореАрдЯрд░ рдорд╛рди 0 рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ, рддреЛ рдЖрдк рдкрд╛рд╕рд╡рд░реНрдб рдХреА рд▓рдВрдмрд╛рдИ рдореЗрдВ "x" рдХреЗ рдмрд░рд╛рдмрд░ "рд╡рд░реНрдг рдХреНрд░реЗрдбрд┐рдЯ" рдХреА рдПрдХ рд╕рдВрдЦреНрдпрд╛ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рд╕рднреА рдкреИрд░рд╛рдореАрдЯрд░ (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 рдореИрди рдкреЗрдЬ
pam_pwquality рдореИрди рдкреЗрдЬ
pwscore рдореИрди рдкреЗрдЬ

рдЙрдкрдпреЛрдЧреА рд▓рд┐рдВрдХреНрд╕:

рд╕реБрд░рдХреНрд╖рд┐рдд рдкрд╛рд╕рд╡рд░реНрдб рдЪреБрдирдирд╛ - рдмреНрд░реВрд╕ рд╢реНрдиреАрдпрд░
рд▓реЙрд░реА рдлреЗрде рдХреНрд░реИрдирд░ рд╕реАрдПрдордпреВ рдореЗрдВ рдЕрдкрдиреЗ рдкрд╛рд╕рд╡рд░реНрдб рдЕрдзреНрдпрдпрди рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рддреА рд╣реИрдВ
рдПрдиреНрдЯреНрд░реЙрдкреА рдкрд░ рдХреБрдЦреНрдпрд╛рдд xkcd рдХрд╛рд░реНрдЯреВрди

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ