рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рдХреЙрд░реНрдкреЛрд░реЗрдЯ рд╡рд╛рдИрдлрд╝рд╛рдИ рдХреЗ рдЖрдпреЛрдЬрди рдХреЗ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдг рдкрд╣рд▓реЗ рд╣реА рд╡рд░реНрдгрд┐рдд рдХрд┐рдП рдЬрд╛ рдЪреБрдХреЗ рд╣реИрдВред рдпрд╣рд╛рдВ рдореИрдВ рд╡рд░реНрдгрди рдХрд░реВрдВрдЧрд╛ рдХрд┐ рдореИрдВрдиреЗ рдЗрд╕ рддрд░рд╣ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдФрд░ рд╡рд┐рднрд┐рдиреНрди рдЙрдкрдХрд░рдгреЛрдВ рдкрд░ рдХрдиреЗрдХреНрдЯ рд╣реЛрдиреЗ рдкрд░ рдореБрдЭреЗ рдХрд┐рди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ред рд╣рдо рд╕реНрдерд╛рдкрд┐рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдореМрдЬреВрджрд╛ рдПрд▓рдбреАрдПрдкреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ, рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВрдЧреЗ рдФрд░ рдпреВрдмреАрдПрдирдЯреА рдирд┐рдпрдВрддреНрд░рдХ рдкрд░ WPA2-рдПрдВрдЯрд░рдкреНрд░рд╛рдЗрдЬ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВрдЧреЗред рд╕рдм рдХреБрдЫ рд╕рд░рд▓ рд▓рдЧрддрд╛ рд╣реИ. рдЪрд▓реЛ рджреЗрдЦрддреЗ рд╣реИрдВтАж

рдИрдПрдкреА рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛

рдХрд╛рд░реНрдп рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рд╣рдореЗрдВ рдпрд╣ рддрдп рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рд╣рдо рдЕрдкрдиреЗ рд╕рдорд╛рдзрд╛рди рдореЗрдВ рдХрд┐рд╕ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдкрджреНрдзрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред

рд╡рд┐рдХрд┐рдкреАрдбрд┐рдпрд╛ рд╕реЗ:

рдИрдПрдкреА рдПрдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдврд╛рдВрдЪрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдХреНрд╕рд░ рд╡рд╛рдпрд░рд▓реЗрд╕ рдиреЗрдЯрд╡рд░реНрдХ рдФрд░ рдкреЙрдЗрдВрдЯ-рдЯреВ-рдкреЙрдЗрдВрдЯ рдХрдиреЗрдХреНрд╢рди рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкреНрд░рд╛рд░реВрдк рдХреЛ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ RFC 3748 рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ RFC 5247 рдореЗрдВ рдЕрджреНрдпрддрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдИрдПрдкреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╡рд┐рдзрд┐ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ, рдХреБрдВрдЬрд┐рдпрд╛рдБ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдФрд░ рдИрдПрдкреА рд╡рд┐рдзрд┐рдпреЛрдВ рдирд╛рдордХ рдкреНрд▓рдЧрдЗрдиреНрд╕ рджреНрд╡рд╛рд░рд╛ рдЙрди рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдХрдИ рдИрдПрдкреА рд╡рд┐рдзрд┐рдпрд╛рдВ рд╣реИрдВ, рджреЛрдиреЛрдВ рд╣реА рдИрдПрдкреА рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИрдВ рдФрд░ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╡рд┐рдХреНрд░реЗрддрд╛рдУрдВ рджреНрд╡рд╛рд░рд╛ рдЬрд╛рд░реА рдХреА рдЧрдИ рд╣реИрдВред рдИрдПрдкреА рд▓рд┐рдВрдХ рдкрд░рдд рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдпрд╣ рдХреЗрд╡рд▓ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рд░реВрдк рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред рдИрдПрдкреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЕрдкрдирд╛ рдИрдПрдкреА рд╕рдВрджреЗрд╢ рдПрдирдХреИрдкреНрд╕реБрд▓реЗрд╢рди рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╣реЛрддрд╛ рд╣реИред

