正確な時刻管理は、ネットワークベースのコンピュータ間で信頼性の高い通信を行うために必要な、最も重要な構成の一つです。また、systemd timer や cronjobs などのシステムコンポーネントが正しい時刻に稼働するようにするためにも必要です。ネットワーク・タイム・プロトコル (NTP) を利用するとアップストリーム・タイム・サーバーやサーバープールと時刻を同期し、正確な時刻を維持できます。
Red Hat Enterprise Linux (RHEL) では、chrony パッケージに含まれる chronyd デーモンがデフォルトの NTP クライアントとなっています。chronyd デーモンをサーバーとして構成して、内部ネットワークのコンピュータシステムに正確な時刻を提供することもできます。
この記事では、ネットワークデバイスにこれらの設定を実装できるように、両方の構成について説明します。
chrony を NTP クライアントとして構成する
RHEL をインストールすると、chronyd サービスにデフォルト設定が構成されます。これらの設定の一つは、タイムソースとして NTP.org プールを利用します。これは信頼できるタイムソースであり、ほとんどのホームユーザーはこの設定でまったく問題ないでしょう。しかし、セキュリティのベストプラクティスに従うエンタープライズ環境では外部への NTP 通信が制限されていることが多いため、内部に NTP のタイムソースが必要になります。
chronyd デーモンで内部または別の NTP ソースを利用するように構成するには、/etc/chrony.conf ファイルを編集する必要があります。このファイルでは、3 つのタイムソース設定のいずれかを構成します。chrony でタイムソースを設定するために最もよく使われるのは、server と pool の 2 つです。server ディレクティブを使用すると、タイムソースとして単一の NTP サーバーを指定できます。pool ディレクティブは server ディレクティブに似ていますが、単一の NTP タイムソースではなく NTP サーバーのプールを指定できます。プール名は複数のアドレスとして解決されます。これらのアドレスは時間の経過とともに変化する場合があります。
以下は chronyd クライアントが ntp.lab.int という NTP サーバーと同期するためのデフォルト設定の例です。この設定では、iburst を使用することで、chronyd が時計の最初のアップデートをより迅速に行えるようにしています。
server ntp.lab.int iburst
driftfile /var/lib/chrony/drift
makestep 1.0 3
rtcsync
keyfile /etc/chrony.keys
leapsectz right/UTC
logdir /var/log/chrony[ e ブック:成功するための Linux 環境管理をダウンロードして、作業を効率化する方法を学びましょう ]
構成変更を適用した後、chronyd サービスを再起動し、稼働していることを確認します。そして、NTP ソースをチェックし、システムクロックがアップストリーム・タイム・サーバーに正しく同期していることを確認します。
$ sudo systemctl restart chronyd.service
$ systemctl is-active chronyd.service
active
$ chronyc sources
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^* 192.168.50.13 4 6 17 22 +28us[ +26us] +/- 27ms
$ timedatectl
Local time: Wed 2022-05-18 12:47:41 EDT
Universal time: Wed 2022-05-18 16:47:41 UTC
RTC time: Wed 2022-05-18 16:47:42
Time zone: America/New_York (EDT, -0400)
System clock synchronized: yes
NTP service: active
RTC in local TZ: nochrony を NTP サーバーとして構成する
chrony パッケージの優れた機能の一つは、基準とするタイムサーバーを簡単に構成できることです。最初のステップは、前のセクションで示したように、そのサーバー自身のタイムソースを構成することです。タイムソースを構成したら、chrony.conf ファイルで allow ディレクティブを構成する必要があります。allow ディレクティブは、NTP クライアントが NTP サーバーにアクセスできるサブネットを指定します。デフォルトでは、どのクライアントもアクセスを許可されておらず、chronyd は純粋に NTP クライアントとして動作します。したがって、chronyd を NTP サーバーとして動作させるには、このディレクティブを有効にする必要があります。allow ディレクティブの詳細は、chrony.conf のマニュアルページを参照してください。
[ アップグレードの準備はできましたか? Red Hat Developer プログラムから RHEL 9 を無料でダウンロードしましょう ]
以下の例では、192.168.0.0/24 サブネットからの接続を受け入れるように allow ディレクティブを構成しています。
server ntp.lab.int iburst
allow 192.168.0.0/24
driftfile /var/lib/chrony/drift
makestep 1.0 3
rtcsync
keyfile /etc/chrony.keys
leapsectz right/UTC
logdir /var/log/chronyタイムソースを構成し、allow ディレクティブを追加し、chronyd サービスを再起動したら、NTP サービスを許可するように firewalld を構成する必要があります。
$ sudo firewall-cmd --add-service=ntp --permanent
$ sudo firewall-cmd --reload最後に、最初のセクションで示したように、NTP クライアントを構成します。
まとめ
この記事では chrony を NTP クライアントとして構成し、サーバーまたはプールベースのタイムソースを利用するようにサーバーを構成する方法を説明しました。また、ネットワーク内の NTP クライアントに正確な時刻を提供するために、chrony を信頼できるタイムサーバーとして構成する方法も説明しています。
執筆者紹介
Morgan Peterman is a Senior Partner Technical Account Manager for Red Hat OpenShift. He is a Red Hat Certified Engineer (RHCE) and a Red Hat Certified Specialist in OpenShift. Before joining Red Hat, Morgan spent 15 years as a Linux Engineer and Systems Administrator, deploying a wide variety of technologies and delivering cost-cutting IT solutions within the healthcare and travel industries.
類似検索
More than meets the eye: Behind the scenes of Red Hat Enterprise Linux 10 (Part 4)
Why should your organization standardize on Red Hat Enterprise Linux today?
The Overlooked Operating System | Compiler: Stack/Unstuck
Linux, Shadowman, And Open Source Spirit | Compiler
チャンネル別に見る
自動化
テクノロジー、チームおよび環境に関する IT 自動化の最新情報
AI (人工知能)
お客様が AI ワークロードをどこでも自由に実行することを可能にするプラットフォームについてのアップデート
オープン・ハイブリッドクラウド
ハイブリッドクラウドで柔軟に未来を築く方法をご確認ください。
セキュリティ
環境やテクノロジー全体に及ぶリスクを軽減する方法に関する最新情報
エッジコンピューティング
エッジでの運用を単純化するプラットフォームのアップデート
インフラストラクチャ
世界有数のエンタープライズ向け Linux プラットフォームの最新情報
アプリケーション
アプリケーションの最も困難な課題に対する Red Hat ソリューションの詳細
仮想化
オンプレミスまたは複数クラウドでのワークロードに対応するエンタープライズ仮想化の将来についてご覧ください