рдХрд╛рдо рдЬрддрд┐ рд╕рд░рд▓ рдЫ, рдЙрддрд┐ рдзреЗрд░реИ рдкрдЯрдХ рдо рдЧрд▓реНрддреА рдЧрд░реНрдЫреБ

рдХрд╛рдо рдЬрддрд┐ рд╕рд░рд▓ рдЫ, рдЙрддрд┐ рдзреЗрд░реИ рдкрдЯрдХ рдо рдЧрд▓реНрддреА рдЧрд░реНрдЫреБ

рдпреЛ рд╕рд╛рдиреЛ рдХрд╛рдо рдПрдХ рд╢реБрдХреНрд░рдмрд╛рд░ рджрд┐рдЙрдБрд╕реЛ рдЙрдареНрдпреЛ рд░ 2-3 рдорд┐рдиреЗрдЯ рд╕рдордп рд▓рд┐рдиреБ рдкрд░реНрдЫред рд╕рд╛рдорд╛рдиреНрдпрддрдпрд╛, рд╕рдзреИрдВ рдЬрд╕реНрддреИред

рдПрдХ рд╕рд╣рдХрд░реНрдореАрд▓реЗ рдорд▓рд╛рдИ рдЖрдлреНрдиреЛ рд╕рд░реНрднрд░рдорд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдареАрдХ рдЧрд░реНрди рд╕реЛрдзреЗред рдореИрд▓реЗ рдпреЛ рдЧрд░реЗрдВ, рдЙрд╕рд▓рд╛рдИ рджрд┐рдПрдБ рд░ рдЕрдирдЬрд╛рдирдорд╛ рдЦрд╕реНрдпреЛ: "рд╕рдордп 5 рдорд┐рдиреЗрдЯ рдЫрд┐рдЯреЛ рдЫред" рд╕рд░реНрднрд░рд▓рд╛рдИ рд╕рд┐рдЩреНрдХреНрд░реЛрдирд╛рдЗрдЬреЗрд╕рди рдЖрдлреИрдВ рд╣реНрдпрд╛рдиреНрдбрд▓ рдЧрд░реНрди рджрд┐рдиреБрд╣реЛрд╕реНред рдЖрдзрд╛ рдШрдгреНрдЯрд╛, рдПрдХ рдШрдиреНрдЯрд╛ рдмрд┐рддреНрдпреЛ, рд░ рдК рдЕрдЭреИ рдкрдл рд░ рдЪреБрдкрдЪрд╛рдк рд╕рд░рд╛рдкреНрдпреЛред

тАЬрдореВрд░реНрдЦ! тАФ рдореИрд▓реЗ рд╕реЛрдЪреЗрдБ, рд╕рд░реНрднрд░ рдХрдиреНрд╕реЛрд▓рдорд╛ рд╕реНрд╡рд┐рдЪ рдЧрд░реНрджреИ тАФ рдареАрдХ рдЫ, рдо рдердк рдХреЗрд╣реА рдорд┐рдиреЗрдЯрдХреЛ рд▓рд╛рдЧрд┐ рд╡рд┐рд╢реНрд░рд╛рдо рд▓рд┐рдиреНрдЫреБред

рд╣реЗрд░реМрдВ ntp, rdate, sdwdate рд╕реНрдерд╛рдкрд┐рдд рдЫреИрди timesyncd рдЕрдХреНрд╖рдо рд░ рдЪрд▓рд┐рд░рд╣реЗрдХреЛ рдЫреИрдиред

# timedatectl
      Local time: Sun 2019-08-25 20:44:39 +03
  Universal time: Sun 2019-08-25 17:44:39 UTC
        RTC time: Sun 2019-08-25 17:39:52
       Time zone: Europe/Minsk (+03, +0300)
     NTP enabled: no
NTP synchronized: no
 RTC in local TZ: no
      DST active: n/a

рдпрд╣рд╛рдБ рдо рддреБрд░реБрдиреНрддреИ рдиреЛрдЯ рдЧрд░реНрдиреЗрдЫреБ рдХрд┐ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рд╕рдордп рд╕рд╣реА рдЫ: рдпреЛ рдердк рдиреЗрднрд┐рдЧреЗрдЯ рдЧрд░реНрди рд╕рдЬрд┐рд▓реЛ рд╣реБрдиреЗрдЫред

рдЧрд▓реНрддреАрдХреЛ рд╢реГрдЩреНрдЦрд▓рд╛ рдпрд╣реАрдБрдмрд╛рдЯ рд╕реБрд░реБ рднрдпреЛ ред

рдкрд╣рд┐рд▓реЛ рдЧрд▓реНрддреАред рдЖрддреНрдорд╡рд┐рд╢реНрд╡рд╛рд╕

рдХреНрд▓рд┐рдХ-рдХреНрд▓рд┐рдХ...

