рдЖрдВрддрд░рд░рд╛рд╖реНрдЯреНрд░реАрдп рд╕реНрдкрд░реНрдзрд╛рдВрдЪреЗ рд╡рд┐рдЬреЗрддреЗ SSH рдЖрдгрд┐ sudo рдкреБрдиреНрд╣рд╛ рдордВрдЪрд╛рд╡рд░ рдЖрд╣реЗрдд. рдкреНрд░рддрд┐рд╖реНрдард┐рдд рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХрдВрдбрдХреНрдЯрд░рдЪреЗ рдиреЗрддреГрддреНрд╡

рдРрддрд┐рд╣рд╛рд╕рд┐рдХрджреГрд╖реНрдЯреНрдпрд╛, sudo рдкрд░рд╡рд╛рдирдЧреНрдпрд╛ рдХрдбреАрд▓ рдлрд╛рдпрд▓реАрдВрдЪреНрдпрд╛ рд╕рд╛рдордЧреНрд░реАрджреНрд╡рд╛рд░реЗ рд╢рд╛рд╕рд┐рдд рд╣реЛрддреНрдпрд╛ /etc/sudoers.d ╨╕ рд╡рд┐рд╕реБрдбреЛ, рдЖрдгрд┐ рдХреА рдЕрдзрд┐рдХреГрддрддрд╛ рд╡рд╛рдкрд░реВрди рдЪрд╛рд▓рддреЗ ~/.ssh/authorized_keys. рддрдерд╛рдкрд┐, рдЬрд╕рдЬрд╢реА рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛ рд╡рд╛рдврдд рдЖрд╣реЗрдд, рддрд╕рддрд╕реЗ рдпрд╛ рдЕрдзрд┐рдХрд╛рд░рд╛рдВрдЪреЗ рдХреЗрдВрджреНрд░рд┐рдп рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдХрд░рдгреНрдпрд╛рдЪреА рдЗрдЪреНрдЫрд╛ рдЖрд╣реЗ. рдЖрдЬ рдЕрдиреЗрдХ рдЙрдкрд╛рдп рдкрд░реНрдпрд╛рдп рдЕрд╕реВ рд╢рдХрддрд╛рдд:

  • рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдкреНрд░рдгрд╛рд▓реА - рдбреЛрдХреЗ, рдХрдардкреБрддрд│реА, рдЙрддреНрддрд░ рджреНрдпрд╛, рдореАрда
  • рдЪрд╛рд▓реВ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ + рдПрд╕рдПрд╕рдбреА
  • рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЖрдгрд┐ рдореЕрдиреНрдпреБрдЕрд▓ рдлрд╛рдЗрд▓ рд╕рдВрдкрд╛рджрдирд╛рдЪреНрдпрд╛ рд╕реНрд╡рд░реВрдкрд╛рдд рд╡рд┐рд╡рд┐рдз рд╡рд┐рдХреГрддреА

рдорд╛рдЭреНрдпрд╛ рд╡реНрдпрдХреНрддрд┐рдирд┐рд╖реНрда рдорддрд╛рдиреБрд╕рд╛рд░, рдХреЗрдВрджреНрд░реАрдХреГрдд рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдирд╛рд╕рд╛рдареА рд╕рд░реНрд╡реЛрддреНрддрдо рдкрд░реНрдпрд╛рдп рдЕрдЬреВрдирд╣реА рд╕рдВрдпреЛрдЬрди рдЖрд╣реЗ рдЪрд╛рд▓реВ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ + рдПрд╕рдПрд╕рдбреА. рдпрд╛ рдкрджреНрдзрддреАрдЪреЗ рдлрд╛рдпрджреЗ рдЖрд╣реЗрдд:

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

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

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

рдХреГрддреА 1: рдирд┐рдпрдВрддреНрд░рдг рд╕реБрдбреЛ рдорд╛рдзреНрдпрдорд╛рддреВрди рднреВрдорд┐рдХрд╛ рдЪрд╛рд▓реВ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛.

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

  • sudoCommand тАФ рд╣реЛрд╕реНрдЯрд╡рд░ рдХреЛрдгрддреА рдЖрдЬреНрдЮрд╛ рдЕрдВрдорд▓рд╛рдд рдЖрдгрдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рдЖрд╣реЗ рд╣реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреЗ.
  • sudoHost тАФ рд╣реА рднреВрдорд┐рдХрд╛ рдХреЛрдгрддреНрдпрд╛ рд╣реЛрд╕реНрдЯрд╡рд░ рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реЗ рдард░рд╡рддреЗ. рдореНрд╣рдгреВрди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреЗрд▓реЗ рдЬрд╛рдК рд╢рдХрддреЗ рд╕рд░реНрд╡, рдЖрдгрд┐ рдирд╛рд╡рд╛рдиреЗ рд╡реИрдпрдХреНрддрд┐рдХ рд╣реЛрд╕реНрдЯрд╕рд╛рдареА. рдорд╛рд╕реНрдХ рд╡рд╛рдкрд░рдгреЗ рджреЗрдЦреАрд▓ рд╢рдХреНрдп рдЖрд╣реЗ.
  • sudo рд╡рд╛рдкрд░рдХрд░реНрддрд╛ тАФ рдХреЛрдгрддреНрдпрд╛ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрдирд╛ рдЕрдВрдорд▓рд╛рдд рдЖрдгрдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рдЖрд╣реЗ рддреЗ рд╕реВрдЪрд┐рдд рдХрд░рд╛ рд╕реБрдбреЛ.
    рддреБрдореНрд╣реА рд╕реБрд░рдХреНрд╖рд╛ рдЧрдЯ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреЗрд▓реНрдпрд╛рд╕, рдирд╛рд╡рд╛рдЪреНрдпрд╛ рд╕реБрд░реБрд╡рд╛рддреАрд▓рд╛ тАЬ%тАЭ рдЪрд┐рдиреНрд╣ рдЬреЛрдбрд╛. рдЧреНрд░реБрдкрдЪреНрдпрд╛ рдирд╛рд╡рд╛рдд рд╕реНрдкреЗрд╕ рдЕрд╕рд▓реНрдпрд╛рд╕ рдХрд╛рд│рдЬреА рдХрд░рдгреНрдпрд╛рд╕рд╛рд░рдЦреЗ рдХрд╛рд╣реА рдирд╛рд╣реА. рдиреЛрдВрджреАрдВрдЪреНрдпрд╛ рдЖрдзрд╛рд░реЗ, рдореЛрдХрд│реА рдЬрд╛рдЧрд╛ рд╕реЛрдбрдгреНрдпрд╛рдЪреЗ рдХрд╛рдо рдпрдВрддреНрд░рдгреЗрджреНрд╡рд╛рд░реЗ рдШреЗрддрд▓реЗ рдЬрд╛рддреЗ рдПрд╕рдПрд╕рдбреА.

рдЖрдВрддрд░рд░рд╛рд╖реНрдЯреНрд░реАрдп рд╕реНрдкрд░реНрдзрд╛рдВрдЪреЗ рд╡рд┐рдЬреЗрддреЗ SSH рдЖрдгрд┐ sudo рдкреБрдиреНрд╣рд╛ рдордВрдЪрд╛рд╡рд░ рдЖрд╣реЗрдд. рдкреНрд░рддрд┐рд╖реНрдард┐рдд рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХрдВрдбрдХреНрдЯрд░рдЪреЗ рдиреЗрддреГрддреНрд╡
рдЕрдВрдЬреАрд░ 1. рдбрд┐рд░реЗрдХреНрдЯрд░реАрдЪреНрдпрд╛ рд░реВрдЯрдордзреАрд▓ sudoers рдЙрдкрд╡рд┐рднрд╛рдЧрд╛рддреАрд▓ sudoRole рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕

рдЖрдВрддрд░рд░рд╛рд╖реНрдЯреНрд░реАрдп рд╕реНрдкрд░реНрдзрд╛рдВрдЪреЗ рд╡рд┐рдЬреЗрддреЗ SSH рдЖрдгрд┐ sudo рдкреБрдиреНрд╣рд╛ рдордВрдЪрд╛рд╡рд░ рдЖрд╣реЗрдд. рдкреНрд░рддрд┐рд╖реНрдард┐рдд рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХрдВрдбрдХреНрдЯрд░рдЪреЗ рдиреЗрддреГрддреНрд╡
рдЖрдХреГрддреА 2. sudoRole рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕рдордзреНрдпреЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕реБрд░рдХреНрд╖рд╛ рдЧрдЯрд╛рдВрдордзреАрд▓ рд╕рджрд╕реНрдпрддреНрд╡.

