NTPdは、デフォルトではUDPポート123(すべてのIPアドレス)で待機します。これはサーバー時間を更新するだけで必要ですか?
アドレスをリッスンする必要がある場合、どの単一のアドレスを使用する必要がありますか?リッスンできるアドレスは次のとおりです。
Localhost(127.0.0.1と:: 1)をリッスンする必要があるのはなぜですか?そのアドレスでサーバーに到達することはできません。
NTPdを単一のアドレスにバインドするには、-I
オプションを使用できます。私のDebianボックスでは、/etc/default/ntp
を編集し、-g
を次のように置き換える必要がありました。
-g -I 1.2.3.4 -I 127.0.0.1
これにより、NTPdはパブリックアドレス1.2.3.4(自分のアドレスで置き換える)および127.0.0.1でリッスンします。
ローカルボックスでクエリを実行する場合は、localhostをリッスンすることは理にかなっています。たとえば、ntpq -p localhost
は、ローカルボックスで実行されているntpサービスを照会します。
一般的に、ntpdは、更新を送受信するために必要なすべての実際のアドレスをリッスンする必要があります。 ipv6を実行している場合は、ipv6アドレスもリストする必要があります。そうでない場合は、実サーバーのIPアドレスとipv4 localhostをリストします。
Ntpdはリッスンアドレスの構成をサポートしていないため、現地時間を更新するだけの場合は、おそらくサーバーへのアクセスを制限する必要があります。
最初に設定するのは、デフォルトのポリシーです。後で有効にされていないすべての通信をブロックすることもできますが、制限はクライアントとサーバーの両方で機能することに注意してください。
restrict default ignore
# Allow access to localhost
restrict 127.0.0.1
restrict IP.OF.UPSTREAM.SERVER
または、デフォルトで時間の交換を許可し、ローカルホストに対してのみサーバーへのクエリを許可することもできます。
restrict -4 default kod notrap nomodify nopeer noquery
restrict 127.0.0.1
また、ntpdは、-Iスイッチを介して実行するインターフェースを選択できます。 Debianを実行している場合は、その-Iスイッチを/ etc/defaults/ntpdのNTPD_OPTS変数に追加するだけです。
ntpd -I eth0