# systemctl enable systemd-timesyncd.service && systemctl start systemd-timesyncd.service && ntpdate 0.ru.pool.ntp.org && timedatectl set-ntp on && timedatectl
25 Aug 21:00:10 ntpdate[28114]: adjust time server 195.210.189.106 offset -249.015251 sec
      Local time: Sun 2019-08-25 21:00:10 +03
  Universal time: Sun 2019-08-25 18:00:10 UTC
        RTC time: Sun 2019-08-25 18:00:10
       Time zone: Europe/Minsk (+03, +0300)
     NTP enabled: yes
NTP synchronized: yes
 RTC in local TZ: no
      DST active: n/a

рд╕рдмреИ рдареАрдХ рдЫ, рд╕рдордп рд╕рд┐рдЩреНрдХреНрд░реЛрдирд╛рдЗрдЬ рдЧрд░рд┐рдПрдХреЛ рдЫ, рдкреНрд░рдгрд╛рд▓реА рд╕рдордп рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдПрдХрд╕рдБрдЧ рдореЗрд▓ рдЦрд╛рдиреНрдЫред "рдпреЛ рд▓рд┐рдиреБрд╣реЛрд╕реН," рдореИрд▓реЗ рднрдиреЗ рд░ рдореЗрд░реЛ рд╡реНрдпрд╡рд╕рд╛рдпрдорд╛ рдлрд░реНрдХрд┐рдПрдБред

тАЬрдХреЗ рд▓рд┐рдиреБ ? - рд╕рд╣рдХрд░реНрдореА рдХреНрд░реЛрдзрд┐рдд рдерд┐рдпреЛред "рдпреЛ рдПрдХреИ рд╕рдордп рд╣реЛ!"

рддрдкрд╛рдИрд▓реЗ рд╕рд╛рдорд╛рдиреНрдп рд╕рдорд╕реНрдпрд╛рд╣рд░реВ рдЬрддрд┐ рдзреЗрд░реИ рд╣рд▓ рдЧрд░реНрдиреБрд╣реБрдиреНрдЫ, рддреНрдпрддрд┐ рдиреИ рддрдкрд╛рдИрдХреЛ рд╕реЛрдЪ рдЭрд┐рд▓рд┐рдорд┐рд▓реА рд╣реБрдБрджреИ рдЬрд╛рдиреНрдЫ рд░ рддрдкрд╛рдИрд▓реЗ рдЕрдм рд╕реЛрдЪреНрдиреБрд╣реБрдиреНрди рдХрд┐ рд╕рдпреМрдВ рд╡рд╛ рд╣рдЬрд╛рд░реМрдВ рдЕрд╡рд╕реНрдерд╛ рдлрд░рдХ рд╣реБрдиреЗрдЫ, рддрд░ рдпрд╕ рдкрдЯрдХ рд╣реЛрдЗрдиред

# timedatectl
      Local time: Sun 2019-08-25 21:09:15 +03
  Universal time: Sun 2019-08-25 18:09:15 UTC
        RTC time: Sun 2019-08-25 18:05:04
       Time zone: Europe/Minsk (+03, +0300)
     NTP enabled: yes
NTP synchronized: no
 RTC in local TZ: no
      DST active: n/a

рдкреНрд░рдгрд╛рд▓реА рд╕рдордп рдлреЗрд░рд┐ рдЧрд▓рдд рдЫред

рдлреЗрд░реА рдкреНрд░рдпрд╛рд╕ рдЧрд░реМ:

# ntpdate 0.ru.pool.ntp.org && timedatectl && sleep 1 && timedatectl
25 Aug 21:07:37 ntpdate[30350]: step time server 89.175.20.7 offset -249.220828 sec
      Local time: Sun 2019-08-25 21:07:37 +03
  Universal time: Sun 2019-08-25 18:07:37 UTC
        RTC time: Sun 2019-08-25 18:07:37
       Time zone: Europe/Minsk (+03, +0300)
     NTP enabled: yes
NTP synchronized: yes
 RTC in local TZ: no
      DST active: n/a
      Local time: Sun 2019-08-25 21:11:46 +03
  Universal time: Sun 2019-08-25 18:11:46 UTC
        RTC time: Sun 2019-08-25 18:07:37
       Time zone: Europe/Minsk (+03, +0300)
     NTP enabled: yes
NTP synchronized: no
 RTC in local TZ: no
      DST active: n/a

рдпрд╕рд▓рд╛рдИ рдлрд░рдХ рддрд░рд┐рдХрд╛рд▓реЗ рдЧрд░реМрдВ:

# date -s "2019-08-25 21:10:30" && date && sleep 1 && timedatectl
Sun Aug 25 21:10:30 +03 2019
Sun Aug 25 21:10:30 +03 2019
      Local time: Sun 2019-08-25 21:14:36 +03
  Universal time: Sun 2019-08-25 18:14:36 UTC
        RTC time: Sun 2019-08-25 18:10:30
       Time zone: Europe/Minsk (+03, +0300)
     NTP enabled: yes
