【CentOS8】非インターネット環境でNTP時刻同期を行う(chrony)

Table of Content

広告

はじめに

非インターネット環境でOracleRACの評価を行うことになりました。OracleRACはインストール時にchronyの設定が適切にされているか、厳密にチェックします。また、上位となるNTPサーバが信頼できる時刻が提供できることを要求されます。

非インターネットの環境なので、インターネット上のNTPサーバは参照できないため、自前で信頼できる時刻が提供できるNTPサーバを構築する必要があります。

本記事ではNTPサーバを構築し、信頼できる時刻が提供できるNTPサーバをchronyを使って構築します。

構成

こんな感じの構成で構築していきます。

サーバ ホスト名 IPアドレス
NTPサーバ server 192.168.200.100
NTPクライアント client1 192.168.200.101

構築

CentOS8ではchronyは既にインストールされています。
ファイアウォールは無効もしくは必要な通信を許可して下さい。

NTPサーバの構築

「/etc/chrony.conf」を次の様に編集します。
「local stratum 10」が、外部のサーバに時刻同期できなくても、時刻が信頼できるものとして扱うようになります。

# 上位サーバは指定しない
driftfile /var/lib/chrony/drift
# 許可するネットワークアドレスを記載
allow 192.168.100.0/24
# この指定で信頼できる時刻同期サーバとなる
local stratum 10
keyfile /etc/chrony.keys
leapsectz right/UTC
logdir /var/log/chrony

chronyを再起動しておきます。

sudo systemctl restart chronyd

NTPクライアントの構築

「/etc/chrony.conf」を次の様に編集します。

# NTPサーバを指定します
server 192.168.100.100 iburst
driftfile /var/lib/chrony/drift
# SLEWモードに設定しました。この辺はお好みで。
#makestep 1.0 3
leapsecmode slew
rtcsync
keyfile /etc/chrony.keys
leapsectz right/UTC
logdir /var/log/chrony

chronyを再起動しておきます。

sudo systemctl restart chronyd

時刻同期の確認

NTPサーバでクライアント情報を確認します。

$ sudo chronyc -a clients
Hostname                      NTP   Drop Int IntL Last     Cmd   Drop Int  Last
===============================================================================
server                          0      0   -   -     -       5      0  11    51
192.168.100.101                69      0  10   -   627       0      0   -     -

NTPクライアントで上位NTPサーバとの同期情報を確認します。

$ chronyc sources
210 Number of sources = 1
MS Name/IP address         Stratum Poll Reach LastRx Last sample               
===============================================================================
^* 192.168.100.100              10   6    37    62   -204ns[  +50us] +/-  256us

参照先NTPサーバの行先頭で「^*」が表示されれば構築完了です。
記号の意味は、

・「^」…リモートNTPサーバ
・「*」…ソースとして時刻同期しているNTPサーバ

最後に

本来ならGPS等を使って正確な時刻を提供できるようにすべきです。

しかし、評価等の目的であれば、一台のPCの時刻を信頼できる時刻としてNTPサーバを立てれば事足ります。

非インターネット上でNTPを独立させる事がありましたら、本記事が参照になれば幸いです。