рд╕рдордп рд╕рдордиреНрд╡рдпрди рдХреИрд╕реЗ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реБрдЖ

рд╕рдордп рд╕рдордиреНрд╡рдпрди рдХреИрд╕реЗ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реБрдЖ
рдЕрдЧрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ TCP/IP рдХреЗ рдЬрд╝рд░рд┐рдП рдПрдХ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд▓рд╛рдЦреЛрдВ рдмрдбрд╝реЗ рдФрд░ рдЫреЛрдЯреЗ рдбрд┐рд╡рд╛рдЗрд╕ рд╣реИрдВ, рддреЛ рдЖрдк рдХреИрд╕реЗ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╕рдордп рдЭреВрда рди рдмреЛрд▓реЗ? рдЖрдЦрд┐рд░рдХрд╛рд░, рдЙрдирдореЗрдВ рд╕реЗ рд╣рд░ рдПрдХ рдХреЗ рдкрд╛рд╕ рдПрдХ рдШрдбрд╝реА рд╣реЛрддреА рд╣реИ, рдФрд░ рдЙрди рд╕рднреА рдкрд░ рд╕рдордп рд╕рд╣реА рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ ntp рдХреЗ рдмрд┐рдирд╛ рдЯрд╛рд▓рд╛ рдирд╣реАрдВ рдЬрд╛ рд╕рдХрддрд╛ред

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

рдпрд╣ рднреА рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рд╣рдорд▓рд╛рд╡рд░ рдЬрд╛рдирдмреВрдЭрдХрд░ MiTM рдпрд╛ DDOS рд╣рдорд▓реЗ рдХреЗ рдЬрд╝рд░рд┐рдП рд╕рдордп рдХрдо рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗред рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдХреБрдЫ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ:

  • рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЦрд╛рддреЗ рдХреЗ рдкрд╛рд╕рд╡рд░реНрдб рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рдПрдВрдЧреЗ;
  • X.509 рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рдпреЗрдВрдЧреЗ;
  • TOTP рджреЛ-рдХрд╛рд░рдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХрд╛рдо рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджреЗрдЧрд╛;
  • рдмреИрдХрдЕрдк тАЬрдкреБрд░рд╛рдиреЗтАЭ рд╣реЛ рдЬрд╛рдПрдВрдЧреЗ рдФрд░ рд╕рд┐рд╕реНрдЯрдо рдЙрдиреНрд╣реЗрдВ рд╣рдЯрд╛ рджреЗрдЧрд╛;
  • DNSSec рдЯреВрдЯ рдЬрд╛рдПрдЧрд╛.

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

25 рдорд┐рдирдЯ рдореЗрдВ NTP рддреЛрдбрд╝реЗрдВ

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

рдХреНрд▓рд╛рд╕рд┐рдХ рдПрдирдЯреАрдкреА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореБрдЦреНрдп рд╢рд┐рдХрд╛рдпрдд рджреБрд░реНрднрд╛рд╡рдирд╛рдкреВрд░реНрдг рд╣рдорд▓реЛрдВ рд╕реЗ рд╕реБрд░рдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рддрдВрддреНрд░ рдХреА рдХрдореА рд╣реИред рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдП рдЧрдП рд╣реИрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕рдордорд┐рдд рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреЗ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХреБрдВрдЬреА (PSK) рддрдВрддреНрд░ рдХреЛ рдкреЗрд╢ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред

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

рдлрд┐рд░ рд╡реЗ рдСрдЯреЛрдХреА рдХреЗ рд╕рд╛рде рдЖрдП, рд▓реЗрдХрд┐рди рддреБрд░рдВрдд рд╣реА рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдбрд┐рдЬрд╝рд╛рдЗрди рдореЗрдВ рдХрдИ рдЧрдВрднреАрд░ рдХрдордЬрд╝реЛрд░рд┐рдпрд╛рдБ рдкрд╛рдИ рдЧрдИрдВ рдФрд░ рдЗрд╕реЗ рдЫреЛрдбрд╝рдирд╛ рдкрдбрд╝рд╛ред рдкреВрд░рд╛ рдореБрджреНрджрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рдВрдЦреНрдпрд╛ (рдмреАрдЬ) рдореЗрдВ рдХреЗрд╡рд▓ 32 рдмрд┐рдЯреНрд╕ рд╣реЛрддреЗ рд╣реИрдВ, рдпрд╣ рдмрд╣реБрдд рдЫреЛрдЯрд╛ рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рдмреНрд░реВрдЯ-рдлреЛрд░реНрд╕ рд╣рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдХрдореНрдкреНрдпреВрдЯреЗрд╢рдирд▓ рдЬрдЯрд┐рд▓рддрд╛ рдирд╣реАрдВ рд╣реИред

  • рдХреБрдВрдЬреА рдЖрдИрдбреА рдПрдХ рд╕рдордорд┐рдд 32-рдмрд┐рдЯ рдХреБрдВрдЬреА рд╣реИ;
  • MAC (рд╕рдВрджреЗрд╢ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреЛрдб) - NTP рдкреИрдХреЗрдЯ рдХрд╛ рдЪреЗрдХрд╕рдо;

рдСрдЯреЛрдХреА рдХреА рдЧрдгрдирд╛ рдирд┐рдореНрди рдкреНрд░рдХрд╛рд░ рд╕реЗ рдХреА рдЬрд╛рддреА рд╣реИред

Autokey=H(Sender-IP||Receiver-IP||KeyID||Cookie)

рдЬрд╣рд╛рдБ H() рдПрдХ рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд╝рд┐рдХ рд╣реИрд╢ рдлрд╝рдВрдХреНрд╢рди рд╣реИред

рдкреИрдХреЗрдЯ рдХреЗ рдЪреЗрдХрд╕рдо рдХреА рдЧрдгрдирд╛ рдХреЗ рд▓рд┐рдП рднреА рдЗрд╕реА рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

MAC=H(Autokey||NTP packet)

рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдкреИрдХреЗрдЯ рдЬрд╛рдБрдЪ рдХреА рд╕рдВрдкреВрд░реНрдг рдЕрдЦрдВрдбрддрд╛ рдХреБрдХреАрдЬрд╝ рдХреА рдкреНрд░рд╛рдорд╛рдгрд┐рдХрддрд╛ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреА рд╣реИред рдЙрдиреНрд╣реЗрдВ рдХреИрдкреНрдЪрд░ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдСрдЯреЛрдХреА рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ MAC рдХреЛ рдЬрд╛рд▓реА рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, NTP рд╕рд░реНрд╡рд░ рдЙрдиреНрд╣реЗрдВ рдЙрддреНрдкрдиреНрди рдХрд░рддреЗ рд╕рдордп рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рдВрдЦреНрдпрд╛ (рдмреАрдЬ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдпрд╣реАрдВ рдкрд░ рдкреЗрдВрдЪ рд╣реИред

Cookie=MSB_32(H(Client IP||Server IP||0||Server Seed))

MSB_32 рдлрд╝рдВрдХреНрд╢рди md5 рд╣реИрд╢ рдЧрдгрдирд╛ рдкрд░рд┐рдгрд╛рдо рд╕реЗ 32 рд╡рд░рд┐рд╖реНрда рдмрд┐рдЯреНрд╕ рдХрд╛рдЯ рджреЗрддрд╛ рд╣реИред рдЬрдм рддрдХ рд╕рд░реНрд╡рд░ рдкреИрд░рд╛рдореАрдЯрд░ рдЕрдкрд░рд┐рд╡рд░реНрддрд┐рдд рд░рд╣рддреЗ рд╣реИрдВ, рддрдм рддрдХ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреБрдХреА рдирд╣реАрдВ рдмрджрд▓рддреА рд╣реИред рдлрд┐рд░ рд╣рдорд▓рд╛рд╡рд░ рдХреЛ рдХреЗрд╡рд▓ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдФрд░ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдХреБрдХреАрдЬрд╝ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рд░реВрдк рдореЗрдВ NTP рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ рдФрд░ рдХреБрдХреА рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВред рдЙрд╕рдХреЗ рдмрд╛рдж, рд╣рдорд▓рд╛рд╡рд░ рдПрдХ рд╕рд░рд▓ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдкреБрдирдГ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред

рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдкрд░ рдмрд▓рдкреВрд░реНрд╡рдХ рдЖрдХреНрд░рдордг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдоред

   for i=0:2^32 тИТ 1 do
        Ci=H(Server-IP||Client-IP||0||i)
        if Ci=Cookie then
            return i
        end if 
    end for

IP рдкрддреЗ рдЬреНрдЮрд╛рдд рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЕрдм рдХреЗрд╡рд▓ 2^32 рд╣реИрд╢ рдмрдирд╛рдирд╛ рдмрд╛рдХреА рд╣реИ рдЬрдм рддрдХ рдХрд┐ рдмрдирд╛рдИ рдЧрдИ рдХреБрдХреА NTP рд╕рд░реНрд╡рд░ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХреБрдХреА рд╕реЗ рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддреАред Intel Core i5 рд╡рд╛рд▓реЗ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд╣реЛрдо рд╕реНрдЯреЗрд╢рди рдкрд░, рдЗрд╕рдореЗрдВ 25 рдорд┐рдирдЯ рд▓рдЧреЗрдВрдЧреЗред

рдПрдирдЯреАрдПрд╕ - рдирдИ рдСрдЯреЛрдХреА

рдСрдЯреЛрдХреА рдореЗрдВ рдРрд╕реА рд╕реБрд░рдХреНрд╖рд╛ рдЦрд╛рдорд┐рдпреЛрдВ рдХреЛ рдмрд░реНрджрд╛рд╢реНрдд рдХрд░рдирд╛ рдЕрд╕рдВрднрд╡ рдерд╛, рдФрд░ 2012 рдореЗрдВ, рдПрдХ рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рдкреНрд░реЛрдЯреЛрдХреЙрд▓ред рдирд╛рдо рд╕реЗ рд╕рдордЭреМрддрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрдиреНрд╣реЛрдВрдиреЗ рдЗрд╕реЗ рд░реАрдмреНрд░рд╛рдВрдб рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рдЗрд╕рд▓рд┐рдП рдСрдЯреЛрдХреА v.2 рдХреЛ рдиреЗрдЯрд╡рд░реНрдХ рдЯрд╛рдЗрдо рд╕рд┐рдХреНрдпреЛрд░рд┐рдЯреА рдирд╛рдо рджрд┐рдпрд╛ рдЧрдпрд╛ред

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

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

рд╕рдордп рд╕рдордиреНрд╡рдпрди рдХреИрд╕реЗ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реБрдЖ

NTS рдореЗрдВ рджреЛ рдирд┐рдЪрд▓реА рдкрд░рдд рдХреЗ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ: рдиреЗрдЯрд╡рд░реНрдХ рдЯрд╛рдЗрдо рд╕рд┐рдХреНрдпреЛрд░рд┐рдЯреА рдХреА рдПрдХреНрд╕рдЪреЗрдВрдЬ (NTS-KE), рдЬреЛ TLS рдкрд░ рд╕реБрд░рдХреНрд╖рд┐рдд рдХрдиреЗрдХреНрд╢рди рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИ, рдФрд░ NTPv4, рдЬреЛ NTP рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдирд╡реАрдирддрдо рдЕрд╡рддрд╛рд░ рд╣реИред рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдиреАрдЪреЗ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдкреНрд░рдердо рдЪрд░рдг - рдПрдирдЯреАрдПрд╕ рдХреЗрдИ

рдЗрд╕ рдЪрд░рдг рдкрд░, NTP рдХреНрд▓рд╛рдЗрдВрдЯ NTS KE рд╕рд░реНрд╡рд░ рд╕реЗ рдПрдХ рдЕрд▓рдЧ TCP рдХрдиреЗрдХреНрд╢рди рдкрд░ TLS 1.2/1.3 рд╕рддреНрд░ рдЖрд░рдВрдн рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рд╕рддреНрд░ рдХреЗ рджреМрд░рд╛рди, рдирд┐рдореНрди рд╣реЛрддрд╛ рд╣реИред

  • рдкрд╛рд░реНрдЯрд┐рдпрд╛рдБ рдорд╛рдкрджрдгреНрдб рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреА рд╣реИрдВ рдПрдИрдПрдбреА рджреВрд╕рд░реЗ рдЪрд░рдг рдХреЗ рд▓рд┐рдП рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо.
  • рджреЛрдиреЛрдВ рдкрдХреНрд╖ рдПрдХ рджреВрд╕рд░реЗ рдирд┐рдореНрди-рд╕реНрддрд░реАрдп рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХреЗрд╡рд▓ NTPv4 рд╣реА рд╕рдорд░реНрдерд┐рдд рд╣реИред
  • рджреЛрдиреЛрдВ рдкрдХреНрд╖ NTP рд╕рд░реНрд╡рд░ рдХрд╛ IP рдкрддрд╛ рдФрд░ рдкреЛрд░реНрдЯ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВред
  • рдПрдирдЯреАрдПрд╕ рдХреЗрдИ рд╕рд░реНрд╡рд░ рдПрдирдЯреАрдкреАрд╡реА4 рдХреЗ рдЕрдВрддрд░реНрдЧрдд рдХреБрдХреАрдЬрд╝ рдЬрд╛рд░реА рдХрд░рддрд╛ рд╣реИред
  • рдкрд╛рд░реНрдЯрд┐рдпрд╛рдВ рдХреБрдХреА рд╕рд╛рдордЧреНрд░реА рд╕реЗ рд╕рдордорд┐рдд рдХреБрдВрдЬрд┐рдпреЛрдВ (C2S рдФрд░ S2C) рдХреА рдПрдХ рдЬреЛрдбрд╝реА рдирд┐рдХрд╛рд▓рддреА рд╣реИрдВред

рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рдлрд╛рдпрджрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЧреБрдкреНрдд рдХрдиреЗрдХреНрд╢рди рдкреИрд░рд╛рдореАрдЯрд░ рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдЪрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреВрд░рд╛ рдмреЛрдЭ рд╕рд┐рджреНрдз рдФрд░ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп TLS рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдкрд░ рдкрдбрд╝рддрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╕реБрд░рдХреНрд╖рд┐рдд NTP рд╣реИрдВрдбрд╢реЗрдХ рдХреЗ рд▓рд┐рдП рдкрд╣рд┐рдпрд╛ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдХрд░рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рдЪрд░рдг 2 - рдПрдирдЯреАрдПрд╕ рд╕рдВрд░рдХреНрд╖рдг рдХреЗ рдЕрдВрддрд░реНрдЧрдд рдПрдирдЯреАрдкреА

рджреВрд╕рд░реЗ рдЪрд░рдг рдореЗрдВ, рдХреНрд▓рд╛рдЗрдВрдЯ NTP рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рд╕рдордп рдХреЛ рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬрд╝ рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд▓рд┐рдП, рдпрд╣ NTPv4 рдкреИрдХреЗрдЯ рд╕рдВрд░рдЪрдирд╛ рдореЗрдВ рдЪрд╛рд░ рд╡рд┐рд╢реЗрд╖ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдлрд╝реАрд▓реНрдб рд╕рдВрдЪрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИред

  • рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдореЗрдВ рд░рд┐рдкреНрд▓реЗ рд╣рдорд▓реЛрдВ рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдиреЙрдиреНрд╕ рд╣реЛрддрд╛ рд╣реИред
  • NTS рдХреБрдХреА рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдореЗрдВ рдХреНрд▓рд╛рдЗрдВрдЯ рджреНрд╡рд╛рд░рд╛ рд░рдЦреА рдЧрдИ NTP рдХреБрдХреАрдЬ рдореЗрдВ рд╕реЗ рдПрдХ рд╢рд╛рдорд┐рд▓ рд╣реИред рдЪреВрдБрдХрд┐ рдХреЗрд╡рд▓ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рдкрд╛рд╕ рд╕рдордорд┐рдд AAED рдХреБрдВрдЬрд┐рдпрд╛рдБ C2S рдФрд░ S2C рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП NTP рд╕рд░реНрд╡рд░ рдХреЛ рдЙрдиреНрд╣реЗрдВ рдХреБрдХреА рд╕рд╛рдордЧреНрд░реА рд╕реЗ рдирд┐рдХрд╛рд▓рдирд╛ рд╣реЛрдЧрд╛ред
  • NTS рдХреБрдХреА рдкреНрд▓реЗрд╕рд╣реЛрд▓реНрдбрд░ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд░ рд╕реЗ рдЕрддрд┐рд░рд┐рдХреНрдд рдХреБрдХреАрдЬрд╝ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИред рдпрд╣ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ NTP рд╕рд░реНрд╡рд░ рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдЕрдиреБрд░реЛрдз рд╕реЗ рдЬрд╝реНрдпрд╛рджрд╛ рд▓рдВрдмреА рди рд╣реЛред рдпрд╣ рдПрдореНрдкрд▓реАрдлрд┐рдХреЗрд╢рди рд╣рдорд▓реЛрдВ рдХреЛ рд░реЛрдХрдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИред
  • рдПрдирдЯреАрдПрд╕ рдкреНрд░рдорд╛рдгрдХ рдФрд░ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯреЗрдб рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдлрд╝реАрд▓реНрдб рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдореЗрдВ AAED рдПрд▓реНрдЧреЛрд░рд┐рджрдо рд╕рд┐рдлрд░ рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ C2S рдХреБрдВрдЬреА, NTP рд╣реЗрдбрд░, рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдФрд░ рдКрдкрд░ рдмрддрд╛рдП рдЧрдП EF рд╕рд╣рд╛рдпрдХ рдбреЗрдЯрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рд╣реЛрддреЗ рд╣реИрдВред рдЗрд╕ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рдмрд┐рдирд╛, рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдХреЛ рдЬрд╛рд▓реА рдмрдирд╛рдирд╛ рд╕рдВрднрд╡ рд╣реИред

рд╕рдордп рд╕рдордиреНрд╡рдпрди рдХреИрд╕реЗ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реБрдЖ

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

  • рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреНрд▓рд╛рдЗрдВрдЯ рдЕрдиреБрд░реЛрдз рдХреА рджрд░реНрдкрдг рдкреНрд░рддрд┐рд▓рд┐рдкрд┐, рдЬреЛ рд░рд┐рдкреНрд▓реЗ рд╣рдорд▓реЛрдВ рдХреЗ рд╡рд┐рд░реБрджреНрдз рдПрдХ рдЙрдкрд╛рдп рд╣реИред
  • рдПрдирдЯреАрдПрд╕ рдХреБрдХреА рдПрдХреНрд╕рдЯреЗрдВрд╢рди рд╕рддреНрд░ рдЬрд╛рд░реА рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдХреБрдХреАрдЬрд╝ред
  • рдПрдирдЯреАрдПрд╕ рдкреНрд░рдорд╛рдгрдХ рдФрд░ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯреЗрдб рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдлрд╝реАрд▓реНрдб рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдореЗрдВ рдПрдХ S2C рдХреБрдВрдЬреА рдХреЗ рд╕рд╛рде рдПрдХ AEAD рд╕рд┐рдлрд░ рд╣реЛрддрд╛ рд╣реИред

рджреВрд╕рд░реЗ рд╣реИрдВрдбрд╢реЗрдХ рдХреЛ рдкрд╣рд▓реЗ рдЪрд░рдг рдХреЛ рджрд░рдХрд┐рдирд╛рд░ рдХрд░рддреЗ рд╣реБрдП рдХрдИ рдмрд╛рд░ рджреЛрд╣рд░рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдЕрдиреБрд░реЛрдз рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рдЕрддрд┐рд░рд┐рдХреНрдд рдХреБрдХреАрдЬрд╝ рджреЗрддреА рд╣реИред рдЗрд╕рдХрд╛ рд▓рд╛рдн рдпрд╣ рд╣реИ рдХрд┐ PKI рдбреЗрдЯрд╛ рдХреА рдЧрдгрдирд╛ рдФрд░ рд╕рдВрдЪрд╛рд░рдг рдХреЗ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рд╕рдВрд╕рд╛рдзрди-рдЧрд╣рди TLS рд╕рдВрдЪрд╛рд▓рди рдХреЛ рджреЛрд╣рд░рд╛рдП рдЧрдП рдЕрдиреБрд░реЛрдзреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╡рд┐рд╢реЗрд╖ FPGA рдШрдбрд╝рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ, рдЬрдм рд╕рднреА рдмреБрдирд┐рдпрд╛рджреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рд╕рдордорд┐рдд рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлреА рдХреЗ рдХреНрд╖реЗрддреНрд░ рд╕реЗ рдХрдИ рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рдкреИрдХ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдкреВрд░реЗ TLS рд╕реНрдЯреИрдХ рдХреЛ рджреВрд╕рд░реЗ рдбрд┐рд╡рд╛рдЗрд╕ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдПрдирдЯреАрдкреАрд╕реЗрдХ

NTP рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рдЦрд╛рд╕ рд╣реИ? рдЗрд╕ рддрдереНрдп рдХреЗ рдмрд╛рд╡рдЬреВрдж рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓реЗрдЦрдХ рдбреЗрд╡ рдорд┐рд▓реНрд╕ рдиреЗ рдЕрдкрдиреЗ рдХреЛрдб рдХреЛ рдпрдерд╛рд╕рдВрднрд╡ рд╕рд░реНрд╡реЛрддреНрддрдо рддрд░реАрдХреЗ рд╕реЗ рдкреНрд░рд▓реЗрдЦрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛, рдПрдХ рджреБрд░реНрд▓рдн рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ 35 рд╕рд╛рд▓ рдкрд╣рд▓реЗ рдХреЗ рд╕рдордп рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреА рдкреЗрдЪреАрджрдЧрд┐рдпреЛрдВ рдХреЛ рд╕рдордЭрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдЧрд╛ред рдХреБрдЫ рдХреЛрдб POSIX рдпреБрдЧ рд╕реЗ рдкрд╣рд▓реЗ рд▓рд┐рдЦреЗ рдЧрдП рдереЗ, рдФрд░ рдпреВрдирд┐рдХреНрд╕ API рдЖрдЬ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╕реЗ рдмрд╣реБрдд рдЕрд▓рдЧ рдерд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╢реЛрд░ рд▓рд╛рдЗрдиреЛрдВ рдкрд░ рд╣рд╕реНрддрдХреНрд╖реЗрдк рд╕реЗ рд╕рдВрдХреЗрдд рдХреЛ рд╕рд╛рдл рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╛рдВрдЦреНрдпрд┐рдХреА рдХреЗ рдЬреНрдЮрд╛рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

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

рдХрд╛рд░реНрдп рд╕рдореВрд╣ рдХрд╛ рдиреЗрддреГрддреНрд╡ рдХреЛрдИ рдФрд░ рдирд╣реАрдВ рдмрд▓реНрдХрд┐ рд╕реНрд╡рдпрдВ рд╢реНрд░реА. рдПрд░рд┐рдХ рд╕реНрдЯреАрд╡рди рд░реЗрдордВрдб тАФ рдУрдкрди рд╕реЛрд░реНрд╕ рд╕рдореБрджрд╛рдп рдХреЗ рд╕рдВрд╕реНрдерд╛рдкрдХреЛрдВ рдФрд░ рд╕реНрддрдВрднреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдФрд░ рдкреБрд╕реНрддрдХ рдХреЗ рд▓реЗрдЦрдХ рдХреИрдереЗрдбреНрд░рд▓ рдФрд░ рдмрд╛рдЬрд╝рд╛рд░рдПрд░рд┐рдХ рдФрд░ рдЙрдирдХреЗ рд╕рд╛рдерд┐рдпреЛрдВ рдиреЗ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдмрд┐рдЯрдХреАрдкрд░ рдкреНрд▓реИрдЯрдлрд╝реЙрд░реНрдо рд╕реЗ NTP рдХреЛрдб рдХреЛ git рдореЗрдВ рдЯреНрд░рд╛рдВрд╕рдлрд╝рд░ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рд▓реЗрдХрд┐рди рдпрд╣ рдЗрддрдирд╛ рдЖрд╕рд╛рди рдирд╣реАрдВ рдерд╛ред рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд▓реАрдбрд░ рд╣рд░рд▓рд╛рди рд╕реНрдЯреЗрди рдЗрд╕ рдлрд╝реИрд╕рд▓реЗ рдХреЗ рдЦрд╝рд┐рд▓рд╛рдлрд╝ рдереЗ рдФрд░ рдмрд╛рддрдЪреАрдд рдПрдХ рдЧрддрд┐рд░реЛрдз рдкрд░ рдкрд╣реБрдБрдЪ рдЧрдИред рдлрд┐рд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛрдб рдХреЛ рдлрд╝реЛрд░реНрдХ рдХрд░рдиреЗ рдХрд╛ рдлрд╝реИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдФрд░ рдЗрд╕ рддрд░рд╣ NTPSec рдЕрд╕реНрддрд┐рддреНрд╡ рдореЗрдВ рдЖрдпрд╛ред

GPSD, рдЧрдгрд┐рддреАрдп рдкреГрд╖реНрдарднреВрдорд┐ рдФрд░ рдкреНрд░рд╛рдЪреАрди рдХреЛрдб рдХреЛ рдкрдврд╝рдиреЗ рдХреА рдЬрд╛рджреБрдИ рдХреНрд╖рдорддрд╛ рд╕рд╣рд┐рдд рдПрдХ рдареЛрд╕ рдкреГрд╖реНрдарднреВрдорд┐ рдХреЗ рд╕рд╛рде, рдПрд░рд┐рдХ рд░реЗрдордВрдб рдЗрд╕ рддрд░рд╣ рдХреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдЕрдВрдЬрд╛рдо рджреЗрдиреЗ рд╡рд╛рд▓реЗ рд╣реИрдХрд░ рдереЗред рдЯреАрдо рдиреЗ рдПрдХ рдХреЛрдб рдорд╛рдЗрдЧреНрд░реЗрд╢рди рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рдХреЛ рдвреВрдВрдврд╛ рдФрд░ рд╕рд┐рд░реНрдл 10 рд╣рдлреНрддреЛрдВ рдореЗрдВ NTP рдмрд╕ рдЧрдпрд╛GitLab рдкрд░ред рдХрд╛рдо рддреЗрдЬреА рд╕реЗ рдмрдврд╝рдиреЗ рд▓рдЧрд╛ред

рдПрд░рд┐рдХ рд░реЗрдордВрдб рдХреА рдЯреАрдо рдиреЗ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдРрд╕реЗ рдирд┐рдкрдЯрд╛ рдЬреИрд╕реЗ рдСрдЧрд╕реНрдЯреЗ рд░реЙрдбрд┐рди рдиреЗ рдЪрдЯреНрдЯрд╛рди рдХреЗ рдЯреБрдХрдбрд╝реЗ рд╕реЗ рдирд┐рдкрдЯрд╛ рд╣реЛред 175 KLOC рдкреБрд░рд╛рдиреЗ рдХреЛрдб рдХреЛ рд╣рдЯрд╛рдХрд░, рд╡реЗ рдЕрдкрдиреЗ рд╣рдорд▓реЗ рдХреА рд╕рддрд╣ рдХреЛ рдХрд╛рдлреА рд╣рдж рддрдХ рдХрдо рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдереЗ, рдЬрд┐рд╕рд╕реЗ рдХрдИ рд╕реБрд░рдХреНрд╖рд╛ рдЫреЗрдж рдмрдВрдж рд╣реЛ рдЧрдПред

рдпрд╣рд╛рдВ рдкреНрд░рднрд╛рд╡рд┐рдд рд▓реЛрдЧреЛрдВ рдХреА рдЕрдкреВрд░реНрдг рд╕реВрдЪреА рджреА рдЧрдИ рд╣реИ:

  • рдЕрд▓рд┐рдЦрд┐рдд, рдЕрдкреНрд░рдЪрд▓рд┐рдд, рдкреБрд░рд╛рдирд╛ рдпрд╛ рдЯреВрдЯрд╛ рд╣реБрдЖ рд░реЗрдлрдХреНрд▓реЙрдХред
  • рдЕрдкреНрд░рдпреБрдХреНрдд рдЖрдИрд╕реАрдПрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА.
  • libopts/рдСрдЯреЛрдЬреЗрди.
  • рд╡рд┐рдВрдбреЛрдЬрд╝ рдХреЗ рд▓рд┐рдП рдкреБрд░рд╛рдирд╛ рдХреЛрдб.
  • рдПрдирдЯреАрдкреАрдбреАрд╕реА.
  • рдСрдЯреЛрдХреА.
  • рд╕реА рдХреЛрдб ntpq рдХреЛ рдкрд╛рдпрдерди рдореЗрдВ рдкреБрдирдГ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ред
  • рд╕реА рдХреЛрдб sntp/ntpdig рдХреЛ рдкрд╛рдпрдерди рдореЗрдВ рдкреБрдирдГ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ред

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

  • рдмрдлрд░ рдУрд╡рд░рдлреНрд▓реЛ рдХреЗ рдЦрд┐рд▓рд╛рдл рдХреЛрдб рдХреА рд╕реБрд░рдХреНрд╖рд╛ рдХреЛ рдХрд╛рдлреА рдордЬрдмреВрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдмрдлрд░ рдУрд╡рд░рдлреНрд▓реЛ рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП, рд╕рднреА рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рд╕реНрдЯреНрд░рд┐рдВрдЧ рдлрд╝рдВрдХреНрд╢рди (strcpy / strcat / strtok / sprintf / vsprintf / gets) рдХреЛ рд╕реБрд░рдХреНрд╖рд┐рдд рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рд╕реЗ рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬреЛ рдмрдлрд░ рдЖрдХрд╛рд░ рд╕реАрдорд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВред
  • рдПрдирдЯреАрдПрд╕ рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛.
  • рднреМрддрд┐рдХ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рджреНрд╡рд╛рд░рд╛ рд╕рдордп рдЪрд░рдг рд╕рдЯреАрдХрддрд╛ рджрд╕ рдЧреБрдирд╛ рдмрдврд╝ рдЧрдИ рд╣реИред рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЖрдзреБрдирд┐рдХ рдХрдВрдкреНрдпреВрдЯрд░ рдШрдбрд╝рд┐рдпрд╛рдБ рдЙрди рдШрдбрд╝рд┐рдпреЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕рдЯреАрдХ рд╣реЛ рдЧрдИ рд╣реИрдВ рдЬреЛ NTP рдХреЗ рдкрд╣рд▓реА рдмрд╛рд░ рдкреЗрд╢ рдХрд┐рдП рдЬрд╛рдиреЗ рдХреЗ рд╕рдордп рдереАрдВред рдЗрд╕рдХрд╛ рд╕рдмрд╕реЗ рдмрдбрд╝рд╛ рд▓рд╛рдн GPSDO рдФрд░ рд╕рдорд░реНрдкрд┐рдд рд░реЗрдбрд┐рдпреЛ рд╕рдордп рд╕реНрдЯреЗрд╢рди рд╣реИрдВред
  • рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдШрдЯрд╛рдХрд░ рджреЛ рдХрд░ рджреА рдЧрдИ рд╣реИред рдкрд░реНрд▓, awk рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ S рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рдЬрдЧрд╣ рдЕрдм рд╕рдм рдкрд╛рдпрдерди рд╣реИред рдЗрд╕рд╕реЗ рдХреЛрдб рдХреЗ рджреЛрдмрд╛рд░рд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХреЗ рд▓рд┐рдП рдЬрд╝реНрдпрд╛рджрд╛ рдЕрд╡рд╕рд░ рдорд┐рд▓рддреЗ рд╣реИрдВред
  • рдСрдЯреЛрдЯреВрд▓реНрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдиреВрдбрд▓реНрд╕ рдХреЗ рдмрдЬрд╛рдп, рдкрд░рд┐рдпреЛрдЬрдирд╛ рдиреЗ рдПрдХ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдмрд┐рд▓реНрдб рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ WAF.
  • рдкрд░рд┐рдпреЛрдЬрдирд╛ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ рдЕрдкрдбреЗрдЯ рдФрд░ рдкреБрдирд░реНрдЧрдард┐рдд рдХрд┐рдпрд╛ред рдЕрд╕рдВрдЧрдд рдФрд░ рдХрднреА-рдХрднреА рдкреБрд░рд╛рдиреЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдХреЗ рд╕рдВрдЧреНрд░рд╣ рд╕реЗ, рд╣рдордиреЗ рдХрд╛рдлреА рд╕рдВрддреЛрд╖рдЬрдирдХ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдмрдирд╛рдПред рдкреНрд░рддреНрдпреЗрдХ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╕реНрд╡рд┐рдЪ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЗрдХрд╛рдИ рдореЗрдВ рдЕрдм рд╕рдЪреНрдЪрд╛рдИ рдХрд╛ рдПрдХ рд╣реА рд╕рдВрд╕реНрдХрд░рдг рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореИрдиреБрдЕрд▓ рдкреЗрдЬ рдФрд░ рд╡реЗрдм рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдЕрдм рдПрдХ рд╣реА рдХреЛрд░ рдлрд╝рд╛рдЗрд▓реЛрдВ рд╕реЗ рдЙрддреНрдкрдиреНрди рд╣реЛрддреЗ рд╣реИрдВред

NTPSec рдХрдИ Linux рдбрд┐рд╕реНрдЯреНрд░реАрдмреНрдпреВрд╢рди рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реИред рдирд╡реАрдирддрдо рд╕реНрдерд┐рд░ рд╕рдВрд╕реНрдХрд░рдг рд╡рд░реНрддрдорд╛рди рдореЗрдВ 1.1.8 рд╣реИ, Gentoo Linux рдХреЗ рд▓рд┐рдП рдпрд╣ рдЕрдВрддрд┐рдо рд╕рдВрд╕реНрдХрд░рдг рд╣реИред

(1:696)$ sudo emerge -av ntpsec
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild   R    ] net-misc/ntpsec-1.1.7-r1::gentoo  USE="samba seccomp -debug -doc -early -gdb -heat -libbsd -nist -ntpviz -rclock_arbiter -rclock_generic -rclock_gpsd -rclock_hpgps -rclock_jjy -rclock_local -rclock_modem -rclock_neoclock -rclock_nmea -rclock_oncore -rclock_pps -rclock_shm -rclock_spectracom -rclock_trimble -rclock_truetime -rclock_zyfer -smear -tests" PYTHON_TARGETS="python3_6" 0 KiB
Total: 1 package (1 reinstall), Size of downloads: 0 KiB
Would you like to merge these packages? [Yes/No]