NTP synchronized: no
 RTC in local TZ: no
      DST active: n/a

рд░ рдпреЛ рдЬрд╕реНрддреИ:

# hwclock --hctosys && timedatectl && sleep 1 && timedatectl
      Local time: Sun 2019-08-25 21:11:31 +03
  Universal time: Sun 2019-08-25 18:11:31 UTC
        RTC time: Sun 2019-08-25 18:11:31
       Time zone: Europe/Minsk (+03, +0300)
     NTP enabled: yes
NTP synchronized: yes
 RTC in local TZ: no
      DST active: n/a
      Local time: Sun 2019-08-25 21:15:36 +03
  Universal time: Sun 2019-08-25 18:15:36 UTC
        RTC time: Sun 2019-08-25 18:11:32
       Time zone: Europe/Minsk (+03, +0300)
     NTP enabled: yes
NTP synchronized: no
 RTC in local TZ: no
      DST active: n/a

рд╕рдордп рд╡рд┐рднрд╛рдЬрди рд╕реЗрдХреЗрдиреНрдбрдХреЛ рд▓рд╛рдЧрд┐ рд╕реЗрдЯ рдЧрд░рд┐рдПрдХреЛ рдЫ, рд░ рддреБрд░реБрдиреНрддреИ рдлреЗрд░рд┐ "рд╣рддрд╛рд░" рдЧрд░реНрди рд╕реБрд░реБ рд╣реБрдиреНрдЫред

рдПрдХреИ рд╕рдордпрдорд╛, рд▓рдЧрд╣рд░реВрдорд╛, рдпрд╕реНрддреЛ рдореНрдпрд╛рдиреБрдЕрд▓ рдкрд░рд┐рд╡рд░реНрддрдирдХреЛ рд╕рдордпрдорд╛, рд╣рд╛рдореА рдХреЗрд╡рд▓ рдкреНрд░рдгрд╛рд▓реА рд░рд┐рдкреЛрд░реНрдЯрд╣рд░реВ рджреЗрдЦреНрдЫреМрдВ рдХрд┐ рд╕рдордп рдХреНрд░рдорд╢рдГ рд╕рд╣реА/рдЧрд▓рдд рджрд┐рд╢рд╛рдорд╛ рд░ рдХрд╣рд┐рд▓реЗрдХрд╛рд╣реАрдВ рдкрд░рд┐рд╡рд░реНрддрди рднрдПрдХреЛ рдЫред рдкреБрди: рд╕рд┐рдВрдХ рдЧрд░реНрджреИ systemd-timesyncd рдмрд╛рдЯред

Aug 25 21:18:51 wisi systemd[1]: Time has been changed
Aug 25 21:18:51 wisi systemd-timesyncd[29258]: System time changed. Resyncing.
Aug 25 21:18:51 wisi systemd[1187]: Time has been changed
Aug 25 21:18:51 wisi systemd[1]: Time has been changed
Aug 25 21:18:51 wisi systemd[1187]: Time has been changed

рдпрд╣рд╛рдБ

# ps afx | grep "[1]187"
 1187 ?        Ss     0:02 /lib/systemd/systemd --user

рдпрд╕ рдмрд┐рдиреНрджреБрдорд╛, рдпреЛ рдкрд╣рд┐рд▓реЗ рдиреИ рдХрд╛рд░рдг рдЦреЛрдЬреНрди рдЖрд╡рд╢реНрдпрдХ рдерд┐рдпреЛ, рддрд░ рдкреНрд░рд╢рд╛рд╕рдирдХреЛ 18 рд╡рд░реНрд╖ рднрдиреНрджрд╛ рдмрдвреА, рдорд╕реНрддрд┐рд╖реНрдХрд▓реЗ "рд╕рдордп" рддреНрд░реБрдЯрд┐рд╣рд░реВрдорд╛ рддрдереНрдпрд╛рдЩреНрдХрд╣рд░реВ рдЬрдореНрдорд╛ рдЧрд░реЗрдХреЛ рдЫ рд░, рдмрд╛рдиреАрдХреЛ рдмрд╛рд╣рд┐рд░, рдлреЗрд░рд┐ рд╕рд┐рдЩреНрдХреНрд░реЛрдирд╛рдЗрдЬреЗрд╕рдирд▓рд╛рдИ рджреЛрд╖ рджрд┐рдиреНрдЫред
рдпрд╕рд▓рд╛рдИ рдкреВрд░реНрдг рд░реВрдкрдорд╛ рдмрдиреНрдж рдЧрд░реМрдВред

# timedatectl set-ntp off && systemctl stop systemd-timesyncd.service
# hwclock --hctosys && timedatectl && sleep 1 && timedatectl
      Local time: Sun 2019-08-25 21:25:40 +03
  Universal time: Sun 2019-08-25 18:25:40 UTC
        RTC time: Sun 2019-08-25 18:25:40
       Time zone: Europe/Minsk (+03, +0300)
     NTP enabled: no