рд╡рд┐рдзрд┐рдпрд╛рдБ рд╕реНрд╡рдпрдВ:

  • LEAP CISCO рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╕рд┐рдд рдПрдХ рд╕реНрд╡рд╛рдорд┐рддреНрд╡ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╣реИред рдХрдордЬреЛрд░рд┐рдпрд╛рдБ рдкрд╛рдИ рдЧрдИрдВ. рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд╢рдВрд╕рд┐рдд рдирд╣реАрдВ рд╣реИ
  • рдИрдПрдкреА-рдЯреАрдПрд▓рдПрд╕ рд╡рд╛рдпрд░рд▓реЗрд╕ рд╡рд┐рдХреНрд░реЗрддрд╛рдУрдВ рдХреЗ рдмреАрдЪ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕рдорд░реНрдерд┐рдд рд╣реИред рдпрд╣ рдПрдХ рд╕реБрд░рдХреНрд╖рд┐рдд рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрд╕рдПрд╕рдПрд▓ рдорд╛рдирдХреЛрдВ рдХрд╛ рдЙрддреНрддрд░рд╛рдзрд┐рдХрд╛рд░реА рд╣реИред рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рд╕реЗрдЯ рдХрд░рдирд╛ рдХрд╛рдлреА рдЬрдЯрд┐рд▓ рд╣реИ. рдЖрдкрдХреЛ рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд рдХреНрд▓рд╛рдЗрдВрдЯ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдХрдИ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдкрд░ рд╕рдорд░реНрдерд┐рдд
  • рдИрдПрдкреА-рдЯреАрдЯреАрдПрд▓рдПрд╕ - рдХрдИ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдкрд░ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рд╕рдорд░реНрдерд┐рдд, рдХреЗрд╡рд▓ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╕рд░реНрд╡рд░ рдкрд░ рдкреАрдХреЗрдЖрдИ рдкреНрд░рдорд╛рдгрдкрддреНрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдЪреНрдЫреА рд╕реБрд░рдХреНрд╖рд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ
  • EAP-MD5 рдПрдХ рдЕрдиреНрдп рдЦреБрд▓рд╛ рдорд╛рдирдХ рд╣реИред рдиреНрдпреВрдирддрдо рд╕реБрд░рдХреНрд╖рд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ. рдЕрд╕реБрд░рдХреНрд╖рд┐рдд, рдкрд╛рд░рд╕реНрдкрд░рд┐рдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдФрд░ рдХреБрдВрдЬреА рдкреАрдврд╝реА рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ
  • EAP-IKEv2 - рдЗрдВрдЯрд░рдиреЗрдЯ рдХреБрдВрдЬреА рдПрдХреНрд╕рдЪреЗрдВрдЬ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╕рдВрд╕реНрдХрд░рдг 2 рдкрд░ рдЖрдзрд╛рд░рд┐рддред рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ рд╕рд░реНрд╡рд░ рдХреЗ рдмреАрдЪ рдкрд╛рд░рд╕реНрдкрд░рд┐рдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдФрд░ рд╕рддреНрд░ рдХреБрдВрдЬреА рд╕реНрдерд╛рдкрдирд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ
  • PEAP рдПрдХ рдЦреБрд▓реЗ рдорд╛рдирдХ рдХреЗ рд░реВрдк рдореЗрдВ CISCO, Microsoft рдФрд░ RSA Security рдХреЗ рдмреАрдЪ рдПрдХ рд╕рдВрдпреБрдХреНрдд рд╕рдорд╛рдзрд╛рди рд╣реИред рдЙрддреНрдкрд╛рджреЛрдВ рдореЗрдВ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рдЙрдкрд▓рдмреНрдз, рдмрд╣реБрдд рдЕрдЪреНрдЫреА рд╕реБрд░рдХреНрд╖рд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдИрдПрдкреА-рдЯреАрдЯреАрдПрд▓рдПрд╕ рдХреЗ рд╕рдорд╛рди, рдХреЗрд╡рд▓ рд╕рд░реНрд╡рд░-рд╕рд╛рдЗрдб рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ
  • PEAPv0/EAP-MSCHAPv2 - EAP-TLS рдХреЗ рдмрд╛рдж, рдпрд╣ рджреБрдирд┐рдпрд╛ рдореЗрдВ рджреВрд╕рд░рд╛ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдиреЗ рд╡рд╛рд▓рд╛ рдорд╛рдирдХ рд╣реИред Microsoft, Cisco, Apple, Linux рдореЗрдВ рдХреНрд▓рд╛рдЗрдВрдЯ-рд╕рд░реНрд╡рд░ рд╕рдВрдмрдВрдз рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
  • PEAPv1/EAP-GTC - PEAPv0/EAP-MSCHAPv2 рдХреЗ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ рд╕рд┐рд╕реНрдХреЛ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ред рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдбреЗрдЯрд╛ рдХреЛ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рд╕реБрд░рдХреНрд╖рд┐рдд рдирд╣реАрдВ рд░рдЦрддрд╛. Windows OS рдкрд░ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ
  • EAP-FAST, LEAP рдХреА рдХрдорд┐рдпреЛрдВ рдХреЛ рджреВрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рд╕реНрдХреЛ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╕рд┐рдд рдПрдХ рд╡рд┐рдзрд┐ рд╣реИред рд╕рдВрд░рдХреНрд╖рд┐рдд рдПрдХреНрд╕реЗрд╕ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ (рдкреАрдПрд╕реА) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдмрд┐рд▓реНрдХреБрд▓ рдЕрдзреВрд░рд╛

рдЗрд╕ рд╕рд╛рд░реА рд╡рд┐рд╡рд┐рдзрддрд╛ рдореЗрдВ рд╕реЗ, рд╡рд┐рдХрд▓реНрдк рдЕрднреА рднреА рдмрдврд╝рд┐рдпрд╛ рдирд╣реАрдВ рд╣реИред рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╡рд┐рдзрд┐ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ: рдЕрдЪреНрдЫреА рд╕реБрд░рдХреНрд╖рд╛, рд╕рднреА рдЙрдкрдХрд░рдгреЛрдВ рдкрд░ рд╕рдорд░реНрдерди (рд╡рд┐рдВрдбреЛрдЬ 10, рдореИрдХрдУрдПрд╕, рд▓рд┐рдирдХреНрд╕, рдПрдВрдбреНрд░реЙрдЗрдб, рдЖрдИрдУрдПрд╕) рдФрд░, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЬрд┐рддрдирд╛ рд╕рд░рд▓ рдЙрддрдирд╛ рдмреЗрд╣рддрд░ред рдЗрд╕рд▓рд┐рдП, рд╡рд┐рдХрд▓реНрдк рдкреАрдПрдкреА рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд╕рд╛рде рдИрдПрдкреА-рдЯреАрдЯреАрдПрд▓рдПрд╕ рдкрд░ рдЧрд┐рд░ рдЧрдпрд╛ред
рдкреНрд░рд╢реНрди рдЙрда рд╕рдХрддрд╛ рд╣реИ - рдкреАрдПрдкреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдХрд░реЗрдВ? рдЖрдЦрд╝рд┐рд░рдХрд╛рд░, рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдкрд╛рда рдореЗрдВ рдкрд╛рд╕рд╡рд░реНрдб рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ?

рд╣рд╛рдБ рдпрд╣ рд╕рд╣реА рд╣реИред FreeRadius рдФрд░ FreeIPA рдХреЗ рдмреАрдЪ рд╕рдВрдЪрд╛рд░ рдмрд┐рд▓реНрдХреБрд▓ рдЗрд╕реА рддрд░рд╣ рд╣реЛрдЧрд╛ред рдбрд┐рдмрдЧ рдореЛрдб рдореЗрдВ, рдЖрдк рдЯреНрд░реИрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рдХреИрд╕реЗ рднреЗрдЬреЗ рдЬрд╛рддреЗ рд╣реИрдВред рд╣рд╛рдВ, рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЬрд╛рдиреЗ рджреЗрдВ, рдХреЗрд╡рд▓ рдЖрдкрдХреЗ рдкрд╛рд╕ FreeRadius рд╕рд░реНрд╡рд░ рддрдХ рдкрд╣реБрдВрдЪ рд╣реИред

рдЖрдк рдИрдПрдкреА-рдЯреАрдЯреАрдПрд▓рдПрд╕ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╣рд╛рдВ

рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕

рд╣рдо FreeRadius рдХреЛ CentOS 7.6 рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░реЗрдВрдЧреЗред рдпрд╣рд╛рдВ рдХреБрдЫ рднреА рдЬрдЯрд┐рд▓ рдирд╣реАрдВ рд╣реИ, рд╣рдо рдЗрд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рддрд░реАрдХреЗ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВред

yum install freeradius freeradius-utils freeradius-ldap -y

рдкреИрдХреЗрдЬреЛрдВ рдореЗрдВ рд╕реЗ, рд╕рдВрд╕реНрдХрд░рдг 3.0.13 рд╕реНрдерд╛рдкрд┐рдд рд╣реИред рдмрд╛рдж рд╡рд╛рд▓реЗ рдХреЛ рдпрд╣рд╛рдВ рд▓рд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ https://freeradius.org/

рдЗрд╕рдХреЗ рдмрд╛рдж FreeRadius рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред рдЖрдк /etc/raddb/users рдореЗрдВ рд▓рд╛рдЗрди рдХреЛ рдЕрдирдХрдореНрдореЗрдВрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

steve   Cleartext-Password := "testing"

рдбрд┐рдмрдЧ рдореЛрдб рдореЗрдВ рд╕рд░реНрд╡рд░ рдореЗрдВ рд▓реЙрдиреНрдЪ рдХрд░реЗрдВ

freeradius -X

рдФрд░ рд▓реЛрдХрд▓рд╣реЛрд╕реНрдЯ рд╕реЗ рдПрдХ рдЯреЗрд╕реНрдЯ рдХрдиреЗрдХреНрд╢рди рдмрдирд╛рдПрдВ

radtest steve testing 127.0.0.1 1812 testing123

рд╣рдореЗрдВ рдЬрд╡рд╛рдм рдорд┐рд▓рд╛ 115:127.0.0.1 рд╕реЗ 1812:127.0.0.1 рд▓рдВрдмрд╛рдИ 56081 рддрдХ рдПрдХреНрд╕реЗрд╕-рд╕реНрд╡реАрдХрд╛рд░ рдЖрдИрдбреА 20 рдкреНрд░рд╛рдкреНрдд рд╣реБрдИ, рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реИред рдЖрдЧреЗ рдмрдврд╝реЛред

рдореЙрдбреНрдпреВрд▓ рдХрдиреЗрдХреНрдЯ рдХрд░рдирд╛ ldap.

ln -s /etc/raddb/mods-available/ldap /etc/raddb/mods-enabled/ldap

рдФрд░ рд╣рдо рдЗрд╕реЗ рддреБрд░рдВрдд рдмрджрд▓ рджреЗрдВрдЧреЗ. FreeIPA рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ FreeRadius рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ

рдореЙрдб-рд╕рдХреНрд╖рдо/рдПрд▓рдбреАрдПрдкреА

