Giới thiệu nội dung
- NTP server là gì?
- Nguyên lý hoạt động trong NTP server.
- Hướng dẫn cấu hình NTP Server trên CentOs 8
- Tổng kết
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
- NTP client gửi đi một gói tin, trong đó có chứa một thẻ thời gian tới cho NTP server.
- NTP server nhận được gói tin, và gửi trả lại NTP client một gói tin khác, có thẻ thời gian là thời điểm nó đã gửi gói tin đó đi.
- NTP client nhận được gói tin đó, rồi tính toán độ trễ, dựa vào thẻ thời gian mà nó nhận được cùng với độ trễ của đường truyền, NTP client sẽ tự động set lại thời gian của nó.
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.