NTPは、ネットワーク内のすべてのシステムクロックを同期するために使用されるネットワークプロトコルです。これにより、ネットワーク内のすべてのシステムが同時に使用できるようになります。 NTPは、インターネット上の他の多くのタイムサーバーに接続することによってこれを行います。 NTPは、UDPポート123を使用して、クライアントや他のNTPサーバーと通信します。この投稿では、DebianシステムでNTPサーバーとクライアントを構成する方法を紹介します。
デモンストレーションのために、次の詳細を備えた2台のDebianマシンを使用しました。
NTPホスト –ホスト名:ntp-host、静的IPアドレス:192.168.72.158
NTPクライアント –ホスト名:クライアント、IPアドレス:192.168.72.159
注 :ここに示されている手順は、Debian 10(Buster)でテストされています。
DebianホストマシンにNTPサーバーをインストールして設定する
Debian 10にNTPサーバーをインストールして設定するには、以下にリストされているすべての手順を実行する必要があります。
ステップ1:AptUpdateを実行する
まず、NTPパッケージの最新バージョンをダウンロードするには、パッケージリストを更新する必要があります。ターミナルを開き、次のコマンドを実行して実行します。
$ sudo apt update
ステップ2:ホストサーバーへのNTPのインストール
ホストマシンにNTPサーバーをインストールするには、次のコマンドを実行します。
$ sudo apt install ntp
上記のコマンドを実行した後、 y / n を提供して、インストールを続行するかどうかを尋ねられる場合があります。 (はい/いいえ)オプション。 yと入力します インストールプロセスを続行します。
NTPがインストールされているかどうかを確認し、バージョン情報を表示するには、次のコマンドを実行します。
$ sntp --version
ステップ3:NTPサーバーの構成
NTPサーバーを構成するには、ホストマシンに2つの要素が必要です。1つは /etc/ntp.confです。 ファイルともう1つはntpd デーモン。まず、 ntp.confを構成します ファイルを作成してから、 ntpdを再起動します デーモン。
/etc/ntp.confを編集します 次のコマンドを使用してファイルを作成します:
$ sudo nano /etc/ntp.conf
NTPサーバーがインストールされている場合、デフォルトでは、次のサーバーから時刻を取得するように構成されています。
pool 0.debian.pool.ntp.org iburst
pool 1.debian.pool.ntp.org iburst pool 2.debian.pool.ntp.org iburst pool 3.debian.pool.ntp.org iburst
あなたはそれらをあなたの場所に最も近いタイムサーバーと置き換えることができます。 ntp.org Webサイトにアクセスして、お住まいの地域に最も近いNTPプールサーバーを見つけてください。
特定のNTPプールサーバーを使用するには、それらを ntp.confに追加する必要があります ファイル。次のように表示されるアジア地域のプールサーバーを追加します。
ntp.conf内 ファイルの場合、デフォルトのプールリストを次の行に置き換えます。
server 0.asia.pool.ntp.org server 1.asia.pool.ntp.org server 2.asia.pool.ntp.org server 3.asia.pool.ntp.org
次に、 ntp.confを保存して閉じます ファイル。
ステップ4:NTPデーモンを再起動します
ここで、NTPデーモンを再起動する必要があります。これを行うには、次のコマンドを使用します。
$ sudo service ntp restart
次に、次のコマンドを実行して、NTPサーバーが問題なく実行されているかどうかを確認します。
$ sudo service ntp status
ステップ5:ファイアウォールを介したNTPの許可
ファイアウォールを使用している場合は、NTPポート123へのUDP接続を許可するようにファイアウォールを構成する必要があります。次のコマンドを実行して、クライアントがNTPサーバーにアクセスできるようにします。
$ sudo ufw allow 123/udp
次に、次のコマンドを実行して、ルールが正常に追加されたかどうかを確認します。
$ sudo ufw status
DebianクライアントマシンにNTPクライアントをインストールして設定する
マシンをNTPクライアントとして構成するには、オフセット(ローカルクロックとNTPサーバー間の時間差)が1024秒を超えないようにする必要があります。オフセットがこの値より大きい場合、タイムソースは不正確であると見なされます。このため、最初にntpdateを使用してNTPクライアントをNTPサーバーと手動で同期しようとします。オフセット値が1024秒未満の場合は、自動同期用にntpd.confファイルを構成します。
ステップ1:ntpdateを使用してNTPクライアントをNTPサーバーと手動で同期する
Ntpdateは、NTPクライアントの時刻をNTPサーバーと1回だけ同期するために使用されます。クライアントマシンにインストールするには、次のコマンドを使用します。
$ sudo apt install ntpdate
上記のコマンドを実行した後、 y / n を提供して、インストールを続行するかどうかを尋ねられる場合があります。 (はい/いいえ)オプション。 yと入力します インストールプロセスを続行します。
次に、次のコマンドを使用して、NTPクライアントをNTPサーバーと手動で同期します。
$ sudo ntpdate <ntp-server-hostname/ip>
このシナリオでは、次のようになります。
$ sudo ntpdate 192.168.72.158
ntpdateの出力 コマンドはオフセット値(ローカルクロックとNTPサーバー間の時間差)を表示します。この例では、オフセット値は0.054776秒であり、これは非常に小さい値です。したがって、 ntp.confを構成できるようになりました 時刻をNTPサーバーと自動的に同期します。
ステップ2:hostsファイルの構成
/ etc / hostsに次のホスト名エントリを追加します クライアントマシンのファイル。この手順は、ホスト名を介してNTPサーバーを解決するために必要です。
<ntp-server-hostname> <ntp-server-ip>
必ずntp-server-hostnameを置き換えてください およびntp-server-ip NTPのホスト名とIPアドレスをそれぞれ使用します。このシナリオでは、次のようになります。
192.168.72.158 ntp-host
ステップ3:systemdtimesyncdデーモンを無効にする
NTPを設定するので、 systemd timesyncdを無効にします。 デーモン。これを行うには、次のコマンドを使用します。
$ sudo timedatectl set-ntp off
ステップ4:NTP構成ファイルを使用してNTPクライアントをNTPサーバーと自動的に同期する
次に、NTPサーバーと自動的に同期するようにクライアントマシンを構成します。このため、クライアントシステムに次のコマンドを使用してNTPをインストールします。
$ sudo apt install ntp
上記のコマンドを実行した後、 y / n を提供して、インストールを続行するかどうかを尋ねられる場合があります。 (はい/いいえ)オプション。 yと入力します インストールプロセスを続行します。インストールが完了したら、 ntp.confを構成します ファイル。
次のコマンドを実行して、ntp.confファイルを編集します。
$ sudo nano /etc/ntp.conf
ファイルに次の行を挿入します:
server <ntp-server-hostname/ip> prefer iburst
このシナリオでは、次のようになります。
server 192.168.72.158 prefer iburst
上記の行で、優先 指定されたサーバーをNTP同期の優先サーバーとしてマークするために使用されます。 iburst 通常のパケットではなく、同期のために6つのパケットを送信するために使用されます(NTPサーバーに到達できない場合)。
次に、NTPデーモンを再起動して、構成の変更を適用します。
$ sudo service ntp restart
NTP同期ステータスの確認
ここで、NTPが正しく機能しているかどうかを確認するには、次のコマンドを実行します。
$ ntpq -p
上記のコマンドの出力は次のとおりです。リモート NTPサーバーのホスト名とrefid は、NTPサーバー自体が同期のために接続されている最上位サーバーです。
これですべてです。今日の投稿では、Debian 10でNTPサーバーを構成する方法を示しました。次に、別のDebianマシンでNTPクライアントを構成し、それをNTPサーバーと同期する方法を説明しました。上記で説明したすべての簡単な手順に従うことで、ネットワーク内のすべてのシステムクロックを簡単に同期できます。
Ubuntu20.04LTSでNTPサーバーとクライアントを構成する方法に関する投稿をご覧ください。