chrony設定
chronyは、ntpdとは異なるNTP プロトコルの実装で、システムクロックをより迅速に調整することが可能です。
ntpdとchronydの大きな違いの1つは、コンピューターのクロックを管理するために使われるアルゴリズムにあります
Chrony は、頻繁にネットワーク接続が一時停止したり、断続的に切断され再接続されるようなシステムの場合に検討してください。
たとえば、モバイルや仮想システムなどです。
NTPデーモン(ntpd)は、通常、常時接続のシステムの場合に検討してください。
ブロードキャストまたはマルチキャストIPを使用する必要のあるシステム、
またはAutokeyプロトコルでパケット認証を実行する必要のあるシステムの場合は、ntpdの使用を検討してください。
Chronyは、MD5、SHA1、またはより強力なハッシュ機能のあるメッセージ認証コード(MAC)を使用した対称鍵認証のみをサポートしますが、
ntpdはPKIシステムの活用も可能なAutokey認証プロトコルもサポートします。
上記のように用途に分けて利用を決定します。
基本的には従来のNTPDのように設定する事が可能です。
インストール
# yum install chrony
NTPを利用した時刻同期をおなう場合、設定を有効化しておきます。
# timedatectl set-ntp yes
クライアント設定
時刻同期のクライアントとして利用する設定を行います。
設定ファイルは/etc/chrony.conf
を編集します。
同期サーバの指定
server 10.100.0.100 iburst
iburstオプションは付いたNTPサーバに対して、起動直後に短い間隔で4回問い合わせをする(ntpdのiburstは8回)。
NTPサーバの妥当性の判断には1回の問い合わせだけでは足りず数回を要するのだが、
起動直後に4度問い合わせをすることによって妥当性判断が早く済み、
結果として起動から時刻同期が行われるまでの時間が短くなる。
ハード時刻の調整
ハード時刻をNTPシステム時刻で調整する。
rtcsync
パラメータを指定しておくことで、11分ごとにハード時刻を調整する。
step時刻調整
OS起動時のみstepにて時刻を調整するよう指定が出来る。
ntpdはntpdateサービスと分けてOS起動時にntpdateを実行させていたがchronyは下記記述で指定可能。
makestep 10 3
デフォルトでは起動時に10秒以上時間がずれていた場合、3回までstep調整で時刻を同期する。
リスニングポート・アドレス
クライアント用途で利用するため、ポートをリッスンしないよう設定。
port 0
またリスニングアドレスもローカルのみとしておく
IPv6を無効化している場合はコメントアウトしておく。
bindcmdaddress 127.0.0.1
#bindcmdaddress ::1
サーバ設定
同期サーバ、ハード時刻調整、step時刻調整はクライアント設定と同様に。
リスニングポート・アドレス
サーバ用にポートを開放
port 123
参照制御
リモートクライアントからのアクセス制御。
chronyでは細かい権限の制御ではなく、ネットワーク単位レベルでのアクセス可否を設定する。
allow ${ntp_client_ip}
うるう秒設定
chronyはうるう秒の際の動作がデフォルトではstep動作になっているため、明示的に設定する。
leapsecmode slew
maxslewrate 1000
※chrony 2.1.1 よりパラメータの設定が可能
サーバの起動
設定完了後、時刻同期を開始します。
# systemctl start chronyd
同期状態の確認
# chronyc sources
# timedatectl