рдХреНрд░реЛрдиреА

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

  • chrony рд╕рд┐рд╕реНрдЯрдо рдХреНрд▓реЙрдХ рдХреЛ рддреЗрдЬреА рд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рд╕рдЯреАрдХрддрд╛ рдХреЗ рд╕рд╛рде рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝ рдХрд░ рд╕рдХрддрд╛ рд╣реИ;
  • рдХреНрд░реЛрдиреА рдЫреЛрдЯрд╛ рд╣реИ, рдХрдо рдореЗрдореЛрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХреЗрд╡рд▓ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдиреЗ рдкрд░ рд╣реА рдкреНрд░реЛрд╕реЗрд╕рд░ рддрдХ рдкрд╣реБрдБрдЪрддрд╛ рд╣реИред рдпрд╣ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдФрд░ рдКрд░реНрдЬрд╛ рдХреА рдмрдЪрдд рдХреЗ рд▓рд┐рдП рдПрдХ рдмрдбрд╝рд╛ рдкреНрд▓рд╕ рд╣реИ;
  • chrony рд▓рд┐рдирдХреНрд╕ рдореЗрдВ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рд╕реНрдерд╛рдиреАрдп рдиреЗрдЯрд╡рд░реНрдХ рдкрд░ рдЕрддреНрдпрдВрдд рд╕рдЯреАрдХ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рд╕рдВрднрд╡ рд╣реЛ рдкрд╛рддрд╛ рд╣реИред

