Q. How do I install and configure NTP ( Network Time Protocol ) daemon to keep my dedicated servers clock in sync?
A. ntpd is an operating system daemon which sets and maintains the system time-of-day in synchronism with Internet standard time servers. Ntpd is a complete implementation of the Network Time Protocol (NTP) version 4 but also retains compatibility with version 3.
Install ntp server
Type the following command:
# apt-get install ntp
Reading package lists... Done Building dependency tree Reading state information... Done The following extra packages will be installed: libcap1 Suggested packages: ntp-doc The following NEW packages will be installed: libcap1 ntp 0 upgraded, 2 newly installed, 0 to remove and 1 not upgraded. Need to get 443kB of archives. After this operation, 1126kB of additional disk space will be used. Do you want to continue [Y/n]? y Get:1 http://ftp.us.debian.org lenny/main libcap1 1:1.10-14 [9082B] Get:2 http://ftp.us.debian.org lenny/main ntp 1:4.2.4p4+dfsg-7 [434kB] Fetched 443kB in 0s (480kB/s) Selecting previously deselected package libcap1. (Reading database ... 20411 files and directories currently installed.) Unpacking libcap1 (from .../libcap1_1%3a1.10-14_i386.deb) ... Selecting previously deselected package ntp. Unpacking ntp (from .../ntp_1%3a4.2.4p4+dfsg-7_i386.deb) ... Processing triggers for man-db ... Setting up libcap1 (1:1.10-14) ... Setting up ntp (1:4.2.4p4+dfsg-7) ... Starting NTP server: ntpd.
Configure NTP server
/etc/ntp.conf is default configuration file. NTP uses UDP port 123 as its transport layer. It is designed particularly to resist the effects of variable latency by using a jitter buffer.
# vi /etc/ntp.conf
The default configuration will sync to various low-stratum NTP servers. You can set server as follows:
server 0.debian.pool.ntp.org iburst dynamic server 1.debian.pool.ntp.org iburst dynamic server 2.debian.pool.ntp.org iburst dynamic server 3.debian.pool.ntp.org iburst dynamic
Once file updaed, restart ntp:
# /etc/init.d/ntp restart
ntpq - NTP query program
You can use ntpq to list the servers that you are currently polling:
ntpq> peer remote refid st t when poll reach delay offset jitter ============================================================================== *time.nist.gov .ACTS. 1 u 128 64 376 64.616 -8.079 0.863 +iguana.igtc.com 18.104.22.168 2 u 19 64 377 9.105 -9.229 0.543 +hydrogen.cert.u 22.214.171.124 2 u 12 64 377 35.950 -7.184 0.438 -snag.rack911.co 126.96.36.199 3 u 50 64 377 33.782 -0.376 0.464
Alternatively, you can type the following to find out if ntp is working or not:
$ ntpq -p
remote refid st t when poll reach delay offset jitter ============================================================================== *time.nist.gov .ACTS. 1 u 3 64 373 64.616 -8.079 0.716 +iguana.igtc.com 188.8.131.52 2 u 28 64 377 9.065 -9.429 0.628 +hydrogen.cert.u 184.108.40.206 2 u 19 64 377 35.950 -7.184 0.357 -snag.rack911.co 220.127.116.11 3 u 57 64 377 33.695 -0.893 0.645