การตั้งค่า "เซิร์ฟเวอร์ NTP (Network Time Protocol)" ใน RHEL/CentOS 7
Network Time Protocol – NTP- เป็นโปรโตคอลที่ทำงานบนพอร์ต 123 UDP ที่ Transport Layer และอนุญาตให้คอมพิวเตอร์ซิงโครไนซ์เวลาผ่านเครือข่ายเพื่อให้ได้เวลาที่แม่นยำ ในขณะที่เวลาผ่านไป นาฬิกาภายในของคอมพิวเตอร์มักจะเคลื่อนไป ซึ่งอาจนำไปสู่ปัญหาเวลาที่ไม่สอดคล้องกัน โดยเฉพาะในไฟล์บันทึกของเซิร์ฟเวอร์และไคลเอนต์ หรือหากคุณต้องการจำลองทรัพยากรหรือฐานข้อมูลของเซิร์ฟเวอร์
ความต้องการ:
- ขั้นตอนการติดตั้ง CentOS 7
- ขั้นตอนการติดตั้ง RHEL 7
ข้อกำหนดเพิ่มเติม:
- ลงทะเบียนและสมัครสมาชิก Enbale RHEL 7 เพื่อรับการอัปเดต
- กำหนดค่าที่อยู่ IP แบบคงที่บน CentOS/Rhel 7
- ปิดการใช้งานและลบบริการที่ไม่ต้องการใน CentOS/RHEL 7
บทช่วยสอนนี้จะสาธิตวิธีการติดตั้งและกำหนดค่าเซิร์ฟเวอร์ NTP บน CentOS/RHEL 7 และซิงโครไนซ์เวลาโดยอัตโนมัติกับเพื่อนทางภูมิศาสตร์ที่ใกล้เคียงที่สุดสำหรับคุณ ตำแหน่งเซิร์ฟเวอร์โดยใช้รายการเซิร์ฟเวอร์เวลาพูลสาธารณะ NTP
ขั้นตอนที่ 1: ติดตั้งและกำหนดค่า NTP daemon
1. แพ็คเกจเซิร์ฟเวอร์ NTP จัดทำโดยค่าเริ่มต้นจากที่เก็บ CentOS /RHEL 7 อย่างเป็นทางการ และสามารถติดตั้งได้โดยใช้คำสั่งต่อไปนี้
yum install ntp
2. หลังจากติดตั้งเซิร์ฟเวอร์แล้ว ก่อนอื่นให้ไปที่เซิร์ฟเวอร์เวลาพูลสาธารณะ NTP อย่างเป็นทางการ เลือกพื้นที่ ทวีป ของคุณที่เซิร์ฟเวอร์ตั้งอยู่ จากนั้นค้นหา ของคุณ ตำแหน่งประเทศและรายการเซิร์ฟเวอร์ NTP ควรปรากฏขึ้น
3. จากนั้นเปิดไฟล์การกำหนดค่าหลักของ NTP daemon เพื่อแก้ไข แสดงความคิดเห็นรายการเริ่มต้นของเซิร์ฟเวอร์สาธารณะจากโครงการ pool.ntp.org และแทนที่ด้วยรายการที่มีให้สำหรับประเทศของคุณ เหมือนในภาพหน้าจอด้านล่าง
4. นอกจากนี้ คุณต้องอนุญาตให้ไคลเอนต์จากเครือข่ายของคุณซิงโครไนซ์เวลากับเซิร์ฟเวอร์นี้ เพื่อให้บรรลุผลดังกล่าว ให้เพิ่มบรรทัดต่อไปนี้ลงในไฟล์การกำหนดค่า NTP โดยที่คำสั่ง จำกัด จะควบคุม เครือข่ายใดที่ได้รับอนุญาตให้สืบค้นและซิงค์เวลา – แทนที่ IP ของเครือข่ายตามลำดับ
restrict 192.168.1.0 netmask 255.255.255.0 nomodify notrap
คำสั่ง nomodify notrap แนะนำว่าไคลเอ็นต์ของคุณไม่ได้รับอนุญาตให้กำหนดค่าเซิร์ฟเวอร์หรือใช้เป็นเพียร์สำหรับการซิงค์เวลา
5. หากคุณต้องการข้อมูลเพิ่มเติมสำหรับการแก้ไขปัญหาในกรณีที่มีปัญหากับ NTP daemon ของคุณ ให้เพิ่มคำสั่งไฟล์บันทึกซึ่งจะบันทึกปัญหาเซิร์ฟเวอร์ NTP ทั้งหมดไว้ในไฟล์บันทึกเฉพาะไฟล์เดียว
logfile /var/log/ntp.log
6. หลังจากที่คุณแก้ไขไฟล์ด้วยการกำหนดค่าทั้งหมดที่อธิบายไว้ข้างต้นแล้ว ให้บันทึกและปิดไฟล์ ntp.conf การกำหนดค่าสุดท้ายของคุณควรมีลักษณะเหมือนในภาพหน้าจอด้านล่าง
ขั้นตอนที่ 2: เพิ่มกฎไฟร์วอลล์และเริ่ม NTP Daemon
7. บริการ NTP ใช้พอร์ต UDP 123 บนเลเยอร์การขนส่ง OSI (เลเยอร์ 4) ได้รับการออกแบบมาโดยเฉพาะเพื่อต้านทานผลกระทบของเวลาแฝงที่แปรผัน (กระวนกระวายใจ) หากต้องการเปิดพอร์ตนี้บน RHEL/CentOS 7 ให้รันคำสั่งต่อไปนี้กับบริการ Firewalld
firewall-cmd --add-service=ntp --permanent
firewall-cmd --reload
8. หลังจากที่คุณเปิดพอร์ตไฟร์วอลล์ 123 แล้ว ให้เริ่มเซิร์ฟเวอร์ NTP และตรวจสอบให้แน่ใจว่าคุณเปิดใช้งานทั่วทั้งระบบ ใช้คำสั่งต่อไปนี้เพื่อจัดการบริการ
systemctl start ntpd
systemctl enable ntpd
systemctl status ntpd
ขั้นตอนที่ 3: ตรวจสอบการซิงค์เวลาเซิร์ฟเวอร์
9. หลังจากที่ NTP daemon เริ่มต้นแล้ว ให้รอสักครู่เพื่อให้เซิร์ฟเวอร์ซิงโครไนซ์เวลากับเซิร์ฟเวอร์รายการพูล จากนั้นรันคำสั่งต่อไปนี้เพื่อตรวจสอบสถานะการซิงโครไนซ์เพียร์ NTP และเวลาระบบของคุณ
ntpq -p
date -R
10. หากคุณต้องการสืบค้นและซิงโครไนซ์กับพูลที่คุณเลือก ให้ใช้คำสั่ง ntpdate ตามด้วยเซิร์ฟเวอร์หรือที่อยู่เซิร์ฟเวอร์ ตามที่แนะนำในตัวอย่างบรรทัดคำสั่งต่อไปนี้
ntpdate -q 0.ro.pool.ntp.org 1.ro.pool.ntp.org
ขั้นตอนที่ 4: ตั้งค่าไคลเอนต์ Windows NTP
11. หากเครื่อง windows ของคุณไม่ได้เป็นส่วนหนึ่งของ Domain Controller คุณสามารถกำหนดค่า Windows ให้ซิงโครไนซ์เวลากับเซิร์ฟเวอร์ NTP ของคุณโดยไปที่ Time จากด้านขวาของ แถบงาน - > เปลี่ยนการตั้งค่าวันที่และเวลา -> แท็บ เวลาอินเทอร์เน็ต -> เปลี่ยนการตั้งค่า -> ตรวจสอบการซิงโครไนซ์กับเซิร์ฟเวอร์เวลาอินเทอร์เน็ต -> ใส่ IP ของเซิร์ฟเวอร์หรือ FQDN ของคุณบน เซิร์ฟเวอร์ ที่ยื่น -> อัปเดต ทันที -> ตกลง
นั่นคือทั้งหมด! การตั้งค่าเซิร์ฟเวอร์ NTP ภายในบนเครือข่ายของคุณช่วยให้แน่ใจว่าเซิร์ฟเวอร์และไคลเอนต์ทั้งหมดของคุณตั้งเวลาไว้เหมือนกันในกรณีที่การเชื่อมต่ออินเทอร์เน็ตล้มเหลว และเซิร์ฟเวอร์และไคลเอนต์ทั้งหมดจะซิงโครไนซ์ซึ่งกันและกัน