рд╣рд╛рдореА рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдХреБрдЮреНрдЬреАрд╣рд░реВрдХреЛ рд╕рд╛рде SSH рд╣реЛрд╕реНрдЯрд╣рд░реВрдорд╛ рдЖрдкрддрдХрд╛рд▓реАрди рдкрд╣реБрдБрдЪрдХреЛ рд▓рд╛рдЧрд┐ рдПрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдЧрд░реНрдЫреМрдВ

рд╣рд╛рдореА рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдХреБрдЮреНрдЬреАрд╣рд░реВрдХреЛ рд╕рд╛рде SSH рд╣реЛрд╕реНрдЯрд╣рд░реВрдорд╛ рдЖрдкрддрдХрд╛рд▓реАрди рдкрд╣реБрдБрдЪрдХреЛ рд▓рд╛рдЧрд┐ рдПрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдЧрд░реНрдЫреМрдВ

рдпрд╕ рдкреЛрд╖реНрдЯрдорд╛, рд╣рд╛рдореА рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рд╕реБрд░рдХреНрд╖рд╛ рдХреБрдЮреНрдЬреАрд╣рд░реВ рдЕрдлрд▓рд╛рдЗрди рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ SSH рд╣реЛрд╕реНрдЯрд╣рд░реВрдорд╛ рдЖрдкрддрдХрд╛рд▓реАрди рдкрд╣реБрдБрдЪрдХреЛ рд▓рд╛рдЧрд┐ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╡рд┐рдХрд╛рд╕ рдЧрд░реНрдиреЗрдЫреМрдВред рдпреЛ рдХреЗрд╡рд▓ рдПрдХ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╣реЛ, рд░ рддрдкрд╛рдЗрдБ рдпрд╕рд▓рд╛рдИ рддрдкрд╛рдЗрдБрдХреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛рд╣рд░реБ рдЕрдиреБрд░реВрдк рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рд╣рд╛рдореА рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рд╕реБрд░рдХреНрд╖рд╛ рдХреБрдЮреНрдЬреАрдорд╛ рд╣рд╛рдореНрд░рд╛ рд╣реЛрд╕реНрдЯрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ SSH рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рднрдгреНрдбрд╛рд░ рдЧрд░реНрдиреЗрдЫреМрдВред рдпреЛ рдпреЛрдЬрдирд╛рд▓реЗ рдПрдХрд▓ рд╕рд╛рдЗрди-рдЕрди рднрдПрдХреЛ SSH рд╕рд╣рд┐рдд рд▓рдЧрднрдЧ рдХреБрдиреИ рдкрдирд┐ OpenSSH рдорд╛ рдХрд╛рдо рдЧрд░реНрдиреЗрдЫред

рдпреЛ рд╕рдм рдХреЗ рдХреЛ рд▓рд╛рдЧреА рд╣реЛ? рдЦреИрд░, рдпреЛ рдПрдХ рдЕрдиреНрддрд┐рдо рд░рд┐рд╕реЛрд░реНрдЯ рд╡рд┐рдХрд▓реНрдк рд╣реЛред рдпреЛ рдПрдХ рдмреНрдпрд╛рдХрдбреЛрд░ рд╣реЛ рдЬрд╕рд▓реЗ рддрдкрд╛рдЗрдБрд▓рд╛рдИ рддрдкрд╛рдЗрдБрдХреЛ рд╕рд░реНрднрд░рдорд╛ рдкрд╣реБрдБрдЪ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреЗрдЫ рдЬрдм рдХреБрдиреИ рдХрд╛рд░рдгрд▓реЗ рдЕрд░реВ рдХреЗрд╣рд┐ рдХрд╛рдо рдЧрд░реНрджреИрдиред

