19.3. クライアントサーバーでの timesync システムロールの適用

timesync ロールを使用すると、NTP クライアントで Network Time Security (NTS) を有効にできます。Network Time Security (NTS) は、Network Time Protocol (NTP) で指定される認証メカニズムです。サーバーとクライアント間で交換される NTP パケットが変更されていないことを確認します。

警告

timesync ロールは、管理対象ホストで指定または検出されたプロバイダーサービスの設定を置き換えます。以前の設定は、ロール変数で指定されていなくても失われます。timesync_ntp_provider 変数が定義されていない場合は、プロバイダーの唯一の設定が適用されます。

前提条件

  • timesync ソリューションをデプロイするシステムに Red Hat Ansible Automation Platform をインストールする必要はありません。
  • Playbook を実行するシステムに rhel-system-roles パッケージがインストールされている。
  • timesync システムロールをデプロイするシステムの一覧を示すインベントリーファイルがある。
  • chrony の NTP プロバイダーバージョンは 4.0 以降。

手順

  1. 以下の内容を含む playbook.yml ファイルを作成します。

    ---
    - hosts: timesync-test
      vars:
        timesync_ntp_servers:
          - hostname: ptbtime1.ptb.de
            iburst: yes
            nts: yes
      roles:
        - rhel-system-roles.timesync

    ptbtime1.ptb.de は、公開サーバーの例です。別のパブリックサーバーまたは独自のサーバーを使用できます。

  2. オプション:Playbook の構文を確認します。

    # ansible-playbook --syntax-check playbook.yml
  3. インベントリーファイルで Playbook を実行します。

    # ansible-playbook -i inventory_file /path/to/file/playbook.yml

検証

  1. クライアントマシンでテストを実行します。

    # chronyc -N authdata
    
    Name/IP address         Mode KeyID Type KLen Last Atmp  NAK Cook CLen
    =====================================================================
    ptbtime1.ptb.de         NTS     1   15  256  157    0    0    8  100
  2. 報告された cookie の数がゼロよりも多いことを確認します。

関連情報

  • chrony.conf(5) の man ページ