рд╣рд╛рд▓рд╛рдБрдХрд┐, рдХреНрд░реЙрдиреА рдореЗрдВ рдкреБрд░рд╛рдиреЗ NTP рдХреА рдХреБрдЫ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рдирд╣реАрдВ рд╣реИрдВ, рдЬреИрд╕реЗ рдХрд┐ рдмреНрд░реЙрдбрдХрд╛рд╕реНрдЯ рдФрд░ рдорд▓реНрдЯреАрдХрд╛рд╕реНрдЯ рдХреНрд▓рд╛рдЗрдВрдЯ/рд╕рд░реНрд╡рд░ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХреНрд▓рд╛рд╕рд┐рдХ NTP рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ OS рдФрд░ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред

chronyd рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд░ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдФрд░ NTP рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд╕ chrony.conf рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреЛрд░реНрдЯ 0 рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВред рдпрд╣ рдЙрди рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд╣рд╛рдБ NTP рдХреНрд▓рд╛рдЗрдВрдЯ рдпрд╛ рд╕рд╛рдерд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдордп рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред рд╕рдВрд╕реНрдХрд░рдг 2.0 рд╕реЗ рд╢реБрд░реВ рд╣реЛрдХрд░, NTP рд╕рд░реНрд╡рд░ рдкреЛрд░реНрдЯ рдХреЗрд╡рд▓ рддрднреА рдЦреБрд▓рд╛ рд░рд╣рддрд╛ рд╣реИ рдЬрдм allow рдирд┐рд░реНрджреЗрд╢ рдпрд╛ рд╕рдВрдмрдВрдзрд┐рдд рдХрдорд╛рдВрдб рджреНрд╡рд╛рд░рд╛ рдкрд╣реБрдБрдЪ рдХреА рдЕрдиреБрдорддрд┐ рджреА рдЬрд╛рддреА рд╣реИ, рдпрд╛ NTP рд╕рд╣рдХрд░реНрдореА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрд╛ рдмреНрд░реЙрдбрдХрд╛рд╕реНрдЯ рдирд┐рд░реНрджреЗрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рджреЛ рдореЙрдбреНрдпреВрд▓ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред

  • chronyd рдПрдХ рдмреИрдХрдЧреНрд░рд╛рдЙрдВрдб рд╕рд░реНрд╡рд┐рд╕ рд╣реИ рдЬреЛ рд╕рд┐рд╕реНрдЯрдо рдХреНрд▓реЙрдХ рдФрд░ рдмрд╛рд╣рд░реА рдЯрд╛рдЗрдо рд╕рд░реНрд╡рд░ рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рддреА рд╣реИ рдФрд░ рд╕реНрдерд╛рдиреАрдп рд╕рдордп рдХреЛ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░рддреА рд╣реИред рдпрд╣ NTP рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЛ рднреА рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рдпрд╛ рд╕рд░реНрд╡рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░ рд╕рдХрддрд╛ рд╣реИред
  • chronyc рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреА рдирд┐рдЧрд░рд╛рдиреА рдФрд░ рдирд┐рдпрдВрддреНрд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЙрдкрдпреЛрдЧрд┐рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╡рд┐рднрд┐рдиреНрди рд╕реЗрд╡рд╛ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ рдЖрдкрдХреЛ chronyd рдХреЗ рдЪрд▓рддреЗ рд░рд╣рдиреЗ рдХреЗ рджреМрд░рд╛рди NTP рд╕рд░реНрд╡рд░ рдЬреЛрдбрд╝рдиреЗ рдпрд╛ рд╣рдЯрд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

