рдЕрдВрддрд░реНрд░рд╛рд╖реНрдЯреНрд░реАрдп рдкреНрд░рддрд┐рдпреЛрдЧрд┐рддрд╛рдУрдВ рдПрд╕рдПрд╕рдПрдЪ рдФрд░ рд╕реВрдбреЛ рдХреЗ рд╡рд┐рдЬреЗрддрд╛ рдлрд┐рд░ рд╕реЗ рдордВрдЪ рдкрд░ рд╣реИрдВред рдкреНрд░рддрд┐рд╖реНрдард┐рдд рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХрдВрдбрдХреНрдЯрд░ рдХреЗ рдиреЗрддреГрддреНрд╡ рдореЗрдВ

рдРрддрд┐рд╣рд╛рд╕рд┐рдХ рд░реВрдк рд╕реЗ, sudo рдЕрдиреБрдорддрд┐рдпрд╛рдБ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд╕рд╛рдордЧреНрд░реА рджреНрд╡рд╛рд░рд╛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХреА рдЬрд╛рддреА рдереАрдВ /etc/sudoers.d ╨╕ visudo, рдФрд░ рдХреБрдВрдЬреА рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ ~/.ssh/authorized_keys. рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЬреИрд╕реЗ-рдЬреИрд╕реЗ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдБрдЪрд╛ рдмрдврд╝рддрд╛ рд╣реИ, рдЗрди рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреЛ рдХреЗрдВрджреНрд░реАрдп рд░реВрдк рд╕реЗ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЗрдЪреНрдЫрд╛ рд╣реЛрддреА рд╣реИред рдЖрдЬ рдХрдИ рд╕рдорд╛рдзрд╛рди рд╡рд┐рдХрд▓реНрдк рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ:

  • рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреНрд░рдмрдВрдзрди рдкреНрд░рдгрд╛рд▓реА - рдорд╣рд╛рд░рд╛рдЬ, рдХрдардкреБрддрд▓реА, Ansible, рдирдордХ
  • рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ + рдПрд╕рдПрд╕рдПрд╕рдбреА
  • рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдореИрдиреНрдпреБрдЕрд▓ рдлрд╝рд╛рдЗрд▓ рд╕рдВрдкрд╛рджрди рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рд╡рд┐рдХреГрддрд┐рдпрд╛рдБ

рдореЗрд░реА рд╡реНрдпрдХреНрддрд┐рдкрд░рдХ рд░рд╛рдп рдореЗрдВ, рдХреЗрдВрджреНрд░реАрдХреГрдд рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рдЕрднреА рднреА рдПрдХ рд╕рдВрдпреЛрдЬрди рд╣реИ рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ + рдПрд╕рдПрд╕рдПрд╕рдбреА. рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд▓рд╛рдн рд╣реИрдВ:

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

рдЖрдЬ рдХрд╛ рд╕реБрдЗрдЯ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдХрдиреЗрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдкрд┐рдд рд╣реЛрдЧрд╛ рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ + рдПрд╕рдПрд╕рдПрд╕рдбреА рдЕрдзрд┐рдХрд╛рд░ рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП sudo рдФрд░ рднрдВрдбрд╛рд░рдг рдПрд╕рдПрд╕рдПрдЪ рдПрдХ рд╣реА рднрдВрдбрд╛рд░ рдореЗрдВ рдХреБрдВрдЬрд┐рдпрд╛рдБред
рддреЛ, рд╣реЙрд▓ рдореЗрдВ рддрдирд╛рд╡рдкреВрд░реНрдг рд╢рд╛рдВрддрд┐ рдЫрд╛ рдЧрдИ, рдХрдВрдбрдХреНрдЯрд░ рдиреЗ рдЕрдкрдирд╛ рдбрдВрдбрд╛ рдЙрдард╛рдпрд╛ рдФрд░ рдСрд░реНрдХреЗрд╕реНрдЯреНрд░рд╛ рддреИрдпрд╛рд░ рд╣реЛ рдЧрдпрд╛ред
рдЪрд▓реЛ.