рдЦрд╛рд▓реАрд▓ рд╕реЗрдЯрдЕрдк рд▓рд┐рдирдХреНрд╕ рдмрд╛рдЬреВрд▓рд╛ рдХреЗрд▓реЗ рдЖрд╣реЗ.
рдлрд╛рдИрд▓рдордзреНрдпреЗ /etc/nsswitch.conf рдлрд╛рдЗрд▓рдЪреНрдпрд╛ рд╢реЗрд╡рдЯреА рдУрд│ рдЬреЛрдбрд╛:

sudoers: files sss

рдлрд╛рдИрд▓рдордзреНрдпреЗ /etc/sssd/sssd.conf рд╡рд┐рднрд╛рдЧрд╛рдд [sssd] рд╕реЗрд╡рд╛рдВрдордзреНрдпреЗ рдЬреЛрдбрд╛ рд╕реБрдбреЛ

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

рд╕рд░реНрд╡ рдСрдкрд░реЗрд╢рдиреНрд╕рдирдВрддрд░, рддреБрдореНрд╣рд╛рд▓рд╛ sssd рдбрд┐рдорди рдХреЕрд╢реЗ рд╕рд╛рдл рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдЕрджреНрдпрддрдиреЗ рджрд░ 6 рддрд╛рд╕рд╛рдВрдиреА рд╣реЛрддрд╛рдд, рдкрд░рдВрддреБ рдЬреЗрд╡реНрд╣рд╛ рдЖрдореНрд╣рд╛рд▓рд╛ рддреЗ рд╣рд╡реЗ рдЕрд╕реЗрд▓ рддреЗрд╡реНрд╣рд╛ рдЖрдореНрд╣реА рдЗрддрдХрд╛ рд╡реЗрд│ рдХрд╛ рдерд╛рдВрдмрд╛рд╡реЗ?

sss_cache -E

рд╣реЗ рдмрд░реНрдпрд╛рдЪрджрд╛ рдШрдбрддреЗ рдХреА рдХреЕрд╢реЗ рд╕рд╛рдл рдХрд░рдгреЗ рдорджрдд рдХрд░рдд рдирд╛рд╣реА. рдордЧ рдЖрдореНрд╣реА рд╕реЗрд╡рд╛ рдерд╛рдВрдмрд╡рддреЛ, рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рд╛рдл рдХрд░рддреЛ рдЖрдгрд┐ рд╕реЗрд╡рд╛ рд╕реБрд░реВ рдХрд░рддреЛ.

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

рдЖрдореНрд╣реА рдкреНрд░рдердо рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рдореНрд╣рдгреВрди рдХрдиреЗрдХреНрдЯ рдХрд░рддреЛ рдЖрдгрд┐ sudo рдЕрдВрддрд░реНрдЧрдд рддреНрдпрд╛рдЪреНрдпрд╛рд╕рд╛рдареА рдХрд╛рдп рдЙрдкрд▓рдмреНрдз рдЖрд╣реЗ рддреЗ рддрдкрд╛рд╕рд╛:

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 рдХреА рд╕рдВрдЪрдпрд┐рдд рдХрд░рдгреЗ рдЖрдгрд┐ рд▓рд┐рдирдХреНрд╕ рд╣реЛрд╕реНрдЯрд╡рд░ рдЕрдзрд┐рдХреГрдд рдХрд░рддрд╛рдирд╛ рддреНрдпрд╛рдВрдЪрд╛ рд╡рд╛рдкрд░ рдХрд░рдгреЗ рд╢рдХреНрдп рдЖрд╣реЗ.