рдЖрдкрд╛рддрдХрд╛рд▓реАрди рдкрд╣реБрдБрдЪрдХреЛ рд▓рд╛рдЧрд┐ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ/рдирд┐рдЬреА рдХреБрдЮреНрдЬреАрд╣рд░реВрдХреЛ рд╕рдЯреНрдЯрд╛ рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╣рд░реВ рдХрд┐рди рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ?

  • рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдЮреНрдЬреАрд╣рд░реВрдХреЛ рд╡рд┐рдкрд░реАрдд, рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╣рд░реВрдХреЛ рдзреЗрд░реИ рдЫреЛрдЯреЛ рдЖрдпреБ рд╣реБрди рд╕рдХреНрдЫред рддрдкрд╛рдИрдВрд▓реЗ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЙрддреНрдкрдиреНрди рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рдЬреБрди 1 рдорд┐рдиреЗрдЯ рд╡рд╛ 5 рд╕реЗрдХреЗрдиреНрдбрдХреЛ рд▓рд╛рдЧрд┐ рдорд╛рдиреНрдп рдЫред рдпрд╕ рдЕрд╡рдзрд┐ рдкрдЫрд┐, рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдирдпрд╛рдБ рдЬрдбрд╛рдирд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдЕрдиреБрдкрдпреЛрдЧреА рд╣реБрдиреЗрдЫред рдпреЛ рдЖрдкрддрдХрд╛рд▓реАрди рдкрд╣реБрдБрдЪрдХреЛ рд▓рд╛рдЧрд┐ рдЖрджрд░реНрд╢ рд╣реЛред
  • рддрдкрд╛рдИрдВ рдЖрдлреНрдиреЛ рд╣реЛрд╕реНрдЯрд╣рд░реВрдорд╛ рдХреБрдиреИ рдкрдирд┐ рдЦрд╛рддрд╛рдХреЛ рд▓рд╛рдЧрд┐ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рд░ рдЖрд╡рд╢реНрдпрдХ рднрдПрдорд╛, рд╕рд╣рдХрд░реНрдореАрд╣рд░реВрд▓рд╛рдИ рддреНрдпрд╕реНрддрд╛ "рдПрдХ-рдкрдЯрдХ" рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╣рд░реВ рдкрдард╛рдЙрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред

рддрдкрд╛рдИрдВрд▓рд╛рдИ рдХреЗ рдЪрд╛рд╣рд┐рдиреНрдЫ?

  • рдирд┐рд╡рд╛рд╕реА рдХреБрдЮреНрдЬреАрд╣рд░реВрд▓рд╛рдИ рд╕рдорд░реНрдерди рдЧрд░реНрдиреЗ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рд╕реБрд░рдХреНрд╖рд╛ рд╕рд╛рдБрдЪреЛрд╣рд░реВред
    рдирд┐рд╡рд╛рд╕реА рдХреБрдЮреНрдЬреАрд╣рд░реВ рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд┐рдХ рдХреБрдЮреНрдЬреАрд╣рд░реВ рд╣реБрдиреН рдЬреБрди рдкреВрд░реНрдг рд░реВрдкрдорд╛ рд╕реБрд░рдХреНрд╖рд╛ рдХреБрдЮреНрдЬреА рднрд┐рддреНрд░ рднрдгреНрдбрд╛рд░рдг рдЧрд░рд┐рдиреНрдЫред рдХрд╣рд┐рд▓реЗрдХрд╛рд╣реАрдБ рддрд┐рдиреАрд╣рд░реВ рдЕрд▓реНрдлрд╛рдиреНрдпреВрдореЗрд░рд┐рдХ PIN рджреНрд╡рд╛рд░рд╛ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реБрдиреНрдЫрдиреНред рдирд┐рд╡рд╛рд╕реА рд╕рд╛рдБрдЪреЛрдХреЛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рднрд╛рдЧ рд╕реБрд░рдХреНрд╖рд╛ рд╕рд╛рдБрдЪреЛрдмрд╛рдЯ рдирд┐рд░реНрдпрд╛рдд рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ, рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдкрдорд╛ рдирд┐рдЬреА рдХреБрдЮреНрдЬреА рд╣реНрдпрд╛рдиреНрдбрд▓рдХреЛ рд╕рд╛рдеред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, Yubikey 5 рд╢реНрд░реГрдВрдЦрд▓рд╛ USB рдХреБрдЮреНрдЬреАрд╣рд░реВрд▓реЗ рдирд┐рд╡рд╛рд╕реА рдХреБрдЮреНрдЬреАрд╣рд░реВрд▓рд╛рдИ рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫред рдпреЛ рд╕рд▓реНрд▓рд╛рд╣ рджрд┐рдЗрдиреНрдЫ рдХрд┐ рддрд┐рдиреАрд╣рд░реВ рд╣реЛрд╕реНрдЯрдорд╛ рдЖрдкрддрдХрд╛рд▓реАрди рдкрд╣реБрдБрдЪрдХреЛ рд▓рд╛рдЧрд┐ рдорд╛рддреНрд░ рд╣реБрдиреНред рдпрд╕ рдкреЛрд╕реНрдЯрдХреЛ рд▓рд╛рдЧрд┐ рдо рдПрдЙрдЯрд╛ рдХреБрдЮреНрдЬреА рдорд╛рддреНрд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗрдЫреБ, рддрд░ рддрдкрд╛рдИрдВрд╕рдБрдЧ рдмреНрдпрд╛рдХрдЕрдкрдХреЛ рд▓рд╛рдЧрд┐ рдердк рдПрдЙрдЯрд╛ рд╣реБрдиреБрдкрд░реНрдЫред
  • рддреА рдХреБрдЮреНрдЬреАрд╣рд░реВ рднрдгреНрдбрд╛рд░рдг рдЧрд░реНрди рд╕реБрд░рдХреНрд╖рд┐рдд рдард╛рдЙрдБред
  • OpenSSH рд╕рдВрд╕реНрдХрд░рдг 8.2 рд╡рд╛ рдорд╛рдерд┐рдХреЛ рддрдкрд╛рдИрдВрдХреЛ рд╕реНрдерд╛рдиреАрдп рдХрдореНрдкреНрдпреБрдЯрд░ рд░ рд╕рд░реНрднрд░рд╣рд░реВрдорд╛ рддрдкрд╛рдИрдВрд▓реЗ рдЖрдкрддрдХрд╛рд▓реАрди рдкрд╣реБрдБрдЪ рдЧрд░реНрди рдЪрд╛рд╣рдиреБрд╣реБрдиреНрдЫред Ubuntu 20.04 рдУрдкрдирдПрд╕рдПрд╕рдПрдЪ 8.2 рдХреЛ рд╕рд╛рде рдЬрд╣рд╛рдЬред
  • (рд╡реИрдХрд▓реНрдкрд┐рдХ, рддрд░ рд╕рд┐рдлрд╛рд░рд┐рд╕ рдЧрд░рд┐рдПрдХреЛ) рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╣рд░реВ рдЬрд╛рдБрдЪ рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ CLI рдЙрдкрдХрд░рдгред