NTP synchronized: no
 RTC in local TZ: no
      DST active: n/a
      Local time: Sun 2019-08-25 21:29:31 +03
  Universal time: Sun 2019-08-25 18:29:31 UTC
        RTC time: Sun 2019-08-25 18:25:41
       Time zone: Europe/Minsk (+03, +0300)
     NTP enabled: no
NTP synchronized: no
 RTC in local TZ: no
      DST active: n/a

рд░ рд▓рдЧрд╣рд░реВрдорд╛

Aug 25 21:25:40 wisi systemd[1]: Time has been changed
Aug 25 21:25:40 wisi systemd[1187]: Time has been changed
Aug 25 21:29:30 wisi systemd[1]: Time has been changed
Aug 25 21:29:30 wisi systemd[1187]: Time has been changed

рдкреБрди: рд╕рд┐рдВрдХ рдЧрд░реНрджреИ рдЧрд╛рдпрдм рднрдпреЛ рд░ рдЕрдиреНрдпрдерд╛ рд▓рдЧрд╣рд░реВ рдкреБрд░рд╛рдиреЛ рдЫрдиреНред

рдирд┐рд╖реНрдХрд░реНрд╖рд╣рд░реВ рдЬрд╛рдБрдЪ рдЧрд░реНрджреИ tcpdump рд╕рдмреИ рдЗрдиреНрдЯрд░рдлреЗрд╕рд╣рд░реВрдорд╛ рдкреЛрд░реНрдЯ 123 рдорд╛ред рддреНрдпрд╣рд╛рдБ рдХреБрдиреИ рдЕрдиреБрд░реЛрдзрд╣рд░реВ рдЫреИрдирдиреН, рддрд░ рд╕рдордп рдЕрдЭреИ рднрд╛рдЧрд┐рд░рд╣реЗрдХреЛ рдЫред

рддреНрд░реБрдЯрд┐ рджреБрдИред рд╣рддрд╛рд░

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

рдпреЛ рд╕рд░реНрднрд░ рд╕реНрдЯреНрд░рд┐рдорд┐рдЩ рд╕рд░реНрднрд░ рд╣реЛ рд░ DVB-S2 рд╕реНрдЯреНрд░рд┐рдорд▓рд╛рдИ IP рдорд╛ рд░реВрдкрд╛рдиреНрддрд░рдг рдЧрд░реНрджрдЫред DVB-S рд╕реНрдЯреНрд░рд┐рдорд▓реЗ рдЯрд╛рдЗрдорд╕реНрдЯреНрдпрд╛рдореНрдкрд╣рд░реВ рд╕рдорд╛рд╡реЗрд╢ рдЧрд░реНрджрдЫ, рддреНрдпрд╕реИрд▓реЗ рд░рд┐рд╕реАрднрд░рд╣рд░реВ, рдорд▓реНрдЯрд┐рдкреНрд▓реЗрдХреНрд╕рд░рд╣рд░реВ, рд╕реНрдХреНрд░реНрдпрд╛рдореНрдмрд▓рд░рд╣рд░реВ рд░ рдЯреЗрд▓рд┐рднрд┐рдЬрдирд╣рд░реВрд▓реЗ рдкреНрд░рд╛рдп: рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдкреНрд░рдгрд╛рд▓реА рдШрдбреА рд╕рд┐рдЩреНрдХреНрд░реЛрдирд╛рдЗрдЬ рдЧрд░реНрди рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫрдиреНред DVB-S рдмреЛрд░реНрдб рдбреНрд░рд╛рдЗрднрд░рд╣рд░реВ рдХрд░реНрдиреЗрд▓рдорд╛ рдмрдирд╛рдЗрдПрдХрд╛ рдЫрдиреН, рддреНрдпрд╕реИрд▓реЗ DVB-S2 рд╕реНрдЯреНрд░рд┐рдо рд╣рдЯрд╛рдЗрдПрдХреЛ рдЫ рднрдиреА рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдЧрд░реНрдиреЗ рд╕рдмреИрднрдиреНрджрд╛ рдЫрд┐рдЯреЛ рддрд░рд┐рдХрд╛ рднрдиреЗрдХреЛ "рдкреНрд▓реЗрдЯрд╣рд░реВ" рдмрд╛рдЯ рдЖрдЙрдиреЗ рдХреЗрдмрд▓рд╣рд░реВ рд╡рд┐рдЪреНрдЫреЗрдж рдЧрд░реНрдиреБ рд╣реЛред рд╕реМрднрд╛рдЧреНрдп рджреЗрдЦрд┐, рд╕рд░реНрднрд░ рдкрд░реНрдЦрд╛рд▓ рдкрдЫрд╛рдбрд┐ рдЫ, рддреНрдпрд╕реИрд▓реЗ рдпреЛ рд╣реЛред