рдордИ:
тАФ рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдбреЛрдореЗрди testopf.local рд╡рд┐рдВрдбреЛрдЬрд╝ рд╕рд░реНрд╡рд░ 2012 R2 рдкрд░ред
тАФ Linux рд╣реЛрд╕реНрдЯ Centos 7 рдЪрд▓рд╛ рд░рд╣рд╛ рд╣реИ
- рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдПрд╕рдПрд╕рдПрд╕рдбреА
рджреЛрдиреЛрдВ рд╕рдорд╛рдзрд╛рди рд╕реНрдХреАрдорд╛ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рддреЗ рд╣реИрдВ рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛, рдЗрд╕рд▓рд┐рдП рд╣рдо рдПрдХ рдкрд░реАрдХреНрд╖рдг рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рд╕рдм рдХреБрдЫ рдЬрд╛рдВрдЪрддреЗ рд╣реИрдВ рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рд╣реА рдХрд╛рдордХрд╛рдЬреА рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХрд░рддреЗ рд╣реИрдВред рдореИрдВ рдпрд╣ рдиреЛрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рд╕рднреА рдкрд░рд┐рд╡рд░реНрддрди рд▓рдХреНрд╖рд┐рдд рд╣реИрдВ рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдХреЗрд╡рд▓ рдЖрд╡рд╢реНрдпрдХ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБ рдФрд░ рд╡рд░реНрдЧ рд╣реА рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред

рдХреНрд░рд┐рдпрд╛ 1: рдирд┐рдпрдВрддреНрд░рдг sudo рднреВрдорд┐рдХрд╛рдУрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛.

