{"id":7162,"date":"2020-10-21T21:57:52","date_gmt":"2020-10-21T18:57:52","guid":{"rendered":"https:\/\/kifarunix.com\/?p=7162"},"modified":"2024-03-14T23:25:16","modified_gmt":"2024-03-14T20:25:16","slug":"quickly-setup-ntp-server-using-ntpd-on-ubuntu-20-04-18-04","status":"publish","type":"post","link":"https:\/\/kifarunix.com\/quickly-setup-ntp-server-using-ntpd-on-ubuntu-20-04-18-04\/","title":{"rendered":"Quickly Setup NTP Server using NTPd on Ubuntu 20.04\/18.04"},"content":{"rendered":"\n<p>In this tutorial, you will learn how to install and setup NTP server using NTPd on Ubuntu 20.04\/18.04. <a aria-label=\"Network Time Protocol (opens in a new tab)\" class=\"rank-math-link\" href=\"http:\/\/www.ntp.org\/\" target=\"_blank\" rel=\"noreferrer noopener\">Network Time Protocol<\/a> is a networking protocol that is used to synchronize system clocks on a network. NTP uses clock stratum scheme to enable access to correct time sources. The <em>stratums<\/em> are numbered from 0 to 15, where the devices at stratum 0 are highly accurate time-keeping hardware devices and the latter is true. The <em>stratums<\/em> usually have NTP clients. An NTP client can also be configured as a server in a customized environment.<\/p>\n\n\n\n<p>NTP client employs a server-client architecture where NTP clients synchronize time from NTP server(s).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Installing NTP Server using NTPd on Ubuntu 20.04\/18.04<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Run System Update<\/h3>\n\n\n\n<p>Before you can install and setup NTP Server, you need to update your package cache in order to install the latest version of <em>ntp<\/em>.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt update -y<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Install NTPd on Ubuntu 20.04\/18.04<\/h3>\n\n\n\n<p>Once the update is done, proceed to install NTP daemon on Ubuntu 20.04\/18.04. The ntpd daemon is provided by the <em>ntp<\/em> package.<\/p>\n\n\n\n<p>To check if <em>ntp<\/em> package is installed on Ubuntu 18.04\/20.04 run the command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code> dpkg -l ntp<\/code><\/pre>\n\n\n\n<p>If the package is not installed you will get output similar to:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>dpkg-query: no packages found matching ntp<\/code><\/pre>\n\n\n\n<p>The <em>ntp<\/em> package is available on the default Ubuntu 18.04 and Ubuntu 20.04 repositories.<\/p>\n\n\n\n<p>Install <em>ntp<\/em> on Ubuntu 20.04\/18.04 by running the command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt install ntp -y<\/code><\/pre>\n\n\n\n<p>Verify that that <em>ntp<\/em> package has been installed successfully by checking the version number:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sntp --version<\/code><\/pre>\n\n\n\n<p>Output:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sntp 4.2.8p12@1.3728-o (1)<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Running NTPd on Ubuntu 20.04\/18.04<\/h3>\n\n\n\n<p>After installation NTP is started and enabled to start at boot time:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>systemctl status ntp<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>\u25cf ntp.service - Network Time Service\n     Loaded: loaded (\/lib\/systemd\/system\/ntp.service; enabled; vendor preset: e&gt;\n     Active: active (running) since Sun 2020-10-11 20:09:21 EAT; 55min ago\n       Docs: man:ntpd(8)\n   Main PID: 567 (ntpd)\n      Tasks: 2 (limit: 585)\n     Memory: 1.5M\n     CGroup: \/system.slice\/ntp.service\n             \u2514\u2500567 \/usr\/sbin\/ntpd -p \/var\/run\/ntpd.pid -g -u 127:133\n\nOnk 11 20:10:28 computers-VirtualBox ntpd&#91;567]: Soliciting pool server 162.159.&gt;\nOnk 11 20:10:29 computers-VirtualBox ntpd&#91;567]: Soliciting pool server 160.119.&gt;\nOnk 11 20:10:29 computers-VirtualBox ntpd&#91;567]: Soliciting pool server 162.159.&gt;\nOnk 11 20:10:29 computers-VirtualBox ntpd&#91;567]: Soliciting pool server 162.159.&gt;\n...<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Setting up NTP Server using NTPd on Ubuntu<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\">Configure NTP Server on Ubuntu 20.04\/18.04<\/h4>\n\n\n\n<p>NTP daemon <em>(ntpd)<\/em> main configuration file is <code>\/etc\/ntp.conf<\/code>. The file is configured to enable NTP server to fetch the correct time from NTP servers of higher stratum such as <strong><em>pool.ntp.org<\/em><\/strong>. The <strong><em>pool<\/em><\/strong> directive in the file enables setting of NTP time servers (pool) to use.<\/p>\n\n\n\n<p><code>sudo vim \/etc\/ntp.conf<\/code><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Specify one or more NTP servers.\n\n# Use servers from the NTP Pool Project. Approved by Ubuntu Technical Board\n# on 2011-02-08 (LP: #104525). See http:\/\/www.pool.ntp.org\/join.html for\n# more information.\npool 0.ubuntu.pool.ntp.org iburst\npool 1.ubuntu.pool.ntp.org iburst\npool 2.ubuntu.pool.ntp.org iburst\npool 3.ubuntu.pool.ntp.org iburst\n\n# Use Ubuntu's ntp server as a fallback.\npool ntp.ubuntu.com<\/code><\/pre>\n\n\n\n<p>By default NTP on Ubuntu 20.04\/18.04 uses <em>ubuntu<\/em> pool time servers from the NTP servers <strong><em>pool.ntp.org<\/em><\/strong> as seen from the above output. A list of time servers can be found at <a href=\"http:\/\/www.pool.ntp.org\/en\/\" target=\"_blank\" aria-label=\" (opens in a new tab)\" rel=\"noreferrer noopener\" class=\"rank-math-link\">NTP Public Pool Time Servers<\/a> where one can choose which timeserver to use according to their timezone. For example to use <em>ke.pool.ntp.org<\/em> pool:<\/p>\n\n\n\n<p>First comment out the default ubuntu pool timeservers:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>...\n# more information.\n#pool 0.ubuntu.pool.ntp.org iburst\n#pool 1.ubuntu.pool.ntp.org iburst\n#pool 2.ubuntu.pool.ntp.org iburst\n#pool 3.ubuntu.pool.ntp.org iburst\n\n# Use Ubuntu's ntp server as a fallback.\n#pool ntp.ubuntu.com\n...<\/code><\/pre>\n\n\n\n<p>To add up servers from the <em>ke.pool.ntp.org<\/em> pool add the following entry on the configuration file:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>...\n#Use kenyan pool\npool 0.ke.pool.ntp.org iburst\npool 1.ke.pool.ntp.org iburst\npool 2.ke.pool.ntp.org iburst\npool 3.ke.pool.ntp.org iburst\n...<\/code><\/pre>\n\n\n\n<p><strong><em>TIP:<\/em><\/strong> <em>Setting the pool as pool.ntp.org allows the system to determine the nearest time servers to use.<\/em><\/p>\n\n\n\n<p><strong><em>iburst<\/em><\/strong> option in the configuration file changes the initial interval of polls to a NTP server in order to speed up the initial synchronization.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Configure Access Control for NTP Server (Optional)<\/h4>\n\n\n\n<p>NTP server can optionally be configured to only allow specific NTP client connections to query them using the <strong><em>restrict<\/em><\/strong> directive in the <code>\/etc\/ntp.conf<\/code> configuration file which uses the syntax:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>restrict address &#91;mask mask] &#91;other options]<\/code><\/pre>\n\n\n\n<p>This access control can be used to limit access to NTP service to particular LAN. For instance to only allow connections from the network 192.168.56.0\/24, define the network address by appending the line:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>restrict 192.168.56.0 mask 255.255.255.0 nomodify notrap<\/code><\/pre>\n\n\n\n<p>Where:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong><em>nomodify<\/em><\/strong> options prevents any changes to the configuration.<\/li>\n\n\n\n<li><strong><em>notrap<\/em><\/strong> option prevents ntpdc control message protocol traps.<\/li>\n<\/ul>\n\n\n\n<p>More about restrict and other command options can be read on <strong><code>man ntp.conf<\/code><\/strong>.<\/p>\n\n\n\n<p>Save the configuration file and restart NTP server for the changes to take effect.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code> sudo systemctl restart ntp<\/code><\/pre>\n\n\n\n<p>Check the status of NTP service<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code> systemctl status ntp<\/code><\/pre>\n\n\n\n<p>Output:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code> ntp.service - Network Time Service\n     Loaded: loaded (\/lib\/systemd\/system\/ntp.service; enabled; vendor preset: enabled)\n     Active: active (running) since Tue 2020-10-20 19:05:15 EAT; 1min 0s ago\n       Docs: man:ntpd(8)\n    Process: 8428 ExecStart=\/usr\/lib\/ntp\/ntp-systemd-wrapper (code=exited, status=0\/SUCCESS)\n   Main PID: 8446 (ntpd)\n      Tasks: 2 (limit: 1111)\n     Memory: 1.0M\n     CGroup: \/system.slice\/ntp.service\n             \u2514\u25008446 \/usr\/sbin\/ntpd -p \/var\/run\/ntpd.pid -g -u 127:133\nOnk 20 19:05:20 null1-VirtualBox ntpd&#91;8446]: Soliciting pool server 162.159.200.123\nOnk 20 19:05:21 null1-VirtualBox ntpd&#91;8446]: Soliciting pool server 162.159.200.1\nOnk 20 19:05:22 null1-VirtualBox ntpd&#91;8446]: Soliciting pool server 160.119.216.206\nOnk 20 19:05:23 null1-VirtualBox ntpd&#91;8446]: Soliciting pool server 160.119.216.197\nOnk 20 19:05:24 null1-VirtualBox ntpd&#91;8446]: Soliciting pool server 160.119.216.202\nOnk 20 19:05:29 null1-VirtualBox ntpd&#91;8446]: Soliciting pool server 160.119.216.197\nOnk 20 19:05:29 null1-VirtualBox ntpd&#91;8446]: Soliciting pool server 2606:4700:f1::1\nOnk 20 19:05:37 null1-VirtualBox ntpd&#91;8446]: Soliciting pool server 91.189.94.4<\/code><\/pre>\n\n\n\n<p>Confirm NTP service is set to start at boot time:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo systemctl is-enabled ntp<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>enabled<\/code><\/pre>\n\n\n\n<p>If disabled, enable it by running the command below;<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>sudo systemctl enable ntpd<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Verify System time<\/h3>\n\n\n\n<p>Check NTP time after afew seconds.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ntptime <\/code><\/pre>\n\n\n\n<p>Output:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>tp_gettime() returns code 0 (OK)\n  time e3398bfb.b241700c  Tue, Oct 20 2020 19:16:59.696, (.696311693),\n  maximum error 78688 us, estimated error 5216 us, TAI offset 37\nntp_adjtime() returns code 0 (OK)\n  modes 0x0 (),\n  offset 251.894 us, frequency -11.169 ppm, interval 1 s,\n  maximum error 78688 us, estimated error 5216 us,\n  status 0x2001 (PLL,NANO),\n  time constant 6, precision 0.001 us, tolerance 500 ppm,<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Configure Firewall<\/h3>\n\n\n\n<p>If Ubuntu UFW is enabled allow UDP port 123. NTP clients connect to NTP server on that particular port.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo ufw allow from any to any port 123 proto udp<\/code><\/pre>\n\n\n\n<p>You can as well allow NTP queries from specific Network;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo ufw allow from 192.168.56.0\/24 to any port 123 proto udp<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Verify NTP Time Service<\/h3>\n\n\n\n<p>Verify NTP server by checking the NTP server connection to NTP peers by running the command;<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>ntpq -p<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>     remote           refid      st t when poll reach   delay   offset  jitter\n==============================================================================\n 0.ke.pool.ntp.o .POOL.          16 p    -   64    0    0.000    0.000   0.000\n 1.ke.pool.ntp.o .POOL.          16 p    -   64    0    0.000    0.000   0.000\n 2.ke.pool.ntp.o .POOL.          16 p    -   64    0    0.000    0.000   0.000\n 3.ke.pool.ntp.o .POOL.          16 p    -   64    0    0.000    0.000   0.000\n ntp.ubuntu.com  .POOL.          16 p    -   64    0    0.000    0.000   0.000\n-time.cloudflare 10.45.8.5        3 u  122  256  377   54.091    8.013  63.504\n-time.cloudflare 10.45.8.5        3 u  153  256  161   54.158    8.587  40.443\n+ntp0.icolo.io   160.119.216.202  3 u    8  128  377   16.850    4.389   0.586\n*ntp1.icolo.io   146.64.8.7       2 u   82  128  375   16.379    4.501   1.584\n+ntp2.icolo.io   146.64.8.7       2 u   65  128  377   16.524    4.709   0.742<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Synchronizing Client&#8217;s Time with NTP Server<\/h3>\n\n\n\n<p>Now that the NTP server is configured, it is high time to configure clients to synchronize their clocks with the NTP server.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Synchronizing using systemd timesyncd NTP<\/h4>\n\n\n\n<p>In an Ubuntu system, an NTP Client<strong>, <code>systemd-timesyncd.service,<\/code><\/strong> is running by default which can be used to set NTPd as a NTP client.<\/p>\n\n\n\n<p>Edit the file <strong><code>\/etc\/systemd\/timesyncd.conf<\/code><\/strong> and add the address for your NTP server by adding such an entry at the end of the file:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>vim \/etc\/systemd\/timesyncd.conf<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>NTP=192.168.56.103<\/code><\/pre>\n\n\n\n<p>Where <code>192.168.56.103<\/code> is the IP address of configured NTP server.<\/p>\n\n\n\n<p>Restart <em>systemd-timesyncd<\/em> NTP client service:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo systemctl status systemd-timesyncd<\/code><\/pre>\n\n\n\n<p>Confirm the status of status that it is now synchronized with the configured NTP server.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code> systemctl status systemd-timesyncd<\/code><\/pre>\n\n\n\n<p>Output:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>  Loaded: loaded (\/lib\/systemd\/system\/systemd-timesyncd.service; enabled; vendor preset: enabled)\n   Active: active (running) since Tue 2020-10-20 20:02:49 EAT; 3s ago\n     Docs: man:systemd-timesyncd.service(8)\n Main PID: 4466 (systemd-timesyn)\n   Status: \"Synchronized to time server 192.168.56.103:123 (ntp.kifarunix.com).\"\n    Tasks: 2 (limit: 667)\n   CGroup: \/system.slice\/systemd-timesyncd.service\n           \u2514\u25004466 \/lib\/systemd\/systemd-timesyncd\n\n...<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Using <code>ntpdate<\/code> to Synchronize Client Systems&#8217; Time<\/h4>\n\n\n\n<p>Optionally the <code>ntpdate<\/code> command can be used to manually synchronize client system time with NTP server. This guide uses Ubuntu 18.04 as the client.<\/p>\n\n\n\n<h5 class=\"wp-block-heading\">Step 1: Install ntpdate<\/h5>\n\n\n\n<p>Install <code>ntpdate<\/code> package, if not already installed.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt install ntpdate -y<\/code><\/pre>\n\n\n\n<p><strong>NOTE:<\/strong> Ensure that Client and NTP Server can communicate. You can use nc command to verify NTP server port connection.<\/p>\n\n\n\n<h5 class=\"wp-block-heading\">Step 2: Use ntpdate Command to Query Time Service<\/h5>\n\n\n\n<p>The <code>ntpdate<\/code> command can be uses to query time service from an NTP server by running the command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo ntpdate 192.168.56.103<\/code><\/pre>\n\n\n\n<p>The output shows the time offset between the two systems.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>20 Oct 20:31:54 ntpdate&#91;5053]: adjust time server 192.168.56.103 offset 0.001313 sec<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Synchronize time Automatically Using NTP<\/h4>\n\n\n\n<p>NTP client can automatically be configured to query NTP server by using the NTPd daemon.<\/p>\n\n\n\n<h5 class=\"wp-block-heading\">Step 1: Install NTP<\/h5>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt install ntp -y<\/code><\/pre>\n\n\n\n<h5 class=\"wp-block-heading\">Configure NTPd Client<\/h5>\n\n\n\n<p>On Ubuntu 18.04 NTP service is set to run by default after installation. First check if the client is synchronized with NTP:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>timedatectl<\/code><\/pre>\n\n\n\n<p>The output will show if the system clock is synchronized or not.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code> Local time: Qib 2020-10-20 19:41:59 EAT\n                  Universal time: Qib 2020-10-20 16:41:59 UTC\n                        RTC time: Qib 2020-10-20 16:35:32\n                       Time zone: Africa\/Nairobi (EAT, +0300)\n       System clock synchronized: yes\nsystemd-timesyncd.service active: no\n                 RTC in local TZ: no<\/code><\/pre>\n\n\n\n<p>If the system time is synchronized, disable the time synchronization by running the command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo timedatectl set-ntp off<\/code><\/pre>\n\n\n\n<p><strong><em>TIP:<\/em><\/strong> <em>To toggle time synchronization back on:<\/em> <em><code>sudo timedatectl set-ntp on<\/code><\/em><\/p>\n\n\n\n<p>To configure the NTP client to synchronize time from your NTP server, edit the ntp configuration file:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code> sudo vim \/etc\/ntp.conf <\/code><\/pre>\n\n\n\n<p>Replace public NTP pool servers with your server.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#pool 0.ubuntu.pool.ntp.org iburst\n#pool 1.ubuntu.pool.ntp.org iburst\n#pool 2.ubuntu.pool.ntp.org iburst\n#pool 3.ubuntu.pool.ntp.org iburst\n\npool 192.168.56.103 iburst<\/code><\/pre>\n\n\n\n<p>Ideally the server can be added without commenting out the default NTP servers by making it the preferred reference clock using the <strong>prefer<\/strong> option:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>pool 192.168.56.103 prefer iburst<\/code><\/pre>\n\n\n\n<p>Save the configuration file and restart ntp.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code> sudo systemctl restart ntp<\/code><\/pre>\n\n\n\n<p>The client is now successfully configured to sychronize system time with NTP server. This can be verified by running the command:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>ntpq -p<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>     remote           refid      st t when poll reach   delay   offset  jitter\n==============================================================================\n 192.168.56.103  .POOL.          16 p    -   64    0    0.000    0.000   0.000\n*192.168.56.103  160.119.216.202  3 u   24   64    1    0.768   16.118   1.355<\/code><\/pre>\n\n\n\n<p>From the output we can see NTP server (192.168.56.103) as the time synchronization host\/source in the queue.<\/p>\n\n\n\n<p>Confirm NTP service is set to start at boot time:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>systemctl is-enabled ntp<\/code><\/pre>\n\n\n\n<p>To enable NTP service to start at boot time, just in case is not enabled, then you would run the command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>systemctl enable ntp<\/code><\/pre>\n\n\n\n<p>Great, your NTP Clients should now be able to query the time services from your NTP Server.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Related Tutorials<\/h3>\n\n\n\n<p><a href=\"https:\/\/kifarunix.com\/how-to-configure-ntp-server-on-pfsense\/\" target=\"_blank\" aria-label=\" (opens in a new tab)\" rel=\"noreferrer noopener\" class=\"rank-math-link\">How to Configure NTP Server on pfSense<\/a><\/p>\n\n\n\n<p><a aria-label=\" (opens in a new tab)\" href=\"https:\/\/kifarunix.com\/setup-ntp-server-using-chrony-on-centos-8\/\" target=\"_blank\" rel=\"noreferrer noopener\" class=\"rank-math-link\">Setup NTP Server using Chrony on CentOS 8<\/a><\/p>\n\n\n\n<p><a aria-label=\" (opens in a new tab)\" href=\"https:\/\/kifarunix.com\/setup-ntp-server-using-ntpd-on-debian-10-buster\/\" target=\"_blank\" rel=\"noreferrer noopener\" class=\"rank-math-link\">Setup NTP server Using NTPd on Debian 10 Buster<\/a><\/p>\n\n\n\n<p><a aria-label=\" (opens in a new tab)\" href=\"https:\/\/kifarunix.com\/configure-ntp-server-using-ntpd-on-fedora-30\/\" target=\"_blank\" rel=\"noreferrer noopener\" class=\"rank-math-link\">Configure NTP Server using NTPd on Fedora 30<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/kifarunix.com\/how-to-install-and-configure-ntp-server-using-chrony-on-fedora-29\/\" target=\"_blank\" aria-label=\" (opens in a new tab)\" rel=\"noreferrer noopener\" class=\"rank-math-link\">How to Install and Configure NTP Server Using Chrony on Fedora 29\/Fedora 28<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this tutorial, you will learn how to install and setup NTP server using NTPd on Ubuntu 20.04\/18.04. Network Time Protocol is a networking protocol<\/p>\n","protected":false},"author":5,"featured_media":12718,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"rank_math_lock_modified_date":false,"footnotes":""},"categories":[930,121,236],"tags":[2851,2850,2856,1059,2854,2853,2855],"class_list":["post-7162","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ntpd","category-howtos","category-ntp","tag-install-ntp-server-ubuntu-18-04","tag-install-ntp-server-ubuntu-20-04","tag-ntp-client","tag-ntp-server","tag-ntpd-ubuntu-18-04","tag-ntpd-ubuntu-20-04","tag-setup-ntp-clients-ubuntu-20-04-18-04","generate-columns","tablet-grid-50","mobile-grid-100","grid-parent","grid-50","resize-featured-image"],"_links":{"self":[{"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/posts\/7162"}],"collection":[{"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/comments?post=7162"}],"version-history":[{"count":4,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/posts\/7162\/revisions"}],"predecessor-version":[{"id":21535,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/posts\/7162\/revisions\/21535"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/media\/12718"}],"wp:attachment":[{"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/media?parent=7162"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/categories?post=7162"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/tags?post=7162"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}