рдирд┐рд╕реНрд╕рдиреНрджреЗрд╣, рдпрджрд┐ рд▓рдЧрд╣рд░реВрдорд╛ рддреНрдпрд╣рд╛рдБ рдХреЗ рд╣реБрдиреБрдкрд░реНрдЫ рднрдиреНрдиреЗ рд╕рдорд╛рд╡реЗрд╢ рднрдПрдХреЛ рднрдП, рдпреЛ рд╣реБрдиреЗ рдерд┐рдПрди, рддрд░ рдердк, рдлреЗрд░рд┐, рд▓реЗрдЦрдХреЛ рдЕрдиреНрддреНрдпрдорд╛ред

рдард┐рдХ рдЫ, рд╣рд╛рдореАрд▓реЗ рдкрд╣рд┐рд▓реЗ рдиреИ рд╕рдмреИ рдЙрдкрдЧреНрд░рд╣ рд╕рдВрдХреЗрддрд╣рд░реВ рд╣рдЯрд╛рдЗрд╕рдХреЗрдХрд╛ рдЫреМрдВ, рд╣рд╛рдореА рд╕реНрдерд▓реАрдпрд╣рд░реВрд▓рд╛рдИ рдкрдирд┐ рд╣рдЯрд╛рдЙрдиреЗрдЫреМрдВ - рдПрдХреИ рд╕рдордпрдорд╛ рд╣рд╛рдореА рд╕рдмреИ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗрдмрд▓рд╣рд░реВ рдирд┐рдХрд╛рд▓реНрдЫреМрдВред рд╕рд░реНрднрд░ рдмрд╛рд╣рд┐рд░реА рд╕рдВрд╕рд╛рд░рдмрд╛рдЯ рдХрд╛рдЯрд┐рдПрдХреЛ рдЫ рд░ рдкреВрд░реНрдг рд░реВрдкрдорд╛ рд╕реНрд╡рд╛рдпрддреНрдд рд░реВрдкрдорд╛ рдХрд╛рдо рдЧрд░реНрджрдЫ, рддрд░ рдкреНрд░рдгрд╛рд▓реА рдШрдбреА рдЕрдЭреИ рд╣рддрд╛рд░рдорд╛ рдЫред

рдХрд╛рдордХреЛ рд╣рдкреНрддрд╛ рд╕рдХрд┐рдПрдХреЛ рдЫ, рд░ рдорд┐рддрд┐/рд╕рдордп рдореБрджреНрджрд╛ рдЖрдлреИрдорд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЫреИрди, рддреНрдпрд╕реИрд▓реЗ рддрдкрд╛рдИрдВ рдШрд░ рдЬрд╛рди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рддрд░ рдпрд╣рд╛рдБ рдореИрд▓реЗ рдирдпрд╛рдБ рдЧрд▓реНрддреА рдЧрд░реЗрдВред

рддреНрд░реБрдЯрд┐ рддреАрдиред рд╕рд▓реНрд▓рд╛рд╣рдХрд╛рд░рд╣рд░реВ

рдХрд╣рд┐рд▓реНрдпреИ! рдлреЛрд░рдорд╣рд░реВ рд░ рд╕рд╛рдорд╛рдиреНрдп рд╡рд┐рд╢реЗрд╖реАрдХреГрдд (рдП рд▓рд╛ рд╕реНрдЯреНрдпрд╛рдХрдУрднрд░рдлреНрд▓реЛ) рд╕рд╛рдЗрдЯрд╣рд░реВрдорд╛ рдХрд╣рд┐рд▓реЗ рдкрдирд┐ рдкреНрд░рд╢реНрдирд╣рд░реВ рд╕реЛрдзреНрдиреБрд╣реЛрд╕реН рдпрджрд┐ рдпрд╕рдХреЛ рдЬрд╡рд╛рдлрдХреЛ рд▓рд╛рдЧрд┐ рдЧреБрдЧрд▓рдХреЛ рдкрд╣рд┐рд▓реЛ рдкреГрд╖реНрда рдЕрдзреНрдпрдпрди рдЧрд░реНрдиреБ рд░ рдПрдЙрдЯрд╛ рдореНрдпрд╛рди рдкреГрд╖реНрда рдкрдвреНрдиреБ рднрдиреНрджрд╛ рдмрдвреА рдЖрд╡рд╢реНрдпрдХ рдЫред