ldap {
server="ldap://ldap.server.com"
port=636
start_tls=yes
identity="uid=admin,cn=users,dc=server,dc=com"
password=**********
base_dn="cn=users,dc=server,dc=com"
set_auth_type=yes
...
user {
base_dn="${..base_dn}"
filter="(uid=%{%{Stripped-User-Name}:-%{User-Name}})"
}
...

рддреНрд░рд┐рдЬреНрдпрд╛ рд╕рд░реНрд╡рд░ рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХрд░реЗрдВ рдФрд░ рдПрд▓рдбреАрдПрдкреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВ:

radtest user_ldap password_ldap localhost 1812 testing123

рдИрдПрдкреА рдХрд╛ рд╕рдВрдкрд╛рджрди рдореЙрдб-рд╕рдХреНрд╖рдо/рдИрдИрдкреА
рдпрд╣рд╛рдВ рд╣рдо eap рдХреЗ рджреЛ рдЙрджрд╛рд╣рд░рдг рдЬреЛрдбрд╝реЗрдВрдЧреЗред рд╡реЗ рдХреЗрд╡рд▓ рдкреНрд░рдорд╛рдгрдкрддреНрд░реЛрдВ рдФрд░ рдЪрд╛рдмрд┐рдпреЛрдВ рдореЗрдВ рднрд┐рдиреНрди рд╣реЛрдВрдЧреЗред рдореИрдВ рдиреАрдЪреЗ рд╕рдордЭрд╛рдКрдВрдЧрд╛ рдХрд┐ рдпрд╣ рд╕рдЪ рдХреНрдпреЛрдВ рд╣реИред

рдореЙрдб-рд╕рдХреНрд╖рдо/рдИрдИрдкреА

eap eap-client {                                                                                                                                                                                                                           default_eap_type = ttls                                                                                                                                                                                                                 timer_expire = 60                                                                                                                                                                                                                       ignore_unknown_eap_types = no                                                                                                                                                                                                          cisco_accounting_username_bug = no                                                                                                                                                                                                      max_sessions = ${max_requests}
           tls-config tls-common {
           private_key_file = ${certdir}/fisrt.key
           certificate_file = ${certdir}/first.crt
           dh_file = ${certdir}/dh
           ca_path = ${cadir}
           cipher_list = "HIGH"
           cipher_server_preference = no
           ecdh_curve = "prime256v1"
           check_crl = no
           }
                                                                                                                                                                                                                                                                                                                                                                                                                                                 
           ttls {
           tls = tls-common
           default_eap_type = md5
           copy_request_to_tunnel = no
           use_tunneled_reply = yes
           virtual_server = "inner-tunnel"
           }
}
eap eap-guest {
default_eap_type = ttls                                                                                                                                                                                                                 timer_expire = 60                                                                                                                                                                                                                       ignore_unknown_eap_types = no                                                                                                                                                                                                          cisco_accounting_username_bug = no                                                                                                                                                                                                      max_sessions = ${max_requests}
           tls-config tls-common {
           private_key_passwotd=blablabla
           private_key_file = ${certdir}/server.key
           certificate_file = ${certdir}/server.crt
           dh_file = ${certdir}/dh
           ca_path = ${cadir}
           cipher_list = "HIGH"
           cipher_server_preference = no
           ecdh_curve = "prime256v1"
           check_crl = no
           }
                                                                                                                                                                                                                                                                                                                                                                                                                                                 
           ttls {
           tls = tls-common
           default_eap_type = md5
           copy_request_to_tunnel = no
           use_tunneled_reply = yes
           virtual_server = "inner-tunnel"
           }
}

рдЖрдЧреЗ рд╣рдо рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рд╕рд╛рдЗрдЯ-рд╕рдХреНрд╖рдо/рдбрд┐рдлрд╝реЙрд▓реНрдЯ. рдореБрдЭреЗ рдЕрдзрд┐рдХреГрдд рдФрд░ рдкреНрд░рдорд╛рдгрд┐рдд рдЕрдиреБрднрд╛рдЧреЛрдВ рдореЗрдВ рд░реБрдЪрд┐ рд╣реИред

рд╕рд╛рдЗрдЯ-рд╕рдХреНрд╖рдо/рдбрд┐рдлрд╝реЙрд▓реНрдЯ

authorize {
  filter_username
  preprocess
  if (&User-Name == "guest") {
   eap-guest {
       ok = return
   }
  }
  elsif (&User-Name == "client") {
    eap-client {
       ok = return 
    }
  }
  else {
    eap-guest {
       ok = return
    }
  }
  ldap
  if ((ok || updated) && User-Password) {
    update {
        control:Auth-Type := ldap
    }
  }
  expiration
  logintime
  pap
  }

authenticate {
  Auth-Type LDAP {
    ldap
  }
  Auth-Type eap-guest {
    eap-guest
  }
  Auth-Type eap-client {
    eap-client
  }
  pap
}

рдЕрдзрд┐рдХреГрдд рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рд╣рдо рдЙрди рд╕рднреА рдореЙрдбреНрдпреВрд▓ рдХреЛ рд╣рдЯрд╛ рджреЗрддреЗ рд╣реИрдВ рдЬрд┐рдирдХреА рд╣рдореЗрдВ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рд╣рдо рдХреЗрд╡рд▓ ldap рдЫреЛрдбрд╝рддреЗ рд╣реИрдВред рдЙрдкрдпреЛрдХреНрддрд╛рдирд╛рдо рджреНрд╡рд╛рд░рд╛ рдЧреНрд░рд╛рд╣рдХ рд╕рддреНрдпрд╛рдкрди рдЬреЛрдбрд╝реЗрдВ. рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рд╣рдордиреЗ рдКрдкрд░ eap рдХреЗ рджреЛ рдЙрджрд╛рд╣рд░рдг рдЬреЛрдбрд╝реЗ рд╣реИрдВред

рдорд▓реНрдЯреА рдИрдПрдкреАрддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдХреБрдЫ рдЙрдкрдХрд░рдгреЛрдВ рдХреЛ рдХрдиреЗрдХреНрдЯ рдХрд░рддреЗ рд╕рдордп рд╣рдо рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ рдФрд░ рдбреЛрдореЗрди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВрдЧреЗред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдкреНрд░рд╛рдзрд┐рдХрд╛рд░реА рд╕реЗ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдФрд░ рдХреБрдВрдЬреА рд╣реИред рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдпрд╣ рдХрдиреЗрдХреНрд╢рди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкреНрд░рддреНрдпреЗрдХ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рд╕реНрд╡-рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдлреЗрдВрдХрдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд╕рд░рд▓ рд╣реИред рд▓реЗрдХрд┐рди рд╕реНрд╡-рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреНрд░рдорд╛рдгрдкрддреНрд░реЛрдВ рдХреЗ рдмрд┐рдирд╛ рднреА рдирд┐рдХрд▓рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рдерд╛ред рд╕реИрдорд╕рдВрдЧ рдбрд┐рд╡рд╛рдЗрд╕ рдФрд░ рдПрдВрдбреНрд░реЙрдЗрдб =<6 рд╕рдВрд╕реНрдХрд░рдг рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рд╣рдо рд╕реНрд╡-рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреНрд░рдорд╛рдгрдкрддреНрд░реЛрдВ рдХреЗ рд╕рд╛рде рдЙрдирдХреЗ рд▓рд┐рдП рдИрдИрдкреА-рдЧреЗрд╕реНрдЯ рдХрд╛ рдПрдХ рдЕрд▓рдЧ рдЙрджрд╛рд╣рд░рдг рдмрдирд╛рддреЗ рд╣реИрдВред рдЕрдиреНрдп рд╕рднреА рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рд╣рдо рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХреЗ рд╕рд╛рде рдИрдИрдкреА-рдХреНрд▓рд╛рдЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред рдбрд┐рд╡рд╛рдЗрд╕ рдХрдиреЗрдХреНрдЯ рдХрд░рддреЗ рд╕рдордп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдЕрдЬреНрдЮрд╛рдд рдлрд╝реАрд▓реНрдб рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдХреЗрд╡рд▓ 3 рдорд╛рдиреЛрдВ рдХреА рдЕрдиреБрдорддрд┐ рд╣реИ: рдЕрддрд┐рдерд┐, рдЧреНрд░рд╛рд╣рдХ рдФрд░ рдПрдХ рдЦрд╛рд▓реА рдлрд╝реАрд▓реНрдбред рдмрд╛рдХреА рд╕рдм рддреНрдпрд╛рдЧ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ. рдЗрд╕реЗ рдиреАрддрд┐рдпреЛрдВ рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ. рдореИрдВ рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рдж рдПрдХ рдЙрджрд╛рд╣рд░рдг рджреВрдБрдЧрд╛ред

рдЖрдЗрдП рдЗрд╕рдореЗрдВ рдЕрдзрд┐рдХреГрдд рдФрд░ рдкреНрд░рдорд╛рдгрд┐рдд рдЕрдиреБрднрд╛рдЧреЛрдВ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ рд╕рд╛рдЗрдЯ-рд╕рдХреНрд╖рдо/рдЖрдВрддрд░рд┐рдХ-рд╕реБрд░рдВрдЧ

рд╕рд╛рдЗрдЯ-рд╕рдХреНрд╖рдо/рдЖрдВрддрд░рд┐рдХ-рд╕реБрд░рдВрдЧ

authorize {
  filter_username
  filter_inner_identity
  update control {
   &Proxy-To-Realm := LOCAL
  }
  ldap
  if ((ok || updated) && User-Password) {
    update {
        control:Auth-Type := ldap
    }
  }
  expiration
  digest
  logintime
  pap
  }

authenticate {
  Auth-Type eap-guest {
    eap-guest
  }
  Auth-Type eap-client {
    eap-client
  }
  Auth-Type PAP {
    pap
  }
  ldap
}

рдЗрд╕рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рдиреАрддрд┐рдпреЛрдВ рдореЗрдВ рдпрд╣ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдЕрдЬреНрдЮрд╛рдд рд▓реЙрдЧрд┐рди рдХреЗ рд▓рд┐рдП рдХрд┐рди рдирд╛рдореЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╕рдВрдкрд╛рджрди рдиреАрддрд┐.d/рдлрд╝рд┐рд▓реНрдЯрд░.

рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рд╕рдорд╛рди рдкрдВрдХреНрддрд┐рдпрд╛рдБ рдвреВрдВрдврдиреА рд╣реЛрдВрдЧреА:

if (&outer.request:User-Name !~ /^(anon|@)/) {
  update request {
    Module-Failure-Message = "User-Name is not anonymized"
  }
  reject
}

рдФрд░ рдиреАрдЪреЗ elsif рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рдорд╛рди рдЬреЛрдбрд╝реЗрдВ:

elsif (&outer.request:User-Name !~ /^(guest|client|@)/) {
  update request {
    Module-Failure-Message = "User-Name is not anonymized"
  }
  reject
}

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

рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреИрд░рд╛рдореАрдЯрд░ рдмрджрд▓рдирд╛ ca.cnf.

ca.cnf


...
default_days = 3650
default_md = sha256
...
input_password = blablabla
output_password = blablabla
...
countryName = RU
stateOrProvinceNmae = State
localityNmae = City
organizationName = NONAME
emailAddress = [email protected]
commonName = "CA FreeRadius"

рд╣рдо рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рдорд╛рди рдорд╛рди рд▓рд┐рдЦрддреЗ рд╣реИрдВ рд╕рд░реНрд╡рд░.cnf. рд╣рдо рд╣реА рдмрджрд▓рддреЗ рд╣реИрдВ
рд╕рд╛рдзрд╛рд░рдг рдирд╛рдо:

рд╕рд░реНрд╡рд░.cnf


...
default_days = 3650
default_md = sha256
...
input_password = blablabla
output_password = blablabla
...
countryName = RU
stateOrProvinceNmae = State
localityNmae = City
organizationName = NONAME
emailAddress = [email protected]
commonName = "Server Certificate FreeRadius"

рд╣рдо рдмрдирд╛рддреЗ рд╣реИрдВ:

make

рддреИрдпрд╛рд░ред рдкреНрд░рд╛рдкреНрдд рд╕рд░реНрд╡рд░.crt ╨╕ рд╕рд░реНрд╡рд░.рдХреБрдВрдЬреА рд╣рдо рдкрд╣рд▓реЗ рд╣реА рдКрдкрд░ eap-gust рдореЗрдВ рд░рдЬрд┐рд╕реНрдЯрд░ рдХрд░ рдЪреБрдХреЗ рд╣реИрдВред

рдФрд░ рдЕрдВрдд рдореЗрдВ, рдЖрдЗрдП рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЕрдкрдиреЗ рдПрдХреНрд╕реЗрд╕ рдкреЙрдЗрдВрдЯ рдЬреЛрдбрд╝реЗрдВ рдЧреНрд░рд╛рд╣рдХ. рдореЗрд░реЗ рдкрд╛рд╕ рдЙрдирдореЗрдВ рд╕реЗ 7 рд╣реИрдВред рдкреНрд░рддреНрдпреЗрдХ рдмрд┐рдВрджреБ рдХреЛ рдЕрд▓рдЧ рд╕реЗ рди рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдХреЗрд╡рд▓ рдЙрд╕ рдиреЗрдЯрд╡рд░реНрдХ рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░реЗрдВрдЧреЗ рдЬрд┐рд╕рдореЗрдВ рд╡реЗ рд╕реНрдерд┐рдд рд╣реИрдВ (рдореЗрд░реЗ рдкрд╣реБрдВрдЪ рдмрд┐рдВрджреБ рдПрдХ рдЕрд▓рдЧ рд╡реАрдПрд▓рдПрдПрди рдореЗрдВ рд╣реИрдВ)ред

client APs {
ipaddr = 192.168.100.0/24
password = password_AP
}

рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА рдирд┐рдпрдВрддреНрд░рдХ

рд╣рдо рдирд┐рдпрдВрддреНрд░рдХ рдкрд░ рдПрдХ рдЕрд▓рдЧ рдиреЗрдЯрд╡рд░реНрдХ рдмрдврд╝рд╛рддреЗ рд╣реИрдВред рдЗрд╕реЗ 192.168.2.0/24 рд╣реЛрдиреЗ рджреЗрдВ
рд╕реЗрдЯрд┐рдВрдЧреНрд╕ -> рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдкрд░ рдЬрд╛рдПрдБред рдЖрдЗрдП рдПрдХ рдирдпрд╛ рдмрдирд╛рдПрдВ:

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╣рдо рд░реЗрдбрд┐рдпрд╕ рд╕рд░реНрд╡рд░ рдХрд╛ рдкрддрд╛ рдФрд░ рдкреЛрд░реНрдЯ рдФрд░ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдкрд╛рд╕рд╡рд░реНрдб рд▓рд┐рдЦрддреЗ рд╣реИрдВ client.conf:

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рдПрдХ рдирдпрд╛ рд╡рд╛рдпрд░рд▓реЗрд╕ рдиреЗрдЯрд╡рд░реНрдХ рдирд╛рдо рдмрдирд╛рдПрдВ. рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╡рд┐рдзрд┐ рдХреЗ рд░реВрдк рдореЗрдВ WPA-EAP (рдПрдВрдЯрд░рдкреНрд░рд╛рдЗрдЬрд╝) рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ рдФрд░ рдмрдирд╛рдИ рдЧрдИ рддреНрд░рд┐рдЬреНрдпрд╛ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ:

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╣рдо рд╕рдм рдХреБрдЫ рдмрдЪрд╛рддреЗ рд╣реИрдВ, рдЙрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВред

рдЧреНрд░рд╛рд╣рдХ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛

рдЖрдЗрдП рд╕рдмрд╕реЗ рдХрдард┐рди рднрд╛рдЧ рд╕реЗ рд╢реБрд░реБрдЖрдд рдХрд░реЗрдВ!

Windows 10

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

рдЗрд╕рдХреЗ рдмрд╛рдж рдЖрдкрдХреЛ рдПрдХ рдирдпрд╛ рдХрдиреЗрдХреНрд╢рди рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛. рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдиреЗрдЯрд╡рд░реНрдХ рдФрд░ рдЗрдВрдЯрд░рдиреЗрдЯ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ -> рдиреЗрдЯрд╡рд░реНрдХ рдФрд░ рд╕рд╛рдЭрд╛рдХрд░рдг рдХреЗрдВрджреНрд░ -> рдПрдХ рдирдпрд╛ рдХрдиреЗрдХреНрд╢рди рдпрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдмрдирд╛рдПрдВ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ рдкрд░ рдЬрд╛рдПрдВ:

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╣рдо рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдиреЗрдЯрд╡рд░реНрдХ рдирд╛рдо рджрд░реНрдЬ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╕реБрд░рдХреНрд╖рд╛ рдкреНрд░рдХрд╛рд░ рдмрджрд▓рддреЗ рд╣реИрдВред рдлрд┐рд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдХрдиреЗрдХреНрд╢рди рд╕реЗрдЯрд┐рдВрдЧ рдмрджрд▓реЗрдВ рдФрд░ рд╕реБрд░рдХреНрд╖рд╛ рдЯреИрдм рдореЗрдВ, рдиреЗрдЯрд╡рд░реНрдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг - рдИрдПрдкреА-рдЯреАрдЯреАрдПрд▓рдПрд╕ рдЪреБрдиреЗрдВред

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдЬрд╛рдПрдВ, рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреА рдЧреЛрдкрдиреАрдпрддрд╛ рд╕реЗрдЯ рдХрд░реЗрдВ - рдЧреНрд░рд╛рд╣рдХ. рдПрдХ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдкреНрд░рдорд╛рдгрди рдкреНрд░рд╛рдзрд┐рдХрд╛рд░реА рдХреЗ рд░реВрдк рдореЗрдВ, рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдЬреЛрдбрд╝реЗ рдЧрдП рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ, "рдпрджрд┐ рд╕рд░реНрд╡рд░ рдЕрдзрд┐рдХреГрдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рддреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдирд┐рдордВрддреНрд░рдг рдЬрд╛рд░реА рди рдХрд░реЗрдВ" рдмреЙрдХреНрд╕ рдХреЛ рдЪреЗрдХ рдХрд░реЗрдВ рдФрд░ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╡рд┐рдзрд┐ - рдкреНрд▓реЗрдирдЯреЗрдХреНрд╕реНрдЯ рдкрд╛рд╕рд╡рд░реНрдб (рдкреАрдПрдкреА) рдХрд╛ рдЪрдпрди рдХрд░реЗрдВред

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рдЗрд╕рдХреЗ рдмрд╛рдж, рдЕрддрд┐рд░рд┐рдХреНрдд рдкреИрд░рд╛рдореАрдЯрд░ рдкрд░ рдЬрд╛рдПрдВ рдФрд░ "рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдореЛрдб рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ" рдмреЙрдХреНрд╕ рдХреЛ рдЪреЗрдХ рдХрд░реЗрдВред "рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░рдорд╛рдгреАрдХрд░рдг" рдЪреБрдиреЗрдВ рдФрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рд╕рд╣реЗрдЬреЗрдВ. рдпрд╣рд╛рдВ рдЖрдкрдХреЛ username_ldap рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб_ldap рджрд░реНрдЬ рдХрд░рдирд╛ рд╣реЛрдЧрд╛

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╣рдо рд╕рдм рдХреБрдЫ рд╕рд╣реЗрдЬрддреЗ рд╣реИрдВ, рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ, рдмрдВрдж рдХрд░рддреЗ рд╣реИрдВред рдЖрдк рдХрд┐рд╕реА рдирдпреЗ рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗ рдЬреБрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ.

Linux

рдореИрдВрдиреЗ Ubuntu 18.04, 18.10, Fedora 29, 30 рдкрд░ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ред

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЕрдкрдиреЗ рд▓рд┐рдП рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ. рдореБрдЭреЗ рд▓рд┐рдирдХреНрд╕ рдореЗрдВ рдпрд╣ рдирд╣реАрдВ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдХреНрдпрд╛ рд╕рд┐рд╕реНрдЯрдо рд╕рд░реНрдЯрд┐рдлрд┐рдХреЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ рдпрд╛ рдХреНрдпрд╛ рдРрд╕рд╛ рдХреЛрдИ рд╕реНрдЯреЛрд░ рд╣реИред

рд╣рдо рдбреЛрдореЗрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬреБрдбрд╝реЗрдВрдЧреЗред рдЗрд╕рд▓рд┐рдП, рд╣рдореЗрдВ рдЙрд╕ рдкреНрд░рдорд╛рдгрди рдкреНрд░рд╛рдзрд┐рдХрд╛рд░реА рд╕реЗ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬрд┐рд╕рд╕реЗ рд╣рдорд╛рд░рд╛ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЦрд░реАрджрд╛ рдЧрдпрд╛ рдерд╛ред

рд╕рднреА рдХрдиреЗрдХреНрд╢рди рдПрдХ рд╣реА рд╡рд┐рдВрдбреЛ рдореЗрдВ рдмрдирд╛рдпреЗ рдЧрдпреЗ рд╣реИрдВред рд╣рдорд╛рд░рд╛ рдиреЗрдЯрд╡рд░реНрдХ рдЪреБрдиреЗрдВ:

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рдЕрдирд╛рдо - рдЧреНрд░рд╛рд╣рдХ
рдбреЛрдореЗрди - рд╡рд╣ рдбреЛрдореЗрди рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛

Android

рдЧреИрд░-рд╕реИрдорд╕рдВрдЧ

рд╕рдВрд╕реНрдХрд░рдг 7 рд╕реЗ, рд╡рд╛рдИрдлрд╛рдИ рдХрдиреЗрдХреНрдЯ рдХрд░рддреЗ рд╕рдордп, рдЖрдк рдХреЗрд╡рд▓ рдбреЛрдореЗрди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдХреЗ рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рдбреЛрдореЗрди - рд╡рд╣ рдбреЛрдореЗрди рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛
рдЕрдирд╛рдо - рдЧреНрд░рд╛рд╣рдХ

рд╕реИрдорд╕рдВрдЧ

рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдКрдкрд░ рд▓рд┐рдЦрд╛ рд╣реИ, рд╕реИрдорд╕рдВрдЧ рдбрд┐рд╡рд╛рдЗрд╕ рд╡рд╛рдИрдлрд╛рдИ рдХрдиреЗрдХреНрдЯ рдХрд░рддреЗ рд╕рдордп рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ, рдФрд░ рдЙрдирдХреЗ рдкрд╛рд╕ рдбреЛрдореЗрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдирд╣реАрдВ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдЖрдкрдХреЛ рдкреНрд░рдорд╛рдгрди рдкреНрд░рд╛рдзрд┐рдХрд╛рд░реА рдХрд╛ рд░реВрдЯ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ (ca.pem, рдЗрд╕реЗ рд░реЗрдбрд┐рдпрд╕ рд╕рд░реНрд╡рд░ рд╕реЗ рд▓реЗрдВ)ред рдпрд╣реАрдВ рдкрд░ рд╕реНрд╡-рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХреЛ рдЕрдкрдиреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ рдФрд░ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░реЗрдВред

рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЖрдкрдХреЛ рд╕реНрдХреНрд░реАрди рдЕрдирд▓реЙрдХ рдкреИрдЯрд░реНрди, рдкрд┐рди рдХреЛрдб рдпрд╛ рдкрд╛рд╕рд╡рд░реНрдб рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдпрджрд┐ рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╕реЗрдЯ рдирд╣реАрдВ рд╣реИ:

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рдореИрдВрдиреЗ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЬрдЯрд┐рд▓ рд╡рд┐рдХрд▓реНрдк рджрд┐рдЦрд╛рдпрд╛ред рдЕрдзрд┐рдХрд╛рдВрд╢ рдЙрдкрдХрд░рдгреЛрдВ рдкрд░, рдмрд╕ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдП рдЧрдП рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред

рдЬрдм рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд╕реНрдерд╛рдкрд┐рдд рд╣реЛ рдЬрд╛рдП, рддреЛ рдЖрдк рдХрдиреЗрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ:

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рдкреНрд░рдорд╛рдгрдкрддреНрд░ - рдЬрд┐рд╕реЗ рдЖрдкрдиреЗ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд┐рдпрд╛ рд╣реИ рдЙрд╕реЗ рдЗрдВрдЧрд┐рдд рдХрд░реЗрдВ
рдЕрдирд╛рдо рдЙрдкрдпреЛрдХреНрддрд╛ - рдЕрддрд┐рдерд┐

macOS

Apple рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗрд╡рд▓ рдЖрдЙрдЯ рдСрдл рдж рдмреЙрдХреНрд╕ EAP-TLS рд╕реЗ рдХрдиреЗрдХреНрдЯ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рдЖрдкрдХреЛ рдЙрдиреНрд╣реЗрдВ рдПрдХ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдПрдХ рдЕрд▓рдЧ рдХрдиреЗрдХреНрд╢рди рд╡рд┐рдзрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдРрдкреНрдкрд▓ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрдЯрд░ 2 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рддрджрдиреБрд╕рд╛рд░, рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рдЗрд╕реЗ рдЕрдкрдиреЗ рдореИрдХ рдкрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдПрдХ рдирдпрд╛ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рд╡рд╛рдИрдлрд╛рдИ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ред

рдПрдкреНрдкрд▓ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрдЯрд░рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рдпрд╣рд╛рдВ рд╣рдо рдЕрдкрдиреЗ рдиреЗрдЯрд╡рд░реНрдХ рдХрд╛ рдирд╛рдо рджрд░реНрд╢рд╛рддреЗ рд╣реИрдВ
рд╕реБрд░рдХреНрд╖рд╛ рдкреНрд░рдХрд╛рд░ - WPA2 рдПрдВрдЯрд░рдкреНрд░рд╛рдЗрдЬрд╝
рд╕реНрд╡реАрдХреГрдд рдИрдПрдкреА рдкреНрд░рдХрд╛рд░ - рдЯреАрдЯреАрдПрд▓рдПрд╕
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб - рдЦрд╛рд▓реА рдЫреЛрдбрд╝реЗрдВ
рдЖрдВрддрд░рд┐рдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг - рдкреАрдПрдкреА
рдмрд╛рд╣рд░реА рдкрд╣рдЪрд╛рди - рдЧреНрд░рд╛рд╣рдХ

рдЯреНрд░рд╕реНрдЯ рдЯреИрдм. рдпрд╣рд╛рдВ рд╣рдо рдЕрдкрдирд╛ рдбреЛрдореЗрди рджрд░реНрд╢рд╛рддреЗ рд╣реИрдВ

рд╕рднреАред рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдХреЛ рдбрд┐рд╡рд╛рдЗрд╕реЛрдВ рдореЗрдВ рд╕рд╣реЗрдЬрд╛, рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдФрд░ рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ

рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рддреИрдпрд╛рд░ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рдЗрд╕реЗ рдЕрдкрдиреЗ рдореИрдХ рдкрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рджреМрд░рд╛рди, рдЖрдкрдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛ usernmae_ldap рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб_ldap рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

iOS

рдпрд╣ рдкреНрд░рдХреНрд░рд┐рдпрд╛ macOS рдХреЗ рд╕рдорд╛рди рд╣реИред рдЖрдкрдХреЛ рдПрдХ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рдЖрдк macOS рдХреЗ рд▓рд┐рдП рдЙрд╕реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред Apple рдХреЙрдиреНрдлрд┐рдЧрд░реЗрдЯрд░ рдореЗрдВ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдХреИрд╕реЗ рдмрдирд╛рдПрдВ, рдЗрд╕рдХреЗ рд▓рд┐рдП рдКрдкрд░ рджреЗрдЦреЗрдВ)ред

рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ, рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░реЗрдВ, рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рджрд░реНрдЬ рдХрд░реЗрдВ, рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ:

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рд╡рд╛рдИрдлрд╝рд╛рдИ рдЙрджреНрдпрдоред рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ + рдлреНрд░реАрдЖрдИрдкреАрдП + рдпреВрдмрд┐рдХреНрд╡рд┐рдЯреА

рдмрд╕ рдЗрддрдирд╛ рд╣реАред рд╣рдордиреЗ рд░реЗрдбрд┐рдпрд╕ рд╕рд░реНрд╡рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛, рдЗрд╕реЗ FreeIPA рдХреЗ рд╕рд╛рде рд╕рд┐рдВрдХ рдХрд┐рдпрд╛, рдФрд░ Ubiquiti рдПрдХреНрд╕реЗрд╕ рдкреЙрдЗрдВрдЯреНрд╕ рдХреЛ WPA2-EAP рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛ред

рд╕рдВрднрд╛рд╡рд┐рдд рдкреНрд░рд╢реНрди

рдореЗрдВ: рдХрд┐рд╕реА рдХрд░реНрдордЪрд╛рд░реА рдХреЛ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓/рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХреИрд╕реЗ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░реЗрдВ?

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

рдореЗрдВ: MSCHAPv2 рд╡рд╛рд▓реА рдпреЛрдЬрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рди рдХрд░реЗрдВ? рдпрд╣ рдЕрдзрд┐рдХ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИ!

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

