FC2に標準でインストールされているxNTPでタイムサーバーを構築します。ローカルエリア内のコンピューターの時刻を統一します。バージョンは ntp-4.2 です。
サーバーの時刻がくるうと様々な障害が発生します。例えば、ファイルのタイムスタンプやメールが時刻がずれるとややこしい事になることは容易に想像できます。また、サーバーログの時刻も狂います。crondなど定期的に走らせているプログラムにも影響がでます。内容によってはシステムに深刻な影響を与えかねません。
ここでは、FedoraCore2 でタイムサーバーを構築し、ローカルエリアに点在するクライアントに正確な時刻を提供するサーバーとしてセットアップを行いますが、サーバー自身もクライアントとして、どこぞの正確なタイムサーバーに問い合わせる必要があります。
サーバー、クライアント二つの側面を持つ事に留意します。
設定ファイルは以下になります。上から順に設定された内容が優先される事に注意して下さい。問い合わせ先タイムサーバーについては、検索して調べてみて下さい。近いタイムサーバーがベターです。
# 全てに対して接続を禁止する
restrict default ignore
# serverで指定した問合せを行うサーバーからの問合せを禁止します。
restrict 210.173.160.27 mask 255.255.255.255 nomodify notrap noquery
restrict 210.173.160.57 mask 255.255.255.255 nomodify notrap noquery
restrict 210.173.160.87 mask 255.255.255.255 nomodify notrap noquery
# オプション
# ignore
# 指定したサーバーからntpの問い合わせを無視します。
# nomodify
# 設定変更のパケットが届いた場合、無視します。
# noquery
# 時刻同期のパケットが届いた場合、無視します。
ntpによる時刻の同期はUDP123ポートを使って行われます。ファイアーウォールを有効にしている場合は、問い合わせ先に指定したサーバーへの接続と同期がとれるように該当するUDPポートを自動で開かれます。
Linuxをサーバーとして使っている場合は物理的に外部から同期をとれる事になるので、こちらへのサーバーへの問い合わせは許可しない設定になります。 xNTPの場合はinetdでもアクセス制限出来ます。
サーバーのゲートウェイが一般のブロードバンドルーターである場合、つまり、ルータがWANに接している環境では、一般のルーターのデフォルトのフィルタリング設定ではUDPポートを新たに開ける必要はありません。
# サーバー自身への問い合わせを許可します。
restrict 127.0.0.1
# 接続を許可するローカルネットワークを指定します。
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
# 同期を行うタイムサーバーを指定します。ドメインで指定出来ますが、
# DNS問い合わせのタイムラグを軽減するため、なるべくIPアドレスで指定する
# ようにします。
server 210.173.160.27
server 210.173.160.57
server 210.173.160.87
server 66.187.233.4
例ではjst.mfeedを指定しています。NTPサーバーでは有名ですが、自分のネットワークに近いサーバーが望ましいです。ping等でいろいろ計測して選ぶのもよいと思います。
# 上記サーバーとの同期が行えなかった場合は、自ホストへ問い合わせます。
fudge 127.127.1.0 stratum 10