RedHat Linux рд╕рдВрд╕реНрдХрд░рдг 7 рд╕реЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ chrony рдХреЛ рд╕рдордп рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рд╕реЗрд╡рд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдкреИрдХреЗрдЬ рдЕрдиреНрдп Linux рд╡рд┐рддрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рднреА рдЙрдкрд▓рдмреНрдз рд╣реИред рдирд╡реАрдирддрдо рд╕реНрдерд┐рд░ рд╕рдВрд╕реНрдХрд░рдг 3.5 рд╣реИ, рдЬрд┐рд╕рдХрд╛ v4.0 рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред

(1:712)$ sudo emerge -av chrony
These are the packages that would be merged, in order:
Calculating dependencies... done!
[binary  N     ] net-misc/chrony-3.5-r2::gentoo  USE="adns caps cmdmon ipv6 ntp phc readline refclock rtc seccomp (-html) -libedit -pps (-selinux)" 246 KiB
Total: 1 package (1 new, 1 binary), Size of downloads: 246 KiB
Would you like to merge these packages? [Yes/No]

рдСрдлрд┐рд╕ рдиреЗрдЯрд╡рд░реНрдХ рдореЗрдВ рд╕рдордп рдХреЛ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬрд╝ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдЕрдкрдирд╛ рдЦреБрдж рдХрд╛ рд░рд┐рдореЛрдЯ рдХреНрд░реЛрдиреА рд╕рд░реНрд╡рд░ рдХреИрд╕реЗ рд╕реЗрдЯ рдХрд░реЗрдВред рдиреАрдЪреЗ VPS рдкрд░ рд╕реЗрдЯ рдЕрдк рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

RHEL рдкрд░ Chrony / VPS рдкрд░ CentOS рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдЙрджрд╛рд╣рд░рдг

рдЖрдЗрдП рдЕрдм рдереЛрдбрд╝рд╛ рдЕрднреНрдпрд╛рд╕ рдХрд░реЗрдВ рдФрд░ VPS рдкрд░ рдЕрдкрдирд╛ рдЦреБрдж рдХрд╛ NTP рд╕рд░реНрд╡рд░ рдмрдирд╛рдПрдВред рдпрд╣ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИ, рдмрд╕ RuVDS рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдПрдХ рдЙрдкрдпреБрдХреНрдд рдЯреИрд░рд┐рдл рдЪреБрдиреЗрдВ, рдПрдХ рддреИрдпрд╛рд░ рд╕рд░реНрд╡рд░ рд▓реЗрдВ рдФрд░ рдПрдХ рджрд░реНрдЬрди рд╕рд░рд▓ рдХрдорд╛рдВрдб рдЯрд╛рдЗрдк рдХрд░реЗрдВред рд╣рдорд╛рд░реЗ рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП, рдпрд╣ рд╡рд┐рдХрд▓реНрдк рдХрд╛рдлреА рдЙрдкрдпреБрдХреНрдд рд╣реИред

рд╕рдордп рд╕рдордиреНрд╡рдпрди рдХреИрд╕реЗ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реБрдЖ