рдкреНрд░рд╢рд┐рдХреНрд╖рдг

рдкрд╣рд┐рд▓реЗ, рддрдкрд╛рдИрдВрд▓реЗ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рд╕реБрд░рдХреНрд╖рд╛ рдХреБрдЮреНрдЬреАрдорд╛ рдЕрд╡рд╕реНрдерд┐рдд рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдкреНрд░рд╛рдзрд┐рдХрд░рдг рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫред рдХреБрдЮреНрдЬреА рдШреБрд╕рд╛рдЙрдиреБрд╣реЛрд╕реН рд░ рдЪрд▓рд╛рдЙрдиреБрд╣реЛрд╕реН:

$ ssh-keygen -t ecdsa-sk -f sk-user-ca -O resident -C [security key ID]

рдЯрд┐рдкреНрдкрдгреАрдХреЛ рд░реВрдкрдорд╛ (-C) рдореИрд▓реЗ рд╕рдВрдХреЗрдд рдЧрд░реЗрдВ [рдИрдореЗрд▓ рд╕реБрд░рдХреНрд╖рд┐рдд]рддреНрдпрд╕реИрд▓реЗ рддрдкрд╛рдИрдВрд▓реЗ рдпреЛ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдкреНрд░рд╛рдзрд┐рдХрд░рдгрд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рд╕реБрд░рдХреНрд╖рд╛ рдХреБрдЮреНрдЬреАрд▓рд╛рдИ рдмрд┐рд░реНрд╕рдиреБ рд╣реБрдиреНрдиред