sssd рджреНрд╡рд╛рд░реЗ рдЕрдзрд┐рдХреГрддрддрд╛ рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.
рдкреЙрд╡рд░рд╢реЗрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╡рд╛рдкрд░реВрди рдЖрд╡рд╢реНрдпрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рдЬреЛрдбрд╛.
AddsshPublicKeyAttribute.ps1рдлрдВрдХреНрд╢рди рдирд╡реАрди-рд╡рд┐рд╢реЗрд╖рддрд╛ ID {
$Prefix="1.2.840.113556.1.8000.2554"
$GUID=[System.Guid]::NewGuid().ToString()
$Parts=@()
$Parts+=[UInt64]::Parse($guid.SubString(0,4),тАЬAllowHexSpecifierтАЭ)
$Parts+=[UInt64]::Parse($guid.SubString(4,4),тАЬAllowHexSpecifierтАЭ)
$Parts+=[UInt64]::Parse($guid.SubString(9,4),тАЬAllowHexSpecifierтАЭ)
$Parts+=[UInt64]::Parse($guid.SubString(14,4),тАЬAllowHexSpecifierтАЭ)
$Parts+=[UInt64]::Parse($guid.SubString(19,4),тАЬAllowHexSpecifierтАЭ)
$Parts+=[UInt64]::Parse($guid.SubString(24,6),тАЬAllowHexSpecifierтАЭ)
$Parts+=[UInt64]::Parse($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])
$oid
}
$schemaPath = (Get-ADrootDSE).schemaNamingContext
$oid = рдирд╡реАрди-рд╡рд┐рд╢реЗрд╖рддрд╛ рдЖрдпрдбреА
$рд╡рд┐рд╢реЗрд╖рддрд╛ = @{
lDAPDisplayName = 'sshPublicKey';
attributeId = $oid;
oMSyntax = 22;
attributeSyntax = "2.5.5.5";
isSingleValued = $true;
adminDescription = 'SSH рд▓реЙрдЧрд┐рдирд╕рд╛рдареА рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреА';
}

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

