рд▓рд┐рдирдХреНрд╕рдордзреНрдпреЗ рдкрд╛рд╕рд╡рд░реНрдб рдкреЙрд▓рд┐рд╕реА рддрдпрд╛рд░ рдХрд░рдгреЗ

рд╣реЕрд▓реЛ рдкреБрдиреНрд╣рд╛! рдирд╡реАрди рдЕрднреНрдпрд╛рд╕рдХреНрд░рдо рдЧрдЯрд╛рддреАрд▓ рд╡рд░реНрдЧ рдЙрджреНрдпрд╛рдкрд╛рд╕реВрди рд╕реБрд░реВ рд╣реЛрддреАрд▓ "рд▓рд┐рдирдХреНрд╕ рдкреНрд░рд╢рд╛рд╕рдХ", рдпрд╛ рд╕рдВрджрд░реНрднрд╛рдд, рдЖрдореНрд╣реА рдпрд╛ рд╡рд┐рд╖рдпрд╛рд╡рд░ рдПрдХ рдЙрдкрдпреБрдХреНрдд рд▓реЗрдЦ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдд рдЖрд╣реЛрдд.

рд▓рд┐рдирдХреНрд╕рдордзреНрдпреЗ рдкрд╛рд╕рд╡рд░реНрдб рдкреЙрд▓рд┐рд╕реА рддрдпрд╛рд░ рдХрд░рдгреЗ

рдорд╛рдЧреАрд▓ рдЯреНрдпреБрдЯреЛрд░рд┐рдпрд▓рдордзреНрдпреЗ рдЖрдореНрд╣реА рддреБрдореНрд╣рд╛рд▓рд╛ рдХрд╕реЗ рд╡рд╛рдкрд░рд╛рдпрдЪреЗ рддреЗ рд╕рд╛рдВрдЧрд┐рддрд▓реЗ pam_cracklibрд╕рд┐рд╕реНрдЯрдорд╡рд░реАрд▓ рдкрд╛рд╕рд╡рд░реНрдб рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд░реЗрдб рд╣реЕрдЯ реп рдХрд┐рдВрд╡рд╛ CentOS. Red Hat 7 рдордзреНрдпреЗ pam_pwquality рдмрджрд▓рд▓реЗ cracklib рдореНрд╣рдгреВрди pam рдкрд╛рд╕рд╡рд░реНрдб рддрдкрд╛рд╕рдгреНрдпрд╛рд╕рд╛рдареА рдбреАрдлреЙрд▓реНрдЯ рдореЙрдбреНрдпреВрд▓. рдореЙрдбреНрдпреВрд▓ pam_pwquality Ubuntu рдЖрдгрд┐ CentOS рддрд╕реЗрдЪ рдЗрддрд░ рдЕрдиреЗрдХ OS рд╡рд░ рджреЗрдЦреАрд▓ рд╕рдорд░реНрдерд┐рдд рдЖрд╣реЗ. рд╡рд╛рдкрд░рдХрд░реНрддреЗ рддреБрдордЪреА рдкрд╛рд╕рд╡рд░реНрдб рд╕рд╛рдорд░реНрдереНрдп рдорд╛рдирдХреЗ рд╕реНрд╡реАрдХрд╛рд░рддрд╛рдд рдпрд╛рдЪреА рдЦрд╛рддреНрд░реА рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╣реЗ рдореЙрдбреНрдпреВрд▓ рдкрд╛рд╕рд╡рд░реНрдб рдзреЛрд░рдгреЗ рддрдпрд╛рд░ рдХрд░рдгреЗ рд╕реЛрдкреЗ рдХрд░рддреЗ.

