はじめに
RHEL9でNTPサーバを構築する方法を載せておきます。
設定ファイルの解説も併せて行います。
chronyのインストール
chnoryをインストールします。
dnf install chrony
chrony.confの確認
ここで、設定ファイルの確認と解説を行います。
# Use public servers from the pool.ntp.org project. # Please consider joining the pool (https://www.pool.ntp.org/join.html). pool 2.rhel.pool.ntp.org iburst ※デフォルト。大抵コメントアウトする。 server [NTPサーバーのIP or FQDN] iburst ※任意のNTPサーバを指定。 # Use NTP servers from DHCP. sourcedir /run/chrony-dhcp # Record the rate at which the system clock gains/losses time. driftfile /var/lib/chrony/drift # Allow the system clock to be stepped in the first three updates # if its offset is larger than 1 second. makestep 1.0 3 # Enable kernel synchronization of the real-time clock (RTC). rtcsync ※ハードウェアクロックの時刻同期を有効化します。無効にするメリットがないのでデフォルトのまま。 # Enable hardware timestamping on all interfaces that support it. #hwtimestamp * # Increase the minimum number of selectable sources required to adjust # the system clock. #minsources 2 ※時刻同期に最低限必要な、候補となるNTPサーバの数を指定 # Allow NTP client access from local network. #allow 192.168.0.0/16 ※NTPサーバとして動作させる場合、NTPサーバにアクセス可能なセグメントやIPアドレスを指定。複数行設定可能。 # Serve time even if not synchronized to a time source. #local stratum 10 ※NTPサーバとして動作させる場合、上位のNTPサーバと時刻同期できていない場合でも自分自身を、ここで指定したstratumで時刻同期をクライアントに提供することが可能。 # Require authentication (nts or key option) for all NTP sources. #authselectmode require # Specify file containing keys for NTP authentication. keyfile /etc/chrony.keys # Save NTS keys and cookies. ntsdumpdir /var/lib/chrony # Insert/delete leap seconds by slewing instead of stepping. #leapsecmode slew # Get TAI-UTC offset and leap seconds from the system tz database. leapsectz right/UTC # Specify directory for log files. logdir /var/log/chrony # Select which information is logged. #log measurements statistics tracking
設定ファイルの修正
設定ファイルの修正を行います。先ほど水色で塗った箇所を適宜修正してください。
vi /etc/chrony.conf
chronyの有効化
次のコマンドでchroryを有効化しておきます。
systemctl is-enabled chronyd systemctl enable chronyd
chronyの再起動
設定を反映させるためにchronyを再起動します。
systemctl restart chronyd
chronyの状態確認
ステータスを確認します。Active: active (running)となっていれば問題ありません。
systemctl status chronyd
NTPの許可
NTPサーバとして動作させている場合はNTPを許可する必要があります。
RHEL9ではiptablesではなくfirewalldを採用しています。
firewall-cmd --state systemctl start firewalld firewall-cmd --list-all | grep services firewall-cmd --add-service=ntp --permanent firewall-cmd --reload firewall-cmd --list-all | grep services
NTPサーバとの疎通確認
NTPクライアント側にて次のコマンドを投入します。
[root@RHEL9 ~]# chronyc tracking Reference ID : 8582798D (mail1.marinecat.net) Stratum : 3 Ref time (UTC) : Mon Sep 16 12:17:48 2024 System time : 0.000010081 seconds slow of NTP time Last offset : +0.000194532 seconds RMS offset : 0.000183744 seconds Frequency : 2.182 ppm slow Residual freq : -0.003 ppm Skew : 0.214 ppm Root delay : 0.018152466 seconds Root dispersion : 0.002154808 seconds Update interval : 1044.3 seconds Leap status : Normal
また、次のコマンドで同期先のNTPサーバの候補、アクティブなNTPサーバがわかります。
[root@RHEL9 ~]# chronyc sources MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^- v163-44-97-196.rm2n.stat> 2 10 377 803 -582us[ -582us] +/- 25ms ^+ sv1.localdomain1.com 2 10 377 29 +667us[ +667us] +/- 22ms ^+ v4.cloud.ntp.admtan.jp 2 10 377 1038 -96us[ +101us] +/- 20ms ^* mail1.marinecat.net 2 10 377 835 +874us[+1068us] +/- 9504us ※ * が付いているものが現在の同期先のNTPサーバ
参考
5分でできる!NTP(chrony)の設定方法【CentOS7】
NTPサーバ / クライアントのchronyを、インストール~設定~動作確認する方法を解説しています。簡潔かつ初心者にも分かりやすくまとめています。
NTPサーバーの構築手順 - Qiita
はじめに職場で社内用の各種サーバーの管理を任されることになったので、まずは簡単そうなものから構築できるようになろうと考え、第一弾としてChronyを使ったNTPサーバーを立ててみました。この記事…
【CentOS8】chronyの仕様や設定~[chrony.conf] や[chronyc sources] 表示結果の見方~
Linuxのクロックの取り扱い Linux は Windows とは異なり、システムクロックとハードウェアクロックを分離して管理しています。 ハードウェアクロックは『マザーボードに存在する、電源OFFにしても動き続けるもの』 一方、システム
↑深く理解したい場合はおすすめ。
コメント