рд╡рд┐рд╢реЗрд╖рддрд╛ рдЬреЛрдбрд▓реНрдпрд╛рдирдВрддрд░, рддреБрдореНрд╣реА рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдбреЛрдореЗрди рд╕реЗрд╡рд╛ рд░реАрд╕реНрдЯрд╛рд░реНрдЯ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.
рдЪрд▓рд╛ рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрдХрдбреЗ рдЬрд╛рдКрдпрд╛. рдЖрдореНрд╣реА рддреБрдордЪреНрдпрд╛рд╕рд╛рдареА рд╕реЛрдпреАрд╕реНрдХрд░ рдХреЛрдгрддреНрдпрд╛рд╣реА рдкрджреНрдзрддреАрдЪрд╛ рд╡рд╛рдкрд░ рдХрд░реВрди ssh рдХрдиреЗрдХреНрд╢рдирд╕рд╛рдареА рдПрдХ рдХреА рдЬреЛрдбреА рддрдпрд╛рд░ рдХрд░реВ.
рдЖрдореНрд╣реА рдкреБрдЯреНрдЯреАрдЬреЗрди рд▓рд╛рдБрдЪ рдХрд░рддреЛ, "рдЬрдирд░реЗрдЯ" рдмрдЯрдг рджрд╛рдмрд╛ рдЖрдгрд┐ рд░рд┐рдХрд╛рдореНрдпрд╛ рднрд╛рдЧрд╛рдд рдорд╛рдЙрд╕ рд╣рд▓рд╡рд╛.
рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкреВрд░реНрдг рдЭрд╛рд▓реНрдпрд╛рд╡рд░, рдЖрдореНрд╣реА рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдЖрдгрд┐ рдЦрд╛рдЬрдЧреА рдХреА рдЬрддрди рдХрд░реВ рд╢рдХрддреЛ, рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреА рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛рд╡рд░ рдЕрдкрд▓реЛрдб рдХрд░реВ рд╢рдХрддреЛ рдЖрдгрд┐ рдкреНрд░рдХреНрд░рд┐рдпреЗрдЪрд╛ рдЖрдирдВрдж рдШреЗрдК рд╢рдХрддреЛ. рддрдерд╛рдкрд┐, рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреА рд╡рд╛рдкрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ "OpenSSH рдЕрдзрд┐рдХреГрдд_рдХреА рдлрд╛рдЗрд▓рдордзреНрдпреЗ рдкреЗрд╕реНрдЯ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреА:".
рдЖрдВрддрд░рд░рд╛рд╖реНрдЯреНрд░реАрдп рд╕реНрдкрд░реНрдзрд╛рдВрдЪреЗ рд╡рд┐рдЬреЗрддреЗ SSH рдЖрдгрд┐ sudo рдкреБрдиреНрд╣рд╛ рдордВрдЪрд╛рд╡рд░ рдЖрд╣реЗрдд. рдкреНрд░рддрд┐рд╖реНрдард┐рдд рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХрдВрдбрдХреНрдЯрд░рдЪреЗ рдиреЗрддреГрддреНрд╡
рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреА рдЬреЛрдбрд╛.
рдкрд░реНрдпрд╛рдп 1 - GUI:
рдЖрдВрддрд░рд░рд╛рд╖реНрдЯреНрд░реАрдп рд╕реНрдкрд░реНрдзрд╛рдВрдЪреЗ рд╡рд┐рдЬреЗрддреЗ SSH рдЖрдгрд┐ sudo рдкреБрдиреНрд╣рд╛ рдордВрдЪрд╛рд╡рд░ рдЖрд╣реЗрдд. рдкреНрд░рддрд┐рд╖реНрдард┐рдд рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХрдВрдбрдХреНрдЯрд░рдЪреЗ рдиреЗрддреГрддреНрд╡
рдкрд░реНрдпрд╛рдп реи - рдкреЙрд╡рд░рд╢реЗрд▓:
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 superSecretPassword рдореА рддреЗ рдмрджрд▓рддреЛ -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. sssd рдбрд┐рдорди рдкреБрдвреЗ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рд▓рд╛ рдЧрдЯ рд╕рджрд╕реНрдпрддреНрд╡рд╛рд╡рд░ рдЖрдзрд╛рд░рд┐рдд рдкреНрд░рдорд╛рдгреАрдХреГрдд рдХрд░рддреЗ. рд▓рдХреНрд╖ рджреНрдпрд╛! рд╣реЗ рдХреЙрдиреНрдлрд┐рдЧрд░ рдХреЗрд▓реЗрд▓реЗ рдирд╕рд▓реНрдпрд╛рд╕, рдХреЛрдгрддреНрдпрд╛рд╣реА рдбреЛрдореЗрди рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рд╕ рд╣реЛрд╕реНрдЯрдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдЕрд╕реЗрд▓.
  4. рдЬреЗрд╡реНрд╣рд╛ рддреБрдореНрд╣реА sudo рдХрд░рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд░рддрд╛, рддреЗрд╡реНрд╣рд╛ sssd рдбрд┐рдорди рднреВрдорд┐рдХрд╛рдВрд╕рд╛рдареА рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╢реЛрдзрддреЗ. рднреВрдорд┐рдХрд╛ рдЙрдкрд╕реНрдерд┐рдд рдЕрд╕рд▓реНрдпрд╛рд╕, рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдЪреЗ рдЧреБрдгрдзрд░реНрдо рдЖрдгрд┐ рдЧрдЯ рд╕рджрд╕реНрдпрддреНрд╡ рддрдкрд╛рд╕рд▓реЗ рдЬрд╛рддреЗ (рдЬрд░ sudoRoles рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рдЧрдЯ рд╡рд╛рдкрд░рдгреНрдпрд╛рд╕рд╛рдареА рдХреЙрдиреНрдлрд┐рдЧрд░ рдХреЗрд▓реЗ рдЕрд╕реЗрд▓)

рдирд┐рдХрд╛рд▓.

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

рд▓рд┐рдЦрд┐рдд рд╕реНрд╡рд░реВрдкрд╛рдд рд╡рд╛рдкрд░рд▓реЗрд▓реА рд╕рдВрд╕рд╛рдзрдиреЗ:

рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рджреНрд╡рд╛рд░реЗ Sudo
рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рджреНрд╡рд╛рд░реЗ Ssh рдХреА
рдкреЙрд╡рд░рд╢реЗрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ, рд╕рдХреНрд░рд┐рдп рдбрд┐рд░реЗрдХреНрдЯреНрд░реА рд╕реНрдХреАрдорд╛рдордзреНрдпреЗ рдПрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рдЬреЛрдбрдгреЗ
sudo рд╕реНрдерд┐рд░ рдкреНрд░рдХрд╛рд╢рди

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

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