рддрд┐рдиреАрд╣рд░реВрд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдЧреБрдЧрд▓рдорд╛ рдлрд┐рд░реНрддрд╛ рдкрдард╛рдЙрдиреЗрдЫрдиреН, рдЙрд╣реА рдорд╛рдирд┐рд╕ рдкрдвреНрдиреЗрдЫрдиреН рд░ рд▓реЛрдХрдкреНрд░рд┐рдп рд░реВрдкрдорд╛ рдлреЛрд░рдо/рд╕рд╛рдЗрдЯрдХрд╛ рдирд┐рдпрдорд╣рд░реВ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдЧрд░реНрдиреЗрдЫрдиреН, рддрд░ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдЬрд╡рд╛рдл рджрд┐рдиреЗ рдЫреИрдирдиреНред

рдпрд╣рд╛рдБ рдХреЗрд╣рд┐ рд╡рд╕реНрддреБрдЧрдд рдХрд╛рд░рдХрд╣рд░реВ рдЫрдиреН:

  • рддрдкрд╛рдИрдВ рдмрд╛рд╣реЗрдХ рдХрд╕реИрд▓реЗ рдкрдирд┐ рд╕рдорд╕реНрдпрд╛ рдЬрд╛рдиреНрди рд╕рдХреНрджреИрди;
  • рддрдкрд╛рдИрдХреЛ рдЬрд╕реНрддреИ рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдорд╛ рдХрд╕реИрд▓реЗ рдкрдирд┐ рдкрд░реАрдХреНрд╖рд╛ рд╕рдЮреНрдЪрд╛рд▓рди рдЧрд░реНрди рд╕рдХреНрджреИрди

рд░ рд╡реНрдпрдХреНрддрд┐рдкрд░рдХ:

  • рддрдкрд╛рдИрдВрд▓реЗ рд╕рдорд╕реНрдпрд╛ рд╕рдорд╛рдзрд╛рдирдХреЛ рд▓рд╛рдЧрд┐ рд╕рдмреИ рдЗрдирдкреБрдЯ рджрд┐рди рд╕рдХреНрдиреБрд╣реБрдиреНрди, рдХрд┐рдирдХрд┐ рддрдкрд╛рдИрдВрд▓реЗ рдкрд╣рд┐рд▓реЗ рдиреИ "рд╕рд╣реА" рджрд┐рд╢рд╛ рд▓рд┐рдПрд░ рдЖрдЙрдиреБрднрдПрдХреЛ рдЫ рд░ рдпрд╕рдорд╛ рдХреЗрдиреНрджреНрд░рд┐рдд рдореБрджреНрджрд╛рдХреЛ рд╕рд╛рд░ рдкреНрд░рд╕реНрддреБрдд рдЧрд░реНрджреИ рд╣реБрдиреБрд╣реБрдиреНрдЫ;
  • рдлреЛрд░рдореНрдпрд╛рди (рдордзреНрдпрд╕реНрде, рдкреБрд░рд╛рдиреЛ-рдЯрд╛рдЗрдорд░, рдкреНрд░рд╢рд╛рд╕рдХ) рд╕рдзреИрдВ рд╕рд╣реА рд╣реБрдиреНрдЫ, рдпрджрд┐ рдлреЛрд░рдореНрдпрд╛рди рдЧрд▓рдд рдЫ рднрдиреЗ... рдареАрдХ рдЫ, рддрдкрд╛рдИрд▓рд╛рдИ рдерд╛рд╣рд╛ рдЫ...

рдпрджрд┐, рдЯрд┐рдкреНрдкрдгреАрд╣рд░реВрдХреЛ рдЬрд╡рд╛рдл рджрд┐рдБрджрд╛, рддрдкрд╛рдЗрдБ рд╕реЗрдиреНрд╕рд░ рдЧрд░рд┐рдПрдХреЛ рд╢рдмреНрджрд╛рд╡рд▓реАрдХреЛ рд╕реАрдорд╛ рднрд┐рддреНрд░ рд░рд╣рдиреБрднрдпреЛ рднрдиреЗ, рддрдкрд╛рдЗрдБрд╕рдБрдЧ рдмрд▓рд┐рдпреЛ рддрдВрддреНрд░рд┐рдХрд╛ рдЫред

рдирд┐рд░реНрдгрдп

рдХрд╛рд░реНрдпрд╣рд░реВрд▓рд╛рдИ рд╕рд░рд▓ рд░ рдЬрдЯрд┐рд▓рдорд╛ рд╡рд┐рднрд╛рдЬрди рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫреИрдиред

рд╣рд╛рдореА рд╣рд╛рдореНрд░реЛ рдЕрдиреБрднрд╡, рддрдереНрдпрд╛рдЩреНрдХ, рд╕рд▓реНрд▓рд╛рд╣рдХрд╛рд░рд╣рд░реВрдорд╛ рднрд░ рдкрд░реНрди рдЫреЛрдбреНрдЫреМрдВ рд░ рдЕрдиреНрддрд┐рдо рдкрд░рд┐рдгрд╛рдо "рд╡реНрдпрд╛рдЦреНрдпрд╛" рдЧрд░реНрди рд╕реБрд░реБ рдЧрд░реНрджреИрди, рддрд░ рдирд┐рд░рдиреНрддрд░ рдХрд╛рд░рдг рдЦреЛрдЬреНрдиред