рд╕рд░реНрдХрд┐рдЯ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдЖрдкрдХреЛ рдирд╡реАрдирддрдо рд░рд┐рд▓реАрдЬрд╝ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдирд╛ рд╣реЛрдЧрд╛ sudo тАФ 1.8.27 рдЖрдЬ рддрдХред рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЕрдирдкреИрдХ рдХрд░реЗрдВ рдФрд░ рдХреЙрдкреА рдХрд░реЗрдВ рд╕реНрдХреАрдорд╛.рд╕рдХреНрд░рд┐рдпрдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ ./doc рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реЗ рдбреЛрдореЗрди рдирд┐рдпрдВрддреНрд░рдХ рддрдХред рдЙрд╕ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╕реЗ рдЬрд╣рд╛рдВ рдлрд╝рд╛рдЗрд▓ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдИ рдЧрдИ рдереА, рдЪрд▓рд╛рдПрдБ:
ldifde -i -f schema.ActiveDirectory -c dc=X dc=testopf,dc=local
(рдЕрдкрдиреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рди рднреВрд▓реЗрдВ)
рдЦреЛрд▓рдиреЗ adsiedit.msc рдФрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕рдВрджрд░реНрдн рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ:
рдбреЛрдореЗрди рдХреЗ рдореВрд▓ рдореЗрдВ рдПрдХ рдкреНрд░рднрд╛рдЧ рдмрдирд╛рдПрдБ sudoers. (рдкреВрдВрдЬреАрдкрддрд┐ рд╣рдардкреВрд░реНрд╡рдХ рджрд╛рд╡рд╛ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕ рдЗрдХрд╛рдИ рдореЗрдВ рд╣реА рд░рд╛рдХреНрд╖рд╕ рд╣реИ рдПрд╕рдПрд╕рдПрд╕рдбреА рдХрд┐рд╕реА рд╡рд╕реНрддреБ рдХреА рдЦреЛрдЬ рдХрд░рддрд╛ рд╣реИ рд╕реБрдбреЛрд░реЛрд▓ рд╡рд╕реНрддреБрдПрдВ. рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╡рд┐рд╕реНрддреГрдд рдбрд┐рдмрдЧрд┐рдВрдЧ рдЪрд╛рд▓реВ рдХрд░рдиреЗ рдФрд░ рд▓реЙрдЧ рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдЦреЛрдЬ рд╕рдВрдкреВрд░реНрдг рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдЯреНрд░реА рдореЗрдВ рдХреА рдЧрдИ рдереАред)
рд╣рдо рдкреНрд░рднрд╛рдЧ рдореЗрдВ рд╡рд░реНрдЧ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдкрд╣рд▓реА рд╡рд╕реНрддреБ рдмрдирд╛рддреЗ рд╣реИрдВ рд╕реБрдбреЛрд░реЛрд▓. рдирд╛рдо рдмрд┐рд▓реНрдХреБрд▓ рдордирдорд╛рдиреЗ рдврдВрдЧ рд╕реЗ рдЪреБрдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХреЗрд╡рд▓ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдкрд╣рдЪрд╛рди рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рд╕реНрдХреАрдорд╛ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рд╕реЗ рд╕рдВрднрд╛рд╡рд┐рдд рдЙрдкрд▓рдмреНрдз рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдореБрдЦреНрдп рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣реИрдВ:

  • рд╕реБрдбреЛрдХрдорд╛рдВрдб - рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╣реЛрд╕реНрдЯ рдкрд░ рдХрд┐рди рдХрдорд╛рдВрдбреЛрдВ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рд╣реИред
  • рд╕реБрдбреЛрд╣реЛрд╕реНрдЯ тАФ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рднреВрдорд┐рдХрд╛ рдХрд┐рд╕ рд╣реЛрд╕реНрдЯ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддреА рд╣реИред рдХреЗ рд░реВрдк рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рд╕рдм, рдФрд░ рдирд╛рдо рд╕реЗ рдПрдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╣реЛрд╕реНрдЯ рдХреЗ рд▓рд┐рдПред рдорд╛рд╕реНрдХ рдХрд╛ рдкреНрд░рдпреЛрдЧ рднреА рд╕рдВрднрд╡ рд╣реИред
  • sudoUser - рдЗрдВрдЧрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдХрд┐рди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рд╣реИ sudo.
    рдпрджрд┐ рдЖрдк рдХреЛрдИ рд╕реБрд░рдХреНрд╖рд╛ рд╕рдореВрд╣ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдирд╛рдо рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ "%" рдЪрд┐рд╣реНрди рдЬреЛрдбрд╝реЗрдВред рдпрджрд┐ рд╕рдореВрд╣ рдХреЗ рдирд╛рдо рдореЗрдВ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рд╣реИрдВ, рддреЛ рдЪрд┐рдВрддрд╛ рдХреА рдХреЛрдИ рдмрд╛рдд рдирд╣реАрдВ рд╣реИред рд▓реЙрдЧ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рд╕реЗ рдмрдЪрдиреЗ рдХрд╛ рдХрд╛рд░реНрдп рддрдВрддреНрд░ рджреНрд╡рд╛рд░рд╛ рд▓рд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдПрд╕рдПрд╕рдПрд╕рдбреА.

рдЕрдВрддрд░реНрд░рд╛рд╖реНрдЯреНрд░реАрдп рдкреНрд░рддрд┐рдпреЛрдЧрд┐рддрд╛рдУрдВ рдПрд╕рдПрд╕рдПрдЪ рдФрд░ рд╕реВрдбреЛ рдХреЗ рд╡рд┐рдЬреЗрддрд╛ рдлрд┐рд░ рд╕реЗ рдордВрдЪ рдкрд░ рд╣реИрдВред рдкреНрд░рддрд┐рд╖реНрдард┐рдд рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХрдВрдбрдХреНрдЯрд░ рдХреЗ рдиреЗрддреГрддреНрд╡ рдореЗрдВ
рдЪрд┐рддреНрд░ 1. рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рдореВрд▓ рдореЗрдВ sudoers рдЙрдкрдЦрдВрдб рдореЗрдВ sudoRole рдСрдмреНрдЬреЗрдХреНрдЯ

