บทความนี้มีจุดประสงค์เพื่อให้ความรู้สำหรับการใช้บริการเทียบเวลาจาก เครื่อง Time Server ที่เปิดให้บริการสาธารณะ โดยเฉพาะอย่างยิ่งการขอใช้บริการจาก Time Server ของ ThaiCERT (clock.thaicert.org) ด้วยโปรแกรมซึ่งทำงานอยู่บนระบบปฏิบัติการ Windows และ UNIX หากท่านต้องการความรู้เพิ่มเติมเกี่ยวกับการทำงานของ Network Time Protocol (NTP) หรือ Time Server ท่านสามารถศึกษาได้จากเอกสารอ้างอิงที่ [1] และ [2]
การใช้บริการ Time Server ในระบบปฏิบัติการ UNIX หรือ Linux
โปรแกรม สำหรับการเทียบเวลาในระบบปฏิบัติการตระผมลยูนิกซ์ ได้แก่โปรแกรม ntp ซึ่งสามารถดาวน์โหลดได้จากเว็บ http://www.ntp.org/downloads.html
ขั้นตอนการติดตั้งทั่วไปมีดังต่อไปนี้
ดาวน์โหลดโปรแกรมด้วยคำสั่ง wget
wget http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2.0.tar.gz
ขยายไฟล์ tar-ball ด้วยคำสั่ง tar
tar -xzvf ntp-4.2.0.tar.gz
เข้าสู่ไดเรกทอรี ntp-4.2.0 และทำการตั้งค่าระบบก่อนการ compile ด้วย shell script configure
cd ntp-4.2.0
./configure
ทำการ compile ด้วยคำสั่ง make
make
ติดตั้งโปรแกรมด้วยคำสั่ง make install
make install
การเทียบเวลาด้วยคำสั่ง ntpdate
เมื่อ มีการใช้งานคำสั่ง ntpdate โดยตามด้วยอากิวเมนต์ของ Time Server ระบบจะทำการเทียบเคียงเวลาจากเครื่อง Time Server ที่ระบุ ซึ่งผู้ดูแลระบบ หรือ root เท่านั้นที่สามารถใช้งานคำสั่ง ntpdate ได้ ตัวอย่างคำสั่งนี้ที่ทำการเทียบเคียงเวลาจากเครื่อง clock.thaicert.nectec.or.th
ntpdate clock.thaicert.nectec.or.th
10 Sep 15:16:14 ntpdate[2264]: step time server 203.185.132.187 offset 10.006533 sec
เพื่อให้ระบบได้รับการเทียบเคียงเวลาที่ถูกต้องอย่างต่อเนื่อง ผู้ดูแลระบบอาจจะสร้าง cron job ที่มีรูปแบบดังตัวอย่าง
30 * * * * ntpdate clock.thaicert.nectec.or.th
ซึ่ง cron job ข้างต้นหมายถึง ระบบต้องทำการเทียบเวลากับเครื่อง Time Sever ที่ชื่อ clock.thaicert.nectec.or.th ทุกๆ ครึ่งชั่วโมง
การเทียบเวลาด้วย daemon ntpd
การ ใช้งานคำสั่ง ntpdate จะเป็นการขอเทียบเวลา โดยนำค่าเวลาที่ได้จาก Server มาปรับเปลี่ยนทันที อย่างไรก็ตามในระบบที่ต้องการความต่อเนื่องของความเที่ยงตรงมากขึ้นควรใช้ งาน daemon ntpd การตั้งค่าการทำงานของ daemon นี้มีขั้นตอนดังนี้
ปรับแต่งค่าไฟล์ ntp.conf (บางระบบอยู่ใน /etc/ntp.conf หรือ /usr/local/etc/ntp.conf) โดยควรมีการตั้งค่าอย่างน้อยดังต่อไปนี้
restrict default kod nomodify notrap nopeer noquery
restrict 127.0.0.1
server clock.thaicert.org
server 0.asia.pool.ntp.org
ค่าข้างต้นมีความหมายดังนี้
ค่าระบบ
restrict default kod nomodify notrap nopeer noquery
restrict 127.0.0.1
server
ความหมาย
เป็น การควบคุมให้ระบบไม่เปิดให้บริการขอเทียบเวลาให้กับเครื่องอื่น เนื่องจากหน้าที่ของเครื่องเป็นเพียง client (ศึกษาเพิ่มเติมจาก manual ของ ntpd)
server กำหนด Time Server ที่ต้องการเทียบเวลา โดยสามารถกำหนดได้อย่างน้อย 1 Server (สามารถค้นหา Public Time Server อื่นๆ จาก http://www.pool.ntp.org/)
ก่อนเริ่มการทำ งานของ ntpd ควรใช้คำสั่ง ntpdate กับ Time Server ที่กำหนดใน ntp.conf ก่อนเพื่อให้เวลาใน client และ Time Server มีค่าใกล้เคียงกัน
เริ่มการทำงานของโปรแกรม ntpd ด้วยคำสั่ง
ntpd
การใช้บริการ Time Server ในระบบปฏิบัติการ Windows
ใน ระบบปฏิบัติการ Windows XP Service Pack 2 , Windows Vista และ Windows 2003 Server จะมีโปรแกรมสำหรับการเทียบเวลาที่ติดตั้งมาพร้อมระบบปฏิบัติ โดยมีขั้นตอนการใช้งานดังแสดงตัวอย่างของ Windows XP Service Pack 2 ดังนี้
Double Click พื้นที่ของวันเวลาบน Task Bar ในตำแหน่งมุมขวาล่าง จะปรากฏโปรแกรม Clock ดังรูป
(http://www.thaicert.org/paper/basic/manualTimeServer/Date&Time1.png)
เลือก Internet Time Tab และเลือก check box “Automatically synchronize with an Internet time server” และเพิ่มค่า Server เป็น clock.thaicert.org และกดปุ่ม Update Now จะได้ผลดังรูป
(http://www.thaicert.org/paper/basic/manualTimeServer/Date&Time2.png)
หลังจากตั้งค่าเสร็จให้กดปุ่ม OK เพื่อยืนยันการตั้งค่าดังกล่าว
บทสรุป
นอก จาก Time Server ของ ThaiCERT ที่ชื่อ clock.thaicert.org แล้ว ยังมีเครื่อง Time Server ที่เปิดให้บริการแก่สาธารณะแหล่งอื่นๆ โดยดูรายละเอียดเพิ่มเติมจากเอกสารอ้างอิง [3] เครื่องมือ และโปรแกรมอื่นๆ สามารถตรวจสอบรายละเอียดเพิ่มเติมดังเอกสารอ้างอิง [4]
เอกสารอ้างอิง
[1] http://www.ntp.org/
[2] http://www.thaicert.nectec.or.th/paper/basic/time_server.pdf
[3] http://www.eecis.udel.edu/~mills/ntp/servers.html
[4] http://www.boulder.nist.gov/timefreq/general/softwarelist.htm
ขอขอบคุณบทความดีๆ จาก: