NTP is the network time protocol, and is used to make sure that any computer connected to the internet is able to keep accurate time. This is important in making sure that the timestamps on the transactions and log entries for your server are correct and reliable.
Some of the modern Linux distributions will include ntp by default, others will require that you install it. However even the distros that do include the ntp daemon often don't turn it on, so you'll have to do that for yourself.
If ntp isn't installed you can install it either by using the package management tools that come with your version of Linux, or by getting the source code, and installing from scratch.
Once ntp has been installed, you'll want to make sure that it's configured. The most important thing is to make sure that your server knows which ntp servers it should use to get the correct time from. To do this you'll want to edit the /etc/ntp.conf file. You'll need to make sure that there are at least three 'server' lines in the file that look something like
If you don't have any such lines in the file, then add the above lines to the file. This will cause your server to use the US pool servers.
Once that's done you should make sure that ntp will be restarted whenever the server is rebooted. Check the /etc/inittab file and look for a line like This will tell you what the default runlevel is for your server. In the example here the default runlevel is 3, which is typical for red hat based servers (debian based distributions however often use runlevel 2, so make sure you check for your individual server). You will then want to make sure that there is a symbolic link in the appropriate startup directory to the startup script for ntp. So for runlevel 3, you'd want to see a link in the rc3.d directory (which will be somewhere under /etc, again different distros but it in slightly different places) that looks something like: You should make sure that ntp starts after networking has already been setup, so the number in the name of the link should be higher than whatever scripts your server calls to start networking.
Once all this is setup, reboot your server and you shouldn't have to worry about the clock on your server again.