рдмрд░реНрдпрд╛рдЪ рдХрд╛рд│рд╛рдкрд╛рд╕реВрди, рдкрд╛рд╕рд╡рд░реНрдбрдЪрд╛ рд╕рд╛рдорд╛рдиреНрдп рджреГрд╖реНрдЯреАрдХреЛрди рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рд▓рд╛ рдЕрдкреНрдкрд░рдХреЗрд╕, рд▓реЛрдЕрд░рдХреЗрд╕, рд╕рдВрдЦреНрдпрд╛ рдХрд┐рдВрд╡рд╛ рдЗрддрд░ рдЪрд┐рдиреНрд╣реЗ рд╡рд╛рдкрд░рдгреНрдпрд╛рд╕ рднрд╛рдЧ рдкрд╛рдбрдгреЗ рд╣рд╛ рд╣реЛрддрд╛. рдкрд╛рд╕рд╡рд░реНрдбрдЪреНрдпрд╛ рдЬрдЯрд┐рд▓рддреЗрд╕рд╛рдареАрдЪреНрдпрд╛ рдпрд╛ рдореВрд▓рднреВрдд рдирд┐рдпрдорд╛рдВрдЪрд╛ рдЧреЗрд▓реНрдпрд╛ рджрд╣рд╛ рд╡рд░реНрд╖рд╛рдВрдд рдореЛрдареНрдпрд╛ рдкреНрд░рдорд╛рдгрд╛рд╡рд░ рдкреНрд░рдЪрд╛рд░ рдХрд░рдгреНрдпрд╛рдд рдЖрд▓рд╛ рдЖрд╣реЗ. рд╣реА рдЪрд╛рдВрдЧрд▓реА рдкреНрд░рдерд╛ рдЖрд╣реЗ рдХреА рдирд╛рд╣реА рдпрд╛рдмрджреНрджрд▓ рдмрд░реАрдЪ рдЪрд░реНрдЪрд╛ рдЭрд╛рд▓реА рдЖрд╣реЗ. рдЕрд╢рд╛ рдХреНрд▓рд┐рд╖реНрдЯ рдкрд░рд┐рд╕реНрдерд┐рддреА рд╕реЗрдЯ рдХрд░рдгреНрдпрд╛рд╡рд┐рд░реБрджреНрдз рдореБрдЦреНрдп рдпреБрдХреНрддрд┐рд╡рд╛рдж рдЕрд╕рд╛ рд╣реЛрддрд╛ рдХреА рд╡рд╛рдкрд░рдХрд░реНрддреЗ рдХрд╛рдЧрджрд╛рдЪреНрдпрд╛ рддреБрдХрдбреНрдпрд╛рдВрд╡рд░ рдкрд╛рд╕рд╡рд░реНрдб рд▓рд┐рд╣реВрди рдареЗрд╡рддрд╛рдд рдЖрдгрд┐ рддреЗ рдЕрд╕реБрд░рдХреНрд╖рд┐рддрдкрдгреЗ рд╕рд╛рдард╡рддрд╛рдд.

рдЕрд▓реАрдХрдбреЗрдЪ рдкреНрд░рд╢реНрди рд╡рд┐рдЪрд╛рд░рдгреНрдпрд╛рдд рдЖрд▓реЗрд▓реЗ рджреБрд╕рд░реЗ рдзреЛрд░рдг рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрдирд╛ рджрд░ x рджрд┐рд╡рд╕рд╛рдВрдиреА рддреНрдпрд╛рдВрдЪреЗ рдкрд╛рд╕рд╡рд░реНрдб рдмрджрд▓рдгреНрдпрд╛рд╕ рднрд╛рдЧ рдкрд╛рдбрддреЗ. рдЕрд╕реЗ рдХрд╛рд╣реА рдЕрднреНрдпрд╛рд╕ рдЭрд╛рд▓реЗ рдЖрд╣реЗрдд рдХреА рд╣реЗ рд╕реБрд░рдХреНрд╖реЗрд╕рд╛рдареА рджреЗрдЦреАрд▓ рд╣рд╛рдирд┐рдХрд╛рд░рдХ рдЖрд╣реЗ.

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

рдкрд╛рд╕рд╡рд░реНрдб рдзреЛрд░рдг рд╕реЗрдЯрд┐рдВрдЧреНрдЬ

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

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

рдЬрд░ рдХрд░реНрдЬрд╛рдЪреА рд╕рдВрдХрд▓реНрдкрдирд╛ рд╡рд┐рдЪрд┐рддреНрд░ рд╡рд╛рдЯрдд рдЕрд╕реЗрд▓ рддрд░ рддреЗ рдареАрдХ рдЖрд╣реЗ, рддреЗ рд╕рд╛рдорд╛рдиреНрдп рдЖрд╣реЗ. рдЖрдореНрд╣реА рдкреБрдвреАрд▓ рд╡рд┐рднрд╛рдЧрд╛рдВрдордзреНрдпреЗ рдпрд╛рдмрджреНрджрд▓ рдЕрдзрд┐рдХ рдмреЛрд▓реВ.

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

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

  • рдкрд╛рд╕рд╡рд░реНрдбрдордзреНрдпреЗ рдХрд┐рдорд╛рди 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 рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдлрд╛рдЗрд▓рдордзреНрдпреЗ. рд╕рд░реНрд╡рд╕рд╛рдзрд╛рд░рдгрдкрдгреЗ, релреж рдкреЗрдХреНрд╖рд╛ рдХрдореА рд╕реНрдХреЛрдЕрд░ рд╣рд╛ "рд╕рд╛рдорд╛рдиреНрдп рдкрд╛рд╕рд╡рд░реНрдб" рдорд╛рдирд▓рд╛ рдЬрд╛рддреЛ рдЖрдгрд┐ рддреНрдпрд╛рдкреЗрдХреНрд╖рд╛ рдЬрд╛рд╕реНрдд рд╕реНрдХреЛрдЕрд░ рд╣рд╛ "рд╕реНрдЯреНрд░рд╛рдБрдЧ рдкрд╛рд╕рд╡рд░реНрдб" рдорд╛рдирд▓рд╛ рдЬрд╛рддреЛ. рдЧреБрдгрд╡рддреНрддрд╛ рддрдкрд╛рд╕рдгреА рдЙрддреНрддреАрд░реНрдг рдХрд░рдгрд╛рд░рд╛ рдХреЛрдгрддрд╛рд╣реА рдкрд╛рд╕рд╡рд░реНрдб (рд╡рд┐рд╢реЗрд╖рдд: рд╕рдХреНрддреАрдЪреА рдкрдбрддрд╛рд│рдгреА cracklib) рдиреЗ рдбрд┐рдХреНрд╢рдирд░реА рд╣рд▓реНрд▓реНрдпрд╛рдВрдЪрд╛ рд╕рд╛рдордирд╛ рдХреЗрд▓рд╛ рдкрд╛рд╣рд┐рдЬреЗ рдЖрдгрд┐ рд╕реЗрдЯрд┐рдВрдЧрд╕рд╣ 50 рдкреЗрдХреНрд╖рд╛ рдЬрд╛рд╕реНрдд рд╕реНрдХреЛрдЕрд░ рдЕрд╕рд▓реЗрд▓рд╛ рдкрд╛рд╕рд╡рд░реНрдб minlen рдЕрдЧрджреА рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░ brute force рд╣рд▓реНрд▓реЗ