рдЕрдВрддрд░реНрд░рд╛рд╖реНрдЯреНрд░реАрдп рдкреНрд░рддрд┐рдпреЛрдЧрд┐рддрд╛рдУрдВ рдПрд╕рдПрд╕рдПрдЪ рдФрд░ рд╕реВрдбреЛ рдХреЗ рд╡рд┐рдЬреЗрддрд╛ рдлрд┐рд░ рд╕реЗ рдордВрдЪ рдкрд░ рд╣реИрдВред рдкреНрд░рддрд┐рд╖реНрдард┐рдд рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХрдВрдбрдХреНрдЯрд░ рдХреЗ рдиреЗрддреГрддреНрд╡ рдореЗрдВ
рдЪрд┐рддреНрд░ 2. sudoRole рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕реБрд░рдХреНрд╖рд╛ рд╕рдореВрд╣реЛрдВ рдореЗрдВ рд╕рджрд╕реНрдпрддрд╛ред

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реЗрдЯрдЕрдк Linux рдкрдХреНрд╖ рдкрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ.
рдлрд╛рдЗрд▓ рдореИрдВ /etc/nsswitch.conf рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдВрдд рдореЗрдВ рдкрдВрдХреНрддрд┐ рдЬреЛрдбрд╝реЗрдВ:

sudoers: files sss

рдлрд╛рдЗрд▓ рдореИрдВ /etc/sssd/sssd.conf рдЕрдиреБрднрд╛рдЧ рдореЗрдВ [рдПрд╕рдПрд╕рдПрд╕рдбреА] рд╕реЗрд╡рд╛рдУрдВ рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ sudo

cat /etc/sssd/sssd.conf | grep services
services = nss, pam, sudo

рд╕рднреА рдСрдкрд░реЗрд╢рдиреЛрдВ рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рдПрд╕рдПрд╕рдПрд╕рдбреА рдбреЗрдореЙрди рдХреИрд╢ рдХреЛ рд╕рд╛рдлрд╝ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рд╣рд░ 6 рдШрдВрдЯреЗ рдореЗрдВ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЕрдкрдбреЗрдЯ рд╣реЛрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЬрдм рд╣рдо рдЗрд╕реЗ рдЕрднреА рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рд╣рдореЗрдВ рдЗрддрдирд╛ рд▓рдВрдмрд╛ рдЗрдВрддрдЬрд╛рд░ рдХреНрдпреЛрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП?

sss_cache -E

рдЕрдХреНрд╕рд░ рдРрд╕рд╛ рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдХреИрд╢ рд╕рд╛рдлрд╝ рдХрд░рдиреЗ рд╕реЗ рдХреЛрдИ рдорджрдж рдирд╣реАрдВ рдорд┐рд▓рддреАред рдлрд┐рд░ рд╣рдо рд╕реЗрд╡рд╛ рд░реЛрдХрддреЗ рд╣реИрдВ, рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рд╛рдлрд╝ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╕реЗрд╡рд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред

service sssd stop
rm -rf /var/lib/sss/db/*
service sssd start

рд╣рдо рдкрд╣рд▓реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЬреБрдбрд╝рддреЗ рд╣реИрдВ рдФрд░ рдЬрд╛рдВрдЪрддреЗ рд╣реИрдВ рдХрд┐ рд╕реВрдбреЛ рдХреЗ рддрд╣рдд рдЙрд╕рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдЙрдкрд▓рдмреНрдз рд╣реИ:

su user1
[user1@testsshad log]$ id
uid=1109801141(user1) gid=1109800513(domain users) groups=1109800513(domain users),1109801132(admins_)
[user1@testsshad log]$ sudo -l
[sudo] password for user1:
Matching Defaults entries for user1 on testsshad:
    !visiblepw, always_set_home, match_group_by_gid, always_query_group_plugin,
    env_reset, env_keep="COLORS DISPLAY HOSTNAME HISTSIZE KDEDIR LS_COLORS",
    env_keep+="MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE",
    env_keep+="LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES",
    env_keep+="LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE",
    env_keep+="LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY",
    secure_path=/sbin:/bin:/usr/sbin:/usr/bin

User user1 may run the following commands on testsshad:
    (root) /usr/bin/ls, /usr/bin/cat

рд╣рдо рдЕрдкрдиреЗ рджреВрд╕рд░реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд╕рд╛рде рднреА рдРрд╕рд╛ рд╣реА рдХрд░рддреЗ рд╣реИрдВ:

su user2
[user2@testsshad log]$ id
uid=1109801142(user2) gid=1109800513(domain users) groups=1109800513(domain users),1109801138(sudo_root)
[user2@testsshad log]$ sudo -l
Matching Defaults entries for user2 on testsshad:
    !visiblepw, always_set_home, match_group_by_gid, always_query_group_plugin,
    env_reset, env_keep="COLORS DISPLAY HOSTNAME HISTSIZE KDEDIR LS_COLORS",
    env_keep+="MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE",
    env_keep+="LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES",
    env_keep+="LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE",
    env_keep+="LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY",
    secure_path=/sbin:/bin:/usr/sbin:/usr/bin

User user2 may run the following commands on testsshad:
    (root) ALL

рдпрд╣ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЖрдкрдХреЛ рд╡рд┐рднрд┐рдиреНрди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рдореВрд╣реЛрдВ рдХреЗ рд▓рд┐рдП рд╕реВрдбреЛ рднреВрдорд┐рдХрд╛рдУрдВ рдХреЛ рдХреЗрдВрджреНрд░реАрдп рд░реВрдк рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ ssh рдХреБрдВрдЬрд┐рдпрд╛рдБ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдирд╛ рдФрд░ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛

рдпреЛрдЬрдирд╛ рдХреЗ рдереЛрдбрд╝реЗ рд╕реЗ рд╡рд┐рд╕реНрддрд╛рд░ рдХреЗ рд╕рд╛рде, рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ ssh рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдирд╛ рдФрд░ рд▓рд┐рдирдХреНрд╕ рд╣реЛрд╕реНрдЯ рдкрд░ рдЕрдзрд┐рдХреГрдд рдХрд░рддреЗ рд╕рдордп рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред

рдПрд╕рдПрд╕рдПрд╕рдбреА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
PowerShell рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрд╡рд╢реНрдпрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рдЬреЛрдбрд╝реЗрдВред
AddsshPublicKeyAttribute.ps1рдлрд╝рдВрдХреНрд╢рди рдирдИ-рд╡рд┐рд╢реЗрд╖рддрд╛ рдЖрдИрдбреА {
$рдЙрдкрд╕рд░реНрдЧ='1.2.840.113556.1.8000.2554'
$GUID=[System.Guid]::NewGuid().ToString()
$рдкрд╛рд░реНрдЯреНрд╕=@()
$рдкрд╛рд░реНрдЯреНрд╕+=[рдпреВрдЖрдИрдПрдирдЯреА64]::рдкрд╛рд░реНрд╕($guid.SubString(0,4),тАЬAllowHexSpecifierтАЭ)
$рдкрд╛рд░реНрдЯреНрд╕+=[рдпреВрдЖрдИрдПрдирдЯреА64]::рдкрд╛рд░реНрд╕($guid.SubString(4,4),тАЬAllowHexSpecifierтАЭ)
$рдкрд╛рд░реНрдЯреНрд╕+=[рдпреВрдЖрдИрдПрдирдЯреА64]::рдкрд╛рд░реНрд╕($guid.SubString(9,4),тАЬAllowHexSpecifierтАЭ)
$рдкрд╛рд░реНрдЯреНрд╕+=[рдпреВрдЖрдИрдПрдирдЯреА64]::рдкрд╛рд░реНрд╕($guid.SubString(14,4),тАЬAllowHexSpecifierтАЭ)
$рдкрд╛рд░реНрдЯреНрд╕+=[рдпреВрдЖрдИрдПрдирдЯреА64]::рдкрд╛рд░реНрд╕($guid.SubString(19,4),тАЬAllowHexSpecifierтАЭ)
$рдкрд╛рд░реНрдЯреНрд╕+=[рдпреВрдЖрдИрдПрдирдЯреА64]::рдкрд╛рд░реНрд╕($guid.SubString(24,6),тАЬAllowHexSpecifierтАЭ)
$рдкрд╛рд░реНрдЯреНрд╕+=[рдпреВрдЖрдИрдПрдирдЯреА64]::рдкрд╛рд░реНрд╕($guid.SubString(30,6),тАЬAllowHexSpecifierтАЭ)
$oid=[String]::Format(┬л{0}.{1}.{2}.{3}.{4}.{5}.{6}.{7}┬╗,$prefix,$Parts[0],
$Parts[1],$Parts[2],$Parts[3],$Parts[4],$Parts[5],$Parts[6])
$рдУрдЗрдб
}
$schemaPath = (Get-ADRootDSE).schemaNamingContext
$oid = рдирдпрд╛-рд╡рд┐рд╢реЗрд╖рддрд╛ рдЖрдИрдбреА
$рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ = @{
lDAPDisplayName = 'sshPublicKey';
рд╡рд┐рд╢реЗрд╖рддрд╛рдЖрдИрдбреА = $oid;
oMSyntax = 22;
рд╡рд┐рд╢реЗрд╖рддрд╛ рд╕рд┐рдВрдЯреЗрдХреНрд╕ = "2.5.5.5";
isSingleValued = $true;
adminDescription = 'SSH рд▓реЙрдЧрд┐рди рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдВрдЬреА';
}

рдирдпрд╛-ADObject -рдирд╛рдо sshPublicKey -рдкреНрд░рдХрд╛рд░ рд╡рд┐рд╢реЗрд╖рддрд╛рд╕реНрдХреАрдорд╛ -рдкрде $schemapath -рдЕрдиреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБ $рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБ
$userSchema = get-adobject -SearchBase $schemapath -Filter 'name -eq "user"'
$userSchema | рд╕реЗрдЯ-ADObject - @{mayContain = 'sshPublicKey'} рдЬреЛрдбрд╝реЗрдВ

рд╡рд┐рд╢реЗрд╖рддрд╛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдбреЛрдореЗрди рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдЖрдЗрдП рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдкрд░ рдЪрд▓рддреЗ рд╣реИрдВред рд╣рдо рдЖрдкрдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдХрд┐рд╕реА рднреА рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрд╕рдПрд╕рдПрдЪ рдХрдиреЗрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдПрдХ рдХреБрдВрдЬреА рдЬреЛрдбрд╝реА рддреИрдпрд╛рд░ рдХрд░реЗрдВрдЧреЗред
рд╣рдо рдкреБрдЯреНрдЯреАрдЬреЗрди рд▓реЙрдиреНрдЪ рдХрд░рддреЗ рд╣реИрдВ, "рдЬреЗрдирд░реЗрдЯ" рдмрдЯрди рджрдмрд╛рддреЗ рд╣реИрдВ рдФрд░ рдорд╛рдЙрд╕ рдХреЛ рдЦрд╛рд▓реА рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдШреБрдорд╛рддреЗ рд╣реИрдВред
рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкреВрд░реА рд╣реЛрдиреЗ рдкрд░, рд╣рдо рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдФрд░ рдирд┐рдЬреА рдХреБрдВрдЬрд┐рдпрд╛рдБ рд╕рд╣реЗрдЬ рд╕рдХрддреЗ рд╣реИрдВ, рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдВрдЬреА рдХреЛ рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛ рдкрд░ рдЕрдкрд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдЖрдирдВрдж рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдВрдЬреА рдХрд╛ рдЙрдкрдпреЛрдЧ "рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП"OpenSSH рдЕрдзрд┐рдХреГрдд_рдХреБрдВрдЬреА рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЪрд┐рдкрдХрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдВрдЬреА:"ред
рдЕрдВрддрд░реНрд░рд╛рд╖реНрдЯреНрд░реАрдп рдкреНрд░рддрд┐рдпреЛрдЧрд┐рддрд╛рдУрдВ рдПрд╕рдПрд╕рдПрдЪ рдФрд░ рд╕реВрдбреЛ рдХреЗ рд╡рд┐рдЬреЗрддрд╛ рдлрд┐рд░ рд╕реЗ рдордВрдЪ рдкрд░ рд╣реИрдВред рдкреНрд░рддрд┐рд╖реНрдард┐рдд рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХрдВрдбрдХреНрдЯрд░ рдХреЗ рдиреЗрддреГрддреНрд╡ рдореЗрдВ
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛ рдореЗрдВ рдХреБрдВрдЬреА рдЬреЛрдбрд╝реЗрдВ.
рд╡рд┐рдХрд▓реНрдк 1 - рдЬреАрдпреВрдЖрдИ:
рдЕрдВрддрд░реНрд░рд╛рд╖реНрдЯреНрд░реАрдп рдкреНрд░рддрд┐рдпреЛрдЧрд┐рддрд╛рдУрдВ рдПрд╕рдПрд╕рдПрдЪ рдФрд░ рд╕реВрдбреЛ рдХреЗ рд╡рд┐рдЬреЗрддрд╛ рдлрд┐рд░ рд╕реЗ рдордВрдЪ рдкрд░ рд╣реИрдВред рдкреНрд░рддрд┐рд╖реНрдард┐рдд рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХрдВрдбрдХреНрдЯрд░ рдХреЗ рдиреЗрддреГрддреНрд╡ рдореЗрдВ
рд╡рд┐рдХрд▓реНрдк 2 - рдкрд╛рд╡рд░рд╢реЗрд▓:
get-aduser user1 | set-aduser -add @{sshPublicKey = 'AAAAB...XAVnX9ZRJJ0p/Q=='}
рддреЛ, рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╣реИ: sshPublicKey рд╡рд┐рд╢реЗрд╖рддрд╛ рд╡рд╛рд▓рд╛ рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛, рдХреБрдВрдЬрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдкреБрдЯреНрдЯреА рдХреНрд▓рд╛рдЗрдВрдЯред рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рдмрд┐рдВрджреБ рдмрд╛рдХреА рд╣реИ: sshd рдбреЗрдореЙрди рдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рд╕реЗ рдЖрд╡рд╢реНрдпрдХ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдВрдЬреА рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХреИрд╕реЗ рдмрд╛рдзреНрдп рдХрд┐рдпрд╛ рдЬрд╛рдПред рдмреБрд░реНрдЬреБрдЖ рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдкрд╛рдИ рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рдПрдХ рдЫреЛрдЯреА рд╕реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрд╕рдХрд╛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд╕рд╛рдордирд╛ рдХрд░ рд╕рдХрддреА рд╣реИред

cat /usr/local/bin/fetchSSHKeysFromLDAP
#!/bin/sh
ldapsearch -h testmdt.testopf.local -xb "dc=testopf,dc=local" '(sAMAccountName='"${1%@*}"')' -D [email protected] -w superSecretPassword 'sshPublicKey' | sed -n '/^ /{H;d};/sshPublicKey:/x;$g;s/n *//g;s/sshPublicKey: //gp'

