Giới thiệu nội dung

NTP server là gì?

Giao thức NTP (Network Time Protocol – Là giao thức đồng bộ thời gian mạng) là một giao thức để đồng bộ đồng hồ của hệ thống máy tính thông qua mạng dữ liệu chuyển mạch gói với độ trễ có biến đổi. Khi các client gửi yêu cầu đồng bộ thời gian lên máy chủ, các máy chủ sẽ cập nhật với nhau để có thể đồng bộ chính xác giờ nhất cho client.

Giao thức này được thiết kế ra để tránh ảnh hưởng của độ trễ biến đổi bằng cách là sử dụng bộ đệm jitter. NTP cũng được gọi là của phần mềm được triển khai trong một dự án Dịch vụ NTP Công cộng (NTP Public Services Project).

NTP server là gì?

Nguyên lý hoạt động của NTP server

Hoạt động của ntp server

Hướng dẫn cấu hình NTP Server trên CentOs 8

Chuẩn bị mô hình kết nối

Sử dụng 2 Server cho mô hình:
– CentOS 8
– Có kết nối Internet
– Đăng nhập thao tác với user root

Chuẩn bị trước khi cài đặt

Cấu hình timezone.

# timedatectl set-timezone Asia/Ho_Chi_Minh

Kiểm tra timezone sau khi cài đặt.

# timedatectl

Cấu hình allow Firewalld.

# firewall-cmd –add-service=ntp –permanent

# firewall-cmd –reload

Cấu hình disable SElinux.

# sudo setenforce 0

# sed -i ‘s/SELINUX=enforcing/SELINUX=disabled/g’ /etc/sysconfig/selinux

# sed -i ‘s/SELINUX=permissive/SELINUX=disabled/g’ /etc/sysconfig/selinux

Cài đặt Chrony trên cả 2 Server

Truy cập vào SSH vào cả 2 Server. Sau đó tiến hành cài đặt Chrony.

# yum install -y chrony

Sau khi cài đặt tiến hành start Chrony và cho phép khởi động cùng hệ thống.

# systemctl enable –now chronyd

Kiểm tra dịch vụ đang hoạt động.

# systemctl status chronyd

Mặc định file cấu hình của Chrony nằm ở /etc/chrony.conf, tiến hành kiểm tra file cấu hình.

# cat /etc/chrony.conf | egrep -v ‘^$|^#’

Cấu hình Chrony làm NTP Server

Chrony cho phép chúng ta cấu hình Server thành một NTP Server. Việc này phù hợp cho các mô hình mạng LAN có nhiều máy kết nối. Thay vì phải tốn thời gian đồng bộ từ Internet thì chúng ta có thể cấu hình 1 Server làm NTP Server Local và các máy còn lại sẽ đồng bộ thời gian từ NTP Server này về.

Để lựa chọn pool đồng bộ thời gian chúng ta có thể truy cập vào NTP Pool để lựa chọn NTP Server. Ở đây chúng ta giữ nguyên đồng bộ từ centos.pool.ntp.org.

Tại Server 10.10.10.61 là Server sẽ làm NTP Server.  Chúng ta sẽ cấu hình bổ sung cấu hình cho phép các máy Client 10.10.10.62 phía trong có thể đồng bộ thời gian từ Server này.

# sed -i ‘s|#allow 192.168.0.0/16|allow 10.10.10.0/24|g’ /etc/chrony.conf

Trong đó 10.10.10.0/24 chính là dải IP Local mà chúng ta cho phép các Client kết nối vào NTP Server này để đồng bộ thời gian.

Kiểm tra lại file cấu hình.

Restart lại dịch vụ để cập nhật cấu hình.

# systemctl restart chronyd

Sử dụng chronyc để kiểm tra đồng bộ.

# chronyc sources

Kiểm tra đồng bộ sử dụng timedatectl.

Set đồng bộ thời gian cho đồng hồ của BIOS (Đồng hồ phần cứng) hwclock.

# hwclock –systohc

Kiểm tra đồng bộ của date và hwclock đảm bảo đồng bộ

Cấu hình Chrony Client

Sau khi cài đặt và khởi động Chrony thì Server này đã tự động đồng bộ thời gian về từ một trong những NTP Server thuộc pool centos.pool.ntp.org

Bây giờ thay vì đồng bộ thời gian từ Internet chúng ta sẽ đồng bộ từ NTP Server đã cấu hình phía trên.

Tại Server 10.10.10.62 chỉnh sửa cấu hình chrony.

# sed -i ‘s|server 0.centos.pool.ntp.org iburst|server 10.10.10.61 iburst|g’ /etc/chrony.conf

# sed -i ‘s|server 1.centos.pool.ntp.org iburst|#|g’ /etc/chrony.conf

# sed -i ‘s|server 2.centos.pool.ntp.org iburst|#|g’ /etc/chrony.conf

# sed -i ‘s|server 3.centos.pool.ntp.org iburst|#|g’ /etc/chrony.conf

Kiểm tra cấu hình

Khởi động lại Chrony để cập nhật cấu hình.

# systemctl restart chronyd

Sử dụng chronyc kiểm tra đồng bộ.

Kiểm tra đồng bộ sử dụng timedatectl.

Set đồng bộ thời gian cho đồng hồ của BIOS (Đồng hồ phần cứng) hwclock.

# hwclock –systohc

Kiểm tra đồng bộ của date và hwclock đảm bảo đồng bộ.

Tổng kết

Bài viết đã trình bày các khái niệm cơ bản về NTP và hướng dẫn cài đặt cấu hình đồng bộ thời gian trên CentOS 8 sử dụng Chrony. Việc chuyển đổi sử dụng từ NTPD sang Chrony không hệ phức tạp vì Chrony rất thuận tiện trong quá trình cấu hình và thao tác.