рдореЗрдВ: рдХреНрдпрд╛ рдореИрдХ рдкрддреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЙрдкрдХрд░рдгреЛрдВ рдХреЛ рдЕрдзрд┐рдХреГрдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ?

рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ: рдирд╣реАрдВ, рдпрд╣ рд╕реБрд░рдХреНрд╖рд┐рдд рдирд╣реАрдВ рд╣реИ, рдПрдХ рд╣рдорд▓рд╛рд╡рд░ рдореИрдХ рдкрддреЗ рдХреЛ рдзреЛрдЦрд╛ рджреЗ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдЗрд╕рд╕реЗ рднреА рдЕрдзрд┐рдХ, рдореИрдХ рдкрддреЗ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХрдИ рдЙрдкрдХрд░рдгреЛрдВ рдкрд░ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ

рдореЗрдВ: рдЖрдЦрд╝рд┐рд░ рдЗрди рд╕рднреА рдкреНрд░рдорд╛рдгрдкрддреНрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдХрд░реЗрдВ? рдЖрдк рдЙрдирдХреЗ рдмрд┐рдирд╛ рдХрдиреЗрдХреНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ: рд╕рд░реНрд╡рд░ рдХреЛ рдЕрдзрд┐рдХреГрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдорд╛рдгрдкрддреНрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╡реЗред рдХрдиреЗрдХреНрдЯ рдХрд░рддреЗ рд╕рдордп, рдбрд┐рд╡рд╛рдЗрд╕ рдЬрд╛рдВрдЪрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рд╕рд░реНрд╡рд░ рд╣реИ рдЬрд┐рд╕ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВред рдпрджрд┐ рдРрд╕рд╛ рд╣реИ, рддреЛ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдЖрдЧреЗ рдмрдврд╝рддрд╛ рд╣реИ; рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдХрдиреЗрдХреНрд╢рди рдмрдВрдж рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдЖрдк рдкреНрд░рдорд╛рдгрдкрддреНрд░реЛрдВ рдХреЗ рдмрд┐рдирд╛ рдХрдиреЗрдХреНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдХреЛрдИ рд╣рдорд▓рд╛рд╡рд░ рдпрд╛ рдкрдбрд╝реЛрд╕реА рдПрдХ рд░реЗрдбрд┐рдпрд╕ рд╕рд░реНрд╡рд░ рдФрд░ рд╣рдорд╛рд░реЗ рдШрд░ рдХреЗ рд╕рдорд╛рди рдирд╛рдо рд╡рд╛рд▓рд╛ рдПрдХ рдПрдХреНрд╕реЗрд╕ рдкреНрд╡рд╛рдЗрдВрдЯ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ, рддреЛ рд╡рд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рд░реЛрдХ рд╕рдХрддрд╛ рд╣реИ (рдпрд╣ рди рднреВрд▓реЗрдВ рдХрд┐ рд╡реЗ рд╕реНрдкрд╖реНрдЯ рдкрд╛рда рдореЗрдВ рдкреНрд░рд╕рд╛рд░рд┐рдд рд╣реЛрддреЗ рд╣реИрдВ) . рдФрд░ рдЬрдм рдПрдХ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рджреБрд╢реНрдорди рдЕрдкрдиреЗ рд▓реЙрдЧ рдореЗрдВ рдХреЗрд╡рд▓ рд╣рдорд╛рд░рд╛ рдХрд╛рд▓реНрдкрдирд┐рдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо - рдЕрддрд┐рдерд┐ рдпрд╛ рдЧреНрд░рд╛рд╣рдХ рдФрд░ рдПрдХ рдкреНрд░рдХрд╛рд░ рдХреА рддреНрд░реБрдЯрд┐ - рдЕрдЬреНрдЮрд╛рдд рд╕реАрдП рдкреНрд░рдорд╛рдгрдкрддреНрд░ рджреЗрдЦреЗрдЧрд╛ред