рдЖрдЗрдП рд╕реЗрд╡рд╛ рдХреА рд╕реНрдерд╛рдкрдирд╛ рдХреА рдУрд░ рдмрдврд╝реЗрдВ рдФрд░ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ chrony рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред

[root@server ~]$ yum install chrony

RHEL 8 / CentOS 8 рдПрдХ рдЕрд▓рдЧ рдкреИрдХреЗрдЬ рдкреНрд░рдмрдВрдзрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред

[root@server ~]$ dnf install chrony

рдХреНрд░реЙрдиреА рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рд╕реЗрд╡рд╛ рд╢реБрд░реВ рдФрд░ рд╕рдХреНрд░рд┐рдп рдХрд░рдиреА рд╣реЛрдЧреАред

[root@server ~]$ systemctl enable chrony --now

рдпрджрд┐ рдЖрдк рдЪрд╛рд╣реЗрдВ, рддреЛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕рдордп рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП /etc/chrony.conf рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдХреЗ NPT рд╕рд░реНрд╡рд░ рдХреЛ рдирд┐рдХрдЯрддрдо рд╕реНрдерд╛рдиреАрдп рд╕рд░реНрд╡рд░ рд╕реЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
server 0.ru.pool.ntp.org iburst
server 1.ru.pool.ntp.org iburst
server 2.ru.pool.ntp.org iburst
server 3.ru.pool.ntp.org iburst