рд╣рдордиреЗ рд░реВрдЯ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдкрд░ рдЕрдиреБрдорддрд┐рдпрд╛рдБ 0500 рдкрд░ рд╕реЗрдЯ рдХреА рд╣реИрдВред

chmod 0500  /usr/local/bin/fetchSSHKeysFromLDAP

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

  • рдореИрдВ рдкрд╛рд╕рд╡рд░реНрдб рдХреЛ рдПрдХ рдЕрд▓рдЧ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рд╣реЗрдЬрддрд╛ рд╣реВрдВ:
    echo -n Supersecretpassword > /usr/local/etc/secretpass

  • рдореИрдВрдиреЗ рд░реВрдЯ рдХреЗ рд▓рд┐рдП рдлрд╝рд╛рдЗрд▓ рдЕрдиреБрдорддрд┐рдпрд╛рдБ 0500 рдкрд░ рд╕реЗрдЯ рдХреА рд╣реИрдВ
    chmod 0500 /usr/local/etc/secretpass

  • Ldapsearch рд▓реЙрдиреНрдЪ рдкреИрд░рд╛рдореАрдЯрд░ рдмрджрд▓рдирд╛: рдкреИрд░рд╛рдореАрдЯрд░ -w рд╕реБрдкрд░рд╕реАрдХреНрд░реЗрдЯ рдкрд╛рд╕рд╡рд░реНрдб рдореИрдВ рдЗрд╕реЗ рдмрджрд▓рддрд╛ рд╣реВрдВ -y /usr/local/etc/secretpass