рдирд┐рд╖реНрдХрд░реНрд╖

рд╕рдорд╛рдпреЛрдЬрди pwquality - рд╡рд╛рдкрд░рд╛рдЪреНрдпрд╛ рдЧреИрд░рд╕реЛрдпреАрдЪреНрдпрд╛ рддреБрд▓рдиреЗрдд рддреЗ рд╕реЛрдкреЗ рдЖрдгрд┐ рд╕реЛрдкреЗ рдЖрд╣реЗ cracklib рдереЗрдЯ рдлрд╛рдЗрд▓ рд╕рдВрдкрд╛рджрдирд╛рд╕рд╣ pam. рдпрд╛ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХрд╛рдордзреНрдпреЗ, рдЖрдореНрд╣реА Red Hat 7, CentOS 7 рдЖрдгрд┐ рдЕрдЧрджреА Ubuntu рд╕рд┐рд╕реНрдЯреАрдорд╡рд░ рдкрд╛рд╕рд╡рд░реНрдб рдзреЛрд░рдгреЗ рд╕реЗрдЯ рдХрд░рддрд╛рдирд╛ рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рд╕рд░реНрд╡ рдЧреЛрд╖реНрдЯреАрдВрдЪрд╛ рд╕рдорд╛рд╡реЗрд╢ рдХреЗрд▓рд╛ рдЖрд╣реЗ. рдЖрдореНрд╣реА рдХрд░реНрдЬрд╛рдЪреНрдпрд╛ рд╕рдВрдХрд▓реНрдкрдиреЗрдмрджреНрджрд▓ рджреЗрдЦреАрд▓ рдмреЛрд▓рд▓реЛ, рдЬреНрдпрд╛рдмрджреНрджрд▓ рдХреНрд╡рдЪрд┐рддрдЪ рддрдкрд╢реАрд▓рд╡рд╛рд░ рд▓рд┐рд╣рд┐рд▓реЗрд▓реЗ рдЖрд╣реЗ, рдореНрд╣рдгреВрди рд╣рд╛ рд╡рд┐рд╖рдп рдЬреНрдпрд╛рдВрдирд╛ рдпрд╛рдкреВрд░реНрд╡реА рдЖрд▓рд╛ рдирд╡реНрд╣рддрд╛ рддреНрдпрд╛рдВрдЪреНрдпрд╛рд╕рд╛рдареА рд╣рд╛ рд╡рд┐рд╖рдп рдЕрдиреЗрдХрджрд╛ рдЕрд╕реНрдкрд╖реНрдЯ рд░рд╛рд╣рд┐рд▓рд╛.

рд╕реНрддреНрд░реЛрдд:

pwquality man page
pam_pwquality рдореЕрди рдкреЗрдЬ
pwscore man page

рдЙрдкрдпреБрдХреНрдд рджреБрд╡реЗ:

рд╕реБрд░рдХреНрд╖рд┐рдд рдкрд╛рд╕рд╡рд░реНрдб рдирд┐рд╡рдбрдгреЗ - рдмреНрд░реВрд╕ рд╢реНрдирд┐рдпрд░
Lorrie Faith Cranor CMU рдордзреНрдпреЗ рддрд┐рдЪреНрдпрд╛ рдкрд╛рд╕рд╡рд░реНрдб рдЕрднреНрдпрд╛рд╕рд╛рд╡рд░ рдЪрд░реНрдЪрд╛ рдХрд░рддреЗ
рдПрдиреНрдЯреНрд░реЙрдкреАрд╡рд░реАрд▓ рдХреБрдкреНрд░рд╕рд┐рджреНрдз xkcd рдХрд╛рд░реНрдЯреВрди

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

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