рдЗрд╕рдХреЗ рдмрд╛рдж, рд╣рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкреВрд▓ рд╕реЗ рдиреЛрдбреНрд╕ рдХреЗ рд╕рд╛рде NTP рд╕рд░реНрд╡рд░ рдХрд╛ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬреЗрд╢рди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╣реИрдВред

[root@server ~]$ timedatectl set-ntp true
[root@server ~]$ systemctl restart chronyd.service

рдПрдирдЯреАрдкреА рдкреЛрд░реНрдЯ рдХреЛ рдмрд╛рд╣рд░ рдХреА рдУрд░ рдЦреЛрд▓рдирд╛ рднреА рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдЕрдиреНрдпрдерд╛ рдлрд╝рд╛рдпрд░рд╡реЙрд▓ рдХреНрд▓рд╛рдЗрдВрдЯ рдиреЛрдбреНрд╕ рд╕реЗ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдХрдиреЗрдХреНрд╢рди рдХреЛ рдЕрд╡рд░реБрджреНрдз рдХрд░ рджреЗрдЧрд╛ред

[root@server ~]$ firewall-cmd --add-service=ntp --permanent 
[root@server ~]$ firewall-cmd --reload

рдХреНрд▓рд╛рдЗрдВрдЯ рд╕рд╛рдЗрдб рдкрд░, рд╕рдордп рдХреНрд╖реЗрддреНрд░ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕реЗрдЯ рдХрд░рдирд╛ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред

[root@client ~]$ timedatectl set-timezone Europe/Moscow

/etc/chrony.conf рдлрд╝рд╛рдЗрд▓ рдореЗрдВ, рд╣рдорд╛рд░реЗ VPS рд╕рд░реНрд╡рд░ рдХрд╛ IP рдпрд╛ рд╣реЛрд╕реНрдЯ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ рдЬрд┐рд╕ рдкрд░ NTP рд╕рд░реНрд╡рд░ chrony рдЪрд▓ рд░рд╣рд╛ рд╣реИред

server my.vps.server

рдФрд░ рдЕрдВрдд рдореЗрдВ, рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░ рд╕рдордп рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рдкреНрд░рд╛рд░рдВрдн рдХрд░реЗрдВред

[root@client ~]$ systemctl enable --now chronyd
[root@client ~]$ timedatectl set-ntp true

рдЕрдЧрд▓реА рдмрд╛рд░ рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛рдКрдВрдЧрд╛ рдХрд┐ рдЗрдВрдЯрд░рдиреЗрдЯ рдХреЗ рдмрд┐рдирд╛ рднреА рд╕рдордп рдХреЛ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝ рдХрд░рдиреЗ рдХреЗ рдХреНрдпрд╛-рдХреНрдпрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИрдВред

рд╕рдордп рд╕рдордиреНрд╡рдпрди рдХреИрд╕реЗ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реБрдЖ

рд╕рдордп рд╕рдордиреНрд╡рдпрди рдХреИрд╕реЗ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реБрдЖ

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

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