рдХрд╕реИрд▓реЗ рд╕рдордп рд╕реЗрдЯ рдЧрд░реЗрдХреЛ рд╣реБрдирд╛рд▓реЗ, рд╕рдореНрдмрдиреНрдзрд┐рдд рдкреНрд░рдгрд╛рд▓реА рдХрд▓ рд╣реБрдиреИ рдкрд░реНрдЫред

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

рд╢рдВрдХрд╛рдХреЛ рдХреНрд╖рдгрдо рдорд╛рдирд╛ рдорд╛рд░реНрдлрдд рдЧрдПрдБ, рддрд░ рд▓рд┐рдирдХреНрд╕рдорд╛ рдорд╛рддреНрд░ рд╕рдордп рд╕реЗрдЯ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ рднрдиреЗрд░ рдкреВрд░реНрдгрддрдпрд╛ рдирд┐рд╢реНрдЪрд┐рдд рдерд┐рдПрди clock_settime ╨╕ рджрд┐рдирдХреЛ рд╕рдордп рд╕реЗрдЯ, рддреНрдпрд╕реИрд▓реЗ рдкрд╣рд┐рд▓реЛ рдкрд░реАрдХреНрд╖рдгрдХреЛ рд▓рд╛рдЧрд┐ рдореИрд▓реЗ рд╕рдмреИ "рдЙрдкрдпреБрдХреНрдд" рдХрд▓рд╣рд░реВ рд░реЛрдЬреЗрдВ:

# man syscalls | col | grep -F '(2)' | grep -vE '(:|;)' | grep -E '(time|date|clock)' | sed "s/(2).*//" | xargs -I SYSCALL echo "-S SYSCALL " | xargs echo
-S adjtimex -S clock_adjtime -S clock_getres -S clock_gettime -S clock_nanosleep -S clock_settime -S futimesat -S getitimer -S gettimeofday -S mq_timedreceive -S mq_timedsend -S rt_sigtimedwait -S s390_runtime_instr -S setitimer -S settimeofday -S stime -S time -S timer_create -S timer_delete -S timer_getoverrun -S timer_gettime -S timer_settime -S timerfd_create -S timerfd_gettime -S timerfd_settime -S times -S utime -S utimensat -S utimes

рд░ рдЦрд╛рд░реЗрдЬ рдЧрд░реНрджреИ s390_runtime_instr, stime, timerfd_create, рдЬреБрди aditctl рдпрд╕рд▓рд╛рдИ рдкрд╣рд┐рдЪрд╛рди рдЧрд░реЗрди, рдкреНрд░рд╛рд░рдореНрднрдорд╛ рдлрд╛рд░рдордорд╛ рд▓реЗрдЦрд╛рдкрд░реАрдХреНрд╖рдг рд╕реБрд░реБ рдЧрд░реНтАНрдпреЛ:

auditctl -a exit,always -S adjtimex -S clock_adjtime -S clock_getres -S clock_nanosleep -S clock_settime -S futimesat -S getitimer -S gettimeofday -S mq_timedreceive -S mq_timedsend -S rt_sigtimedwait -S semtimedop -S setitimer -S settimeofday -S time -S timer_create -S timer_delete -S timer_getoverrun -S timer_gettime -S timer_settime -S timerfd_gettime -S timerfd_settime -S times -S utime -S utimensat -S utimes

рдорд▓рд╛рдИ рд░реБрдЪрд┐ рднрдПрдХрд╛ рд▓рдЧ рд╕реНрдерд╛рдирд╣рд░реВрдорд╛ рдХреБрдиреИ рдЕрдиреНрдп рд▓рдЧрд╣рд░реВ рдЫреИрдирдиреН рднрдиреА рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдЧрд░реЗрдкрдЫрд┐ syscalls рдпреА рджреБрдИ рдмрд╛рд╣реЗрдХ, рдореИрд▓реЗ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдорд╛рддреНрд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрдВред

рдкреНрд░рдгрд╛рд▓реА рдХрд▓ рдЕрдбрд┐рдЯ рдЪрд▓рд╛рдЙрдБрджреИ clock_settime ╨╕ рджрд┐рдирдХреЛ рд╕рдордп рд╕реЗрдЯ рд░ рдорд┐рддрд┐ рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░реНрди рдкреНрд░рдпрд╛рд╕ рдЧрд░реНрдиреБрд╣реЛрд╕реН:

# auditctl -a exit,always -S clock_settime -S settimeofday && date -s "2019-08-22 12:10:00" && sleep 5 && auditctl -D