macOS рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рдФрд░рдЖрдорддреМрд░ рдкрд░, macOS рдкрд░, рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдкреБрдирдГ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдирд╛ рдЗрдВрдЯрд░рдиреЗрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддрд┐ рдореЛрдб рдореЗрдВ, рдореИрдХ рдХреЛ рд╡рд╛рдИрдлрд╛рдИ рд╕реЗ рдХрдиреЗрдХреНрдЯ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рди рддреЛ рд╣рдорд╛рд░рд╛ рдХреЙрд░реНрдкреЛрд░реЗрдЯ рд╡рд╛рдИрдлрд╛рдИ рдФрд░ рди рд╣реА рдЕрддрд┐рдерд┐ рдиреЗрдЯрд╡рд░реНрдХ рдпрд╣рд╛рдВ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдореИрдВрдиреЗ рдПрдХ рдФрд░ рдиреЗрдЯрд╡рд░реНрдХ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛, рд╕рд╛рдорд╛рдиреНрдп WPA2-PSK, рдХреЗрд╡рд▓ рддрдХрдиреАрдХреА рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП рдЫрд┐рдкрд╛ рд╣реБрдЖред рдпрд╛ рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рд╛рде рдмреВрдЯ рдХрд░рдиреЗ рдпреЛрдЧреНрдп USB рдлреНрд▓реИрд╢ рдбреНрд░рд╛рдЗрд╡ рднреА рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрдкрдХрд╛ рдореИрдХ 2015 рдХреЗ рдмрд╛рдж рдХрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдЗрд╕ рдлреНрд▓реИрд╢ рдбреНрд░рд╛рдЗрд╡ рдХреЗ рд▓рд┐рдП рдПрдХ рдПрдбреЙрдкреНрдЯрд░ рднреА рдвреВрдВрдврдирд╛ рд╣реЛрдЧрд╛)

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

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