Absolutely not using cron. ntpd is a daemon. It is constantly running and should be set up via an appropriate ntp.conf file to ensure that it stays within milliseconds, not minutes. You may need a step tickers and drift file, as well as statistics, but you can, with a good time source, be within about 20 milliseconds over the internet without much issue.
Personally, I would suggest you get a master clock, but if you don't need sync to be that tight, you can sync to the internet as long as there are not a lot of machines.
Quick HOWTO : Ch24 : The NTP Server - Linux Home Networking
You should not have to download it, but configure it as instructed.
Essentially, you will end up, with the appropriate configuration and init scripts, set up your server to slew the clock toward the appropriate time so that you are within a margin of error. The speed/latency to the internet does not actually matter as much as the differential between answers, and you should be polling those upstream lower stratum servers every few minutes to make sure you are not out of the ballpark. Then, the algorithm for ntp will be able to "Train" your clock on the server to stay within acceptable ranges by use of a drift file.