рдкрд╛рдБрдЪ-рд╕реЗрдХреЗрдиреНрдб рдврд┐рд▓рд╛рдЗ рдердкрд┐рдПрдХреЛ рдЫ рддрд╛рдХрд┐ рд╣рд╛рдореНрд░реЛ "рдкрд░рдЬреАрд╡реА" рд╕рдордп рд╕рдЪреНрдпрд╛рдЙрди рдЧреНрдпрд╛рд░реЗрдиреНрдЯреА рд╣реБрдиреНрдЫред

рд╣реЗрд░реМрдВ рд░рд┐рдкреЛрд░реНрдЯ :

# aureport -s -i

Syscall Report
=======================================
# date time syscall pid comm auid event
=======================================
Warning - freq is non-zero and incremental flushing not selected.
1. 08/22/2019 12:10:00 settimeofday 3088 chkcache_proces root 479630
2. 08/26/2019 09:37:06 clock_settime 1538 date root 479629

рдпрд╣рд╛рдБ рд╣рд╛рдореА рд╣рд╛рдореНрд░реЛ рджреЗрдЦреНрдЫреМрдВ рдорд┐рддрд┐ рд░ рд╣рд╛рдореАрд▓рд╛рдИ рдЕрдЬреНрдЮрд╛рдд chkcache_processesред рдпреЛ рдорд╛рдерд┐рдХреЛ рд░рд┐рдкреЛрд░реНрдЯрдорд╛ рд╕рдорд╛рдкреНрдд рднрдпреЛ рдХрд┐рдирднрдиреЗ aureport рд▓реЗ рдмрд╛рдЗрдирд░реАрдмрд╛рдЯ рд░реВрдкрд╛рдиреНрддрд░рдг рдЧрд░реНрджрд╛ рдорд┐рддрд┐ рдЕрдиреБрд╕рд╛рд░ рдЖрдЙрдЯрдкреБрдЯ рдХреНрд░рдордмрджреНрдз рдЧрд░реНрдпреЛ, рд░ рдШрдЯрдирд╛ рд╣рд╛рдореАрд▓реЗ рд╕реЗрдЯ рдЧрд░реЗрдХреЛ рд╕рдордпрдорд╛ рднрдпреЛред рдорд┐рддрд┐ -s "2019-08-22 12:10:00".
рдЙрдирд▓рд╛рдИ рдХрд╕рд▓реЗ рдЬрдиреНрдорд╛рдпреЛ ?

# ausearch -sc settimeofday --comm "chkcache_proces"
----
time->Thu Aug 22 12:10:00 2019
type=PROCTITLE msg=audit(1566465000.000:479630): proctitle="/usr/local/bin/oscam"
type=SYSCALL msg=audit(1566465000.000:479630): arch=c000003e syscall=164 success=yes exit=0 a0=7fde0dfc6e60 a1=0 a2=136cf a3=713ba56 items=0 ppid=3081 pid=3088 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=pts20 ses=68149 comm="chkcache_proces" exe="/usr/local/bin/oscam" key=(null)

/usr/local/bin/oscam - рд╣рд╛рдореНрд░реЛ рдкрд░рдЬреАрд╡реА рдлреЗрд▓рд╛ рдкрд░реЗрдХреЛ рдЫред рдпрд╕рдХреЛ "рджреБрд░реНрднрд╛рд╡рдирд╛рдкреВрд░реНрдг" рд╡реНрдпрд╡рд╣рд╛рд░рдХреЛ рдмрд╛рд╡рдЬреБрдж, рд╕рд╢рд░реНрдд рдкрд╣реБрдБрдЪ рдкреНрд░рдгрд╛рд▓реАрд▓рд╛рдИ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдЧрд░реНрди рдЕрд╕рдореНрднрд╡ рдЫ, рддрд░ рдо рдЕрдЭреИ рдЬрд╛рдиреНрди рдЪрд╛рд╣рдиреНрдЫреБред oscam, WTF?

рдЬрд╡рд╛рдл рдЫрд┐рдЯреНрдЯреИ рднреЗрдЯрд┐рдиреНрдЫ рд╕реНрд░реЛрддрд╣рд░реВ:

#if defined(CLOCKFIX)
if (tv.tv_sec > lasttime.tv_sec || (tv.tv_sec == lasttime.tv_sec && tv.tv_usec >= lasttime.tv_usec)) // check for time issues!
{
  lasttime = tv; // register this valid time
}
  else
{
  tv = lasttime;
  settimeofday(&tv, NULL); // set time back to last known valid time
  //fprintf(stderr, "*** WARNING: BAD TIME AFFECTING WHOLE OSCAM ECM HANDLING, SYSTEMTIME SET TO LAST KNOWN VALID TIME **** n");
}

рдХрддрд┐ рдкреНрдпрд╛рд░реЛ рд▓рд╛рдЧреНрдЫ рдпрд╣рд╛рдБ рдЯрд┐рдкреНрдкрдгреА рдЧрд░реЗ рд░реЗрдЦрд╛ рдЪреЗрддрд╛рд╡рдиреА...

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

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