рдЖрдЬ рдХреЗ рд╕реБрдЗрдЯ рдореЗрдВ рдЕрдВрддрд┐рдо рдХреЙрд░реНрдб sshd_config рдХрд╛ рд╕рдВрдкрд╛рджрди рд╣реИ

cat /etc/ssh/sshd_config | egrep -v -E "#|^$" | grep -E "AuthorizedKeysCommand|PubkeyAuthe"
PubkeyAuthentication yes
AuthorizedKeysCommand /usr/local/bin/fetchSSHKeysFromLDAP
AuthorizedKeysCommandUser root

рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╣рдореЗрдВ ssh рдХреНрд▓рд╛рдЗрдВрдЯ рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдП рдЧрдП рдХреБрдВрдЬреА рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЗ рд╕рд╛рде рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЕрдиреБрдХреНрд░рдо рдорд┐рд▓рддрд╛ рд╣реИ:

  1. рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдкрдирд╛ рд▓реЙрдЧрд┐рди рджрд░реНрд╢рд╛рдХрд░ рд╕рд░реНрд╡рд░ рд╕реЗ рдЬреБрдбрд╝рддрд╛ рд╣реИред
  2. Sshd рдбреЗрдореЙрди, рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ, рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╕реЗ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдВрдЬреА рдорд╛рди рдирд┐рдХрд╛рд▓рддрд╛ рд╣реИ рдФрд░ рдХреБрдВрдЬрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХрд░рддрд╛ рд╣реИред
  3. рдПрд╕рдПрд╕рдПрд╕рдбреА рдбреЗрдореЙрди рд╕рдореВрд╣ рд╕рджрд╕реНрдпрддрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдкреНрд░рдорд╛рдгрд┐рдд рдХрд░рддрд╛ рд╣реИред рдзреНрдпрд╛рди! рдпрджрд┐ рдпрд╣ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдХрд┐рд╕реА рднреА рдбреЛрдореЗрди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдкрд╛рд╕ рд╣реЛрд╕реНрдЯ рддрдХ рдкрд╣реБрдВрдЪ рд╣реЛрдЧреАред
  4. рдЬрдм рдЖрдк sudo рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ sssd рдбреЗрдореЙрди рднреВрдорд┐рдХрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдЦреЛрдЬ рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рднреВрдорд┐рдХрд╛рдПрдБ рдореМрдЬреВрдж рд╣реИрдВ, рддреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдФрд░ рд╕рдореВрд╣ рд╕рджрд╕реНрдпрддрд╛ рдХреА рдЬрд╛рдБрдЪ рдХреА рдЬрд╛рддреА рд╣реИ (рдпрджрд┐ sudoRoles рдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рдореВрд╣реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ)

рд╕рд╛рд░рд╛рдВрд╢.

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

рд▓реЗрдЦрди рдореЗрдВ рдкреНрд░рдпреБрдХреНрдд рд╕рдВрд╕рд╛рдзрди:

рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реВрдбреЛ
рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ Ssh рдХреБрдВрдЬрд┐рдпрд╛рдБ
рдкрд╛рд╡рд░рд╢реЗрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ, рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реНрдХреАрдорд╛ рдореЗрдВ рдПрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рдЬреЛрдбрд╝ рд░рд╣реА рд╣реИ
рд╕реБрдбреЛ рд╕реНрдерд┐рд░ рд░рд┐рд▓реАрдЬ

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

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