Yubikey рдорд╛ рдХреБрдЮреНрдЬреА рдердкреНрдиреБрдХреЛ рдЕрддрд┐рд░рд┐рдХреНрдд, рджреБрдИ рдлрд╛рдЗрд▓рд╣рд░реВ рд╕реНрдерд╛рдиреАрдп рд░реВрдкрдорд╛ рдЙрддреНрдкрдиреНрди рд╣реБрдиреЗрдЫрдиреН:

  1. sk-user-ca, рдПрдЙрдЯрд╛ рдХреБрдЮреНрдЬреА рд╣реНрдпрд╛рдиреНрдбрд▓ рдЬрд╕рд▓реЗ рд╕реБрд░рдХреНрд╖рд╛ рд╕рд╛рдБрдЪреЛрдорд╛ рднрдгреНрдбрд╛рд░рдг рдЧрд░рд┐рдПрдХреЛ рдирд┐рдЬреА рдХреБрдЮреНрдЬреАрд▓рд╛рдИ рдЬрдирд╛рдЙрдБрдЫ,
  2. sk-user-ca.pub, рдЬреБрди рддрдкрд╛рдИрдВрдХреЛ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдкреНрд░рд╛рдзрд┐рдХрд░рдгрдХреЛ рд▓рд╛рдЧрд┐ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдЮреНрдЬреА рд╣реБрдиреЗрдЫред

рддрд░ рдЪрд┐рдиреНрддрд╛ рдирдЧрд░реНрдиреБрд╣реЛрд╕реН, Yubikey рд▓реЗ рдЕрд░реНрдХреЛ рдирд┐рдЬреА рдХреБрдЮреНрдЬреА рднрдгреНрдбрд╛рд░ рдЧрд░реНрджрдЫ рдЬреБрди рдкреБрди: рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди рд╕рдХрд┐рдБрджреИрдиред рддреНрдпрд╕реИрд▓реЗ рдпрд╣рд╛рдБ рд╕рдмреИ рдХреБрд░рд╛ рднрд░рдкрд░реНрджреЛ рдЫред

рд╣реЛрд╕реНрдЯрд╣рд░реВрдорд╛, рд░реВрдЯрдХреЛ рд░реВрдкрдорд╛, рддрдкрд╛рдЗрдБрдХреЛ SSHD рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди (/etc/ssh/sshd_config) рдорд╛ рдирд┐рдореНрди рдердкреНрдиреБрд╣реЛрд╕реН (рдпрджрд┐ рддрдкрд╛рдЗрдБрд╕рдБрдЧ рдкрд╣рд┐рд▓реЗ рдиреИ рдЫреИрди рднрдиреЗ):

TrustedUserCAKeys /etc/ssh/ca.pub

рддреНрдпрд╕рдкрдЫрд┐ рд╣реЛрд╕реНрдЯрдорд╛, рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдЮреНрдЬреА (sk-user-ca.pub) рдердкреНрдиреБрд╣реЛрд╕реН /etc/ssh/ca.pub

рдбреЗрдорди рдкреБрди: рд╕реБрд░реБ рдЧрд░реНрдиреБрд╣реЛрд╕реН:

# /etc/init.d/ssh restart

рдЕрдм рд╣рд╛рдореА рд╣реЛрд╕реНрдЯ рдкрд╣реБрдБрдЪ рдЧрд░реНрди рдкреНрд░рдпрд╛рд╕ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рддрд░ рдкрд╣рд┐рд▓реЗ рд╣рд╛рдореАрд▓рд╛рдИ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЪрд╛рд╣рд┐рдиреНрдЫред рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рдХреБрдЮреНрдЬреА рдЬреЛрдбрд╛ рдмрдирд╛рдЙрдиреБрд╣реЛрд╕реН:

$ ssh-keygen -t ecdsa -f emergency

рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд░ SSH рдЬреЛрдбреАрд╣рд░реВ
рдХрд╣рд┐рд▓реЗрдХрд╛рд╣реАрдБ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ/рдирд┐рдЬреА рдХреБрдЮреНрдЬреА рдЬреЛрдбреАрдХреЛ рд▓рд╛рдЧрд┐ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрдирдХреЛ рд░реВрдкрдорд╛ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рдкреНрд░рд▓реЛрднрди рд╣реБрдиреНрдЫред рддрд░ рдПрдХ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдорд╛рддреНрд░ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдЧрд░реНрди рдкрд░реНрдпрд╛рдкреНрдд рдЫреИрдиред рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рдирд┐рдЬреА рдХреБрдЮреНрдЬреА рдкрдирд┐ рд╣реБрдиреНрдЫред рдпрд╕реИрд▓реЗ рд╣рд╛рдореАрд▓реЗ рдЖрдлреИрд▓рд╛рдИ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЬрд╛рд░реА рдЧрд░реНрдиреБ рдЕрдШрд┐ рдпреЛ "рдЖрдкрддрдХрд╛рд▓реАрди" рдХреБрдЮреНрдЬреА рдЬреЛрдбреА рдЙрддреНрдкрдиреНрди рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫред рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рдХреБрд░рд╛ рдпреЛ рд╣реЛ рдХрд┐ рд╣рд╛рдореАрд▓реЗ рд╕рд░реНрднрд░рдорд╛ рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреНрд░рдорд╛рдгрдкрддреНрд░ рджреЗрдЦрд╛рдЙрдЫреМрдВ, рдХреБрдЮреНрдЬреА рдЬреЛрдбреАрд▓рд╛рдИ рд╕рдВрдХреЗрдд рдЧрд░реНрджреИ рдЬрд╕рдХреЛ рд▓рд╛рдЧрд┐ рд╣рд╛рдореАрд╕рдБрдЧ рдирд┐рдЬреА рдХреБрдЮреНрдЬреА рдЫред

рддреНрдпрд╕реИрд▓реЗ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдЮреНрдЬреА рд╡рд┐рдирд┐рдордп рдЕрдЭреИ рдЬреАрд╡рд┐рдд рд░ рд░рд╛рдореНрд░реЛ рдЫред рдпреЛ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд╕рдВрдЧ рдкрдирд┐ рдХрд╛рдо рдЧрд░реНрджрдЫред рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╣рд░реВрд▓реЗ рдорд╛рддреНрд░ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдЮреНрдЬреАрд╣рд░реВ рднрдгреНрдбрд╛рд░рдг рдЧрд░реНрди рд╕рд░реНрднрд░рдХреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛рд▓рд╛рдИ рд╣рдЯрд╛рдЙрдБрдЫред

рдЕрд░реНрдХреЛ, рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЖрдлреИ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реНред рдорд▓рд╛рдИ 10 рдорд┐рдиреЗрдЯ рдЕрдиреНрддрд░рд╛рд▓рдорд╛ ubuntu рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдЪрд╛рд╣рд┐рдиреНрдЫред рддрдкрд╛рдИрдВ рдпрд╕рд▓рд╛рдИ рдЖрдлреНрдиреЛ рддрд░рд┐рдХрд╛рд▓реЗ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред

$ ssh-keygen -s sk-user-ca -I test-key -n ubuntu -V -5m:+5m emergency

рддрдкрд╛рдЗрдБрд▓рд╛рдИ рддрдкрд╛рдЗрдБрдХреЛ рдФрдВрдард╛рдЫрд╛рдк рдкреНрд░рдпреЛрдЧ рдЧрд░реА рдкреНрд░рдорд╛рдгрдкрддреНрд░рдорд╛ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдЧрд░реНрди рд╕реЛрдзрд┐рдиреЗрдЫред рддрдкрд╛рдИрдВрд▓реЗ рдЕрд▓реНрдкрд╡рд┐рд░рд╛рдорджреНрд╡рд╛рд░рд╛ рдЫреБрдЯреНрдпрд╛рдЗрдПрдХреЛ рдЕрддрд┐рд░рд┐рдХреНрдд рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдорд╣рд░реВ рдердкреНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐ -n ubuntu,carl,ec2-user

рддреНрдпреЛ рд╣реЛ, рдЕрдм рддрдкрд╛рдИрдВрд╕рдБрдЧ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЫ! рдЕрд░реНрдХреЛ рддрдкрд╛рдИрдВрд▓реЗ рд╕рд╣реА рдЕрдиреБрдорддрд┐рд╣рд░реВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ:

$ chmod 600 emergency-cert.pub

рдпрд╕ рдкрдЫрд┐, рддрдкрд╛рдЗрдБ рддрдкрд╛рдЗрдБрдХреЛ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХреЛ рд╕рд╛рдордЧреНрд░реА рд╣реЗрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ:

$ step ssh inspect emergency-cert.pub

рдпреЛ рдореЗрд░реЛ рдЬрд╕реНрддреЛ рджреЗрдЦрд┐рдиреНрдЫ:

emergency-cert.pub
        Type: [email protected] user certificate
        Public key: ECDSA-CERT SHA256:EJSfzfQv1UK44/LOKhBbuh5oRMqxXGBSr+UAzA7cork
        Signing CA: SK-ECDSA SHA256:kLJ7xfTTPQN0G/IF2cq5TB3EitaV4k3XczcBZcLPQ0E
        Key ID: "test-key"
        Serial: 0
        Valid: from 2020-06-24T16:53:03 to 2020-06-24T17:03:03
        Principals:
                ubuntu
        Critical Options: (none)
        Extensions:
                permit-X11-forwarding
                permit-agent-forwarding
                permit-port-forwarding
                permit-pty
                permit-user-rc

рдпрд╣рд╛рдБ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдЮреНрдЬреА рд╣рд╛рдореАрд▓реЗ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реЗрдХреЛ рдЖрдкрддрдХрд╛рд▓реАрди рдХреБрдЮреНрдЬреА рд╣реЛ, рд░ sk-user-ca рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдкреНрд░рд╛рдзрд┐рдХрд░рдгрд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рдЫред

рдЕрдиреНрддрдорд╛ рд╣рд╛рдореА SSH рдЖрджреЗрд╢ рдЪрд▓рд╛рдЙрди рддрдпрд╛рд░ рдЫреМрдВ:


$ ssh -i emergency ubuntu@my-hostname
ubuntu@my-hostname:~$

  1. рддрдкрд╛рдЗрдБ рдЕрдм рддрдкрд╛рдЗрдБрдХреЛ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдкреНрд░рд╛рдзрд┐рдХрд░рдгрд▓рд╛рдИ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдЧрд░реНрдиреЗ рд╣реЛрд╕реНрдЯрдорд╛ рдХреБрдиреИ рдкрдирд┐ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рдХреЛ рд▓рд╛рдЧрд┐ рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред
  2. рддрдкрд╛рдИрдВ рдЖрдкрд╛рддрдХрд╛рд▓реАрди рд╣рдЯрд╛рдЙрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рддрдкрд╛рдИрдВрд▓реЗ sk-user-ca рдмрдЪрдд рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рддрд░ рдпреЛ рд╕реБрд░рдХреНрд╖рд╛ рд╕рд╛рдБрдЪреЛрдорд╛ рднрдПрдХреЛрд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдЖрд╡рд╢реНрдпрдХ рдкрд░реНрджреИрдиред рддрдкрд╛рдИрдВрд▓реЗ рдЖрдлреНрдиреЛ рд╣реЛрд╕реНрдЯрдмрд╛рдЯ рдореВрд▓ PEM рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдЮреНрдЬреА рд╣рдЯрд╛рдЙрди рдкрдирд┐ рдЪрд╛рд╣рдиреБрд╣реБрдиреНрдЫ (рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐ ubuntu рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рдХрд╛ рд▓рд╛рдЧрд┐ ~/.ssh/authorized_keys рдорд╛) рдпрджрд┐ рддрдкрд╛рдИрдВрд▓реЗ рдпрд╕рд▓рд╛рдИ рдЖрдкрддрдХрд╛рд▓реАрди рдкрд╣реБрдБрдЪрдХреЛ рд▓рд╛рдЧрд┐ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрднрдпреЛ рднрдиреЗред

рдЖрдкрддрдХрд╛рд▓реАрди рдкрд╣реБрдБрдЪ: рдХрд╛рд░реНрдп рдпреЛрдЬрдирд╛

рд╕реБрд░рдХреНрд╖рд╛ рдХреБрдЮреНрдЬреА рдЯрд╛рдБрд╕реНрдиреБрд╣реЛрд╕реН рд░ рдЖрджреЗрд╢ рдЪрд▓рд╛рдЙрдиреБрд╣реЛрд╕реН:

$ ssh-add -K

рдпрд╕рд▓реЗ SSH рдПрдЬреЗрдиреНрдЯрдорд╛ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдкреНрд░рд╛рдзрд┐рдХрд░рдгрдХреЛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдЮреНрдЬреА рд░ рдХреБрдЮреНрдЬреА рд╡рд░реНрдгрдирдХрд░реНрддрд╛ рдердкреНрдиреЗрдЫред

рдЕрдм рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдмрдирд╛рдЙрди рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдЮреНрдЬреА рдирд┐рд░реНрдпрд╛рдд рдЧрд░реНрдиреБрд╣реЛрд╕реН:

$ ssh-add -L | tail -1 > sk-user-ca.pub

рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдПрдХ рдШрдгреНрдЯрд╛ рднрдиреНрджрд╛ рдмрдвреАрдХреЛ рдореНрдпрд╛рдж рд╕рдХрд┐рдиреЗ рдорд┐рддрд┐ рднрдПрдХреЛ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН:

$ ssh-keygen -t ecdsa -f emergency
$ ssh-keygen -Us sk-user-ca.pub -I test-key -n [username] -V -5m:+60m emergency
$ chmod 600 emergency-cert.pub

рд░ рдЕрдм SSH рдлреЗрд░рд┐:

$ ssh -i emergency username@host

рдпрджрд┐ рддрдкрд╛рдЗрдБрдХреЛ .ssh/config рдлрд╛рдЗрд▓ рдЬрдбрд╛рди рдЧрд░реНрджрд╛ рдХреЗрд╣рд┐ рд╕рдорд╕реНрдпрд╛рд╣рд░реВ рдЙрддреНрдкрдиреНрди рдЧрд░реНрджреИрдЫ рднрдиреЗ, рддрдкрд╛рдЗрдБ рдпрд╕рд▓рд╛рдИ рдмрд╛рдЗрдкрд╛рд╕ рдЧрд░реНрди -F none рд╡рд┐рдХрд▓реНрдкрдХреЛ рд╕рд╛рде ssh рдЪрд▓рд╛рдЙрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рдпрджрд┐ рддрдкрд╛рдЗрдБ рдПрдХ рд╕рд╣рдХрд░реНрдореАрд▓рд╛рдИ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдкрдард╛рдЙрди рдЖрд╡рд╢реНрдпрдХ рдЫ рднрдиреЗ, рд╕рдмреИрднрдиреНрджрд╛ рд╕рдЬрд┐рд▓реЛ рд░ рд╕рдмреИрднрдиреНрджрд╛ рд╕реБрд░рдХреНрд╖рд┐рдд рд╡рд┐рдХрд▓реНрдк рд╣реЛ рдЬрд╛рджреБрдИ рд╡рд░реНрдорд╣реЛрд▓ред рдпреЛ рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐, рддрдкрд╛рдИрдВрд▓рд╛рдИ рдХреЗрд╡рд▓ рджреБрдИ рдлрд╛рдЗрд▓рд╣рд░реВ рдЪрд╛рд╣рд┐рдиреНрдЫ - рд╣рд╛рдореНрд░реЛ рдЕрд╡рд╕реНрдерд╛рдорд╛, рдЖрдкрд╛рддрдХрд╛рд▓реАрди рд░ рдЖрдкрд╛рддрдХрд╛рд▓реАрди-cert.pubред

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

рд╡рд┐рдЬреНрдЮрд╛рдкрдирдХреЛ рдЕрдзрд┐рдХрд╛рд░рдорд╛

рдПрдкрд┐рдХ рд╕рд░реНрднрд░рд╣рд░реВ рд╣реЛ рд╕рд╕реНрддреЛ VPS AMD рдмрд╛рдЯ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдкреНрд░реЛрд╕реЗрд╕рд░, CPU рдХреЛрд░ рдлреНрд░рд┐рдХреНрд╡реЗрдиреНрд╕реА 3.4 GHz рд╕рдореНрдоред рдЕрдзрд┐рдХрддрдо рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рдирд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рд▓рдЧрднрдЧ рдХреБрдиреИ рдкрдирд┐ рд╕рдорд╕реНрдпрд╛ рд╕рдорд╛рдзрд╛рди рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ - 128 CPU рдХреЛрд░, 512 GB RAM, 4000 GB NVMeред рд╣рд╛рдореАрд╕рдБрдЧ рд╕рд╛рдореЗрд▓ рд╣реБрдиреБрд╣реЛрд╕реН!

рд╣рд╛рдореА рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдХреБрдЮреНрдЬреАрд╣рд░реВрдХреЛ рд╕рд╛рде SSH рд╣реЛрд╕реНрдЯрд╣рд░реВрдорд╛ рдЖрдкрддрдХрд╛рд▓реАрди рдкрд╣реБрдБрдЪрдХреЛ рд▓рд╛рдЧрд┐ рдПрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдЧрд░реНрдЫреМрдВ

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

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди