Linux

為什麼 NTP 守護程序一直在偵聽 UDP6?

  • February 12, 2016

我有一個乾淨的 Debian 7 安裝,我在 /etc/ntp.conf 中手動輸入了以下幾行:

interface ignore wildcard
interface listen <local_nic_ip>

希望 NTP 將不再監聽 UDP6,但重新啟動後,它仍然會:

5:udp        0      0 <local_nic_ip>:123       0.0.0.0:*                           9172/ntpd       
6:udp        0      0 127.0.0.1:123           0.0.0.0:*                           9172/ntpd       
8:udp6       0      0 ::1:123                 :::*                                9172/ntpd

NTP 的命令行沒有顯示異常:

/usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 121:130

如何阻止 NTP 監聽該 UDP6 埠?

我已經能夠通過這種方式在我的 Debian 5/6/7 和 Ubuntu 12.04 上為 NTP 禁用 IPv6:

編輯文件/etc/default/ntp並替換

NTPD_OPTS='-g'

經過

NTPD_OPTS='-4 -g'

然後,您可以將指令保留在 中ntp.conf,它們不會被忽略:

interface ignore wildcard
interface listen <local_nic_ip>
  • 沒有interface ignore wildcardNTP 也會監聽0.0.0.0
  • 沒有interface listen <local_nic_ip>NTP 只會監聽 127.0.0.1(當然)

這將導致:

# netstat -anp | grep :123
udp    0      0 192.168.0.38:123     0.0.0.0:*                 2901/ntpd
udp    0      0 127.0.0.1:123        0.0.0.0:*                 2901/ntpd

另外,我確認OpenNTPD在您要求他更友好地聽的地方聽(無需編輯多個配置文件)。預設情況下,除非您將其配置為這樣做(非常安全);)

在配置文件中,只需取消註釋行

listen on 127.0.0.1

並添加行

listen on <local_nic_ip>

結果是 :

# netstat -anp | grep :123
udp   0    0 192.168.0.38:123     0.0.0.0:*                 8581/ntpd
udp   0    0 127.0.0.1:123        0.0.0.0:*                 8581/ntpd

引用自:https://serverfault.com/questions/573351