NTP (Network Time Protocol) là giao thức chuẩn được sử dụng rộng rãi để đồng bộ hóa thời gian giữa nhiều máy tính trong hệ thống mạng. Một máy chủ NTP đảm nhiệm việc duy trì đồng bộ thời gian chính xác cho tất cả các thiết bị trong cùng mạng nội bộ, với độ sai lệch tối đa chỉ khoảng một mili giây. Đây là yếu tố đặc biệt quan trọng trong môi trường yêu cầu thực thi tác vụ đồng bộ hoặc đồng khởi chạy dịch vụ theo thời gian định sẵn.
Trong hướng dẫn này, bạn sẽ được cung cấp từng bước chi tiết để cấu hình máy chủ NTP trên AlmaLinux, cũng như thiết lập các máy client để đồng bộ thời gian với máy chủ đã định. Quy trình có thể áp dụng cho cả hệ thống cài mới hoặc hệ thống vừa được chuyển đổi từ CentOS sang AlmaLinux.
Trong hướng dẫn này bạn sẽ học được:
- Cách cài đặt và cấu hình dịch vụ chrony làm máy chủ NTP
- Cách mở Firewall để cho phép truy vấn NTP
- Cách kết nối từ máy client tới máy chủ NTP
Yêu cầu Hệ thống, Quy ước và Phiên bản Phần mềm Sử dụng
Hạng mục | Yêu cầu hoặc Phiên bản Phần mềm Sử dụng |
---|---|
Hệ điều hành | AlmaLinux |
Phần mềm | chrony |
Khác | Truy cập hệ thống với quyền root hoặc qua sudo |
Quy ước:
#
– yêu cầu chạy lệnh Linux với quyền root trực tiếp hoặc thông quasudo
$
– yêu cầu chạy lệnh Linux với tư cách người dùng thường
Cấu hình máy chủ NTP
Ví dụ sau thiết lập máy chủ NTP cho mạng 192.168.1.0/24
. Bạn có thể thay đổi dải mạng phù hợp với môi trường của mình.
- Chrony là cả client và server NTP mặc định trên RHEL/AlmaLinux. Đầu tiên, cài đặt gói chrony:
# dnf install chrony
- Kích hoạt dịch vụ chronyd để tự khởi động cùng hệ thống:
# systemctl enable chronyd
- Mở file cấu hình
/etc/chrony.conf
và thêm dòng sau để cho phép client trong mạng192.168.1.0/24
truy cập máy chủ NTP:allow 192.168.1.0/24Thêm nhiều dòng
allow
nếu bạn cần cho phép thêm dải IP hoặc mạng khác.
- Khởi động lại dịch vụ để áp dụng cấu hình:
# systemctl restart chronyd
- Nếu hệ thống đang bật
firewalld
, bạn cần mở cổng NTP để chấp nhận yêu cầu từ client:# firewall-cmd --permanent --add-service=ntp # firewall-cmd --reload
Hai lệnh trên lần lượt mở dịch vụ NTP (cổng UDP 123) và nạp lại cấu hình firewall.
Cấu hình máy khách NTP
Sau khi máy chủ NTP đã sẵn sàng, chuyển sang cấu hình client để đồng bộ thời gian. Ví dụ, địa chỉ IP máy chủ NTP là 192.168.1.150
.
- Trên máy client, cài đặt chrony và kích hoạt dịch vụ:
# dnf install chrony # systemctl enable chronyd
- Thêm dòng sau vào
/etc/chrony.conf
để trỏ client tới máy chủ NTP:server 192.168.1.150
Thay 192.168.1.150
bằng IP thực tế của máy chủ NTP.
2. Khởi động lại dịch vụ chrony để áp dụng thay đổi:
# systemctl restart chronyd
3. Kiểm tra nguồn đồng bộ trên client:
# chronyc sources 210 Number of sources = 6 MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^* almatime.localdomain 3 6 377 11 -1310us[ -755us] +/- 54ms
Theo mặc định, client sẽ đồng bộ thời gian mỗi 64 giây.
4. Trên máy chủ NTP, kiểm tra danh sách client đã kết nối:
# chronyc clients Hostname NTP Drop Int IntL Last Cmd Drop Int Last =============================================================================== ntp-client.localdomain 6 0 10 - 12 0 0 - -
Kết luận
Thông qua bài hướng dẫn này, bạn đã nắm được cách triển khai giao thức NTP trên AlmaLinux bằng cách sử dụng dịch vụ chrony để thiết lập một máy chủ thời gian nội bộ. Bên cạnh đó, bạn cũng đã biết cách cấu hình các client để đồng bộ thời gian một cách chính xác với máy chủ NTP. Việc thiết lập đồng bộ thời gian không chỉ giúp duy trì tính nhất quán cho hệ thống, mà còn là nền tảng quan trọng để đảm bảo hiệu suất ổn định cho các dịch vụ, ứng dụng phân tán và quy trình tự động hóa trong môi trường doanh nghiệp.