我想加强我的安全性,所以我不想打开任何不需要的端口。我无意运行 ntp 服务器供其他人使用,我只运行 ntp 守护程序来保持本地时钟同步,所以我在 /etc/ntp.conf 中添加了以下两行:
interface ignore wildcard
interface listen lo
但在此之后,ntpd 似乎无法访问服务器,如下情况:
# ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
secondary.cleve .INIT. 16 - - 64 0 0.000 0.000 0.000
time.videxio.ne .INIT. 16 - - 64 0 0.000 0.000 0.000
ns0.luns.net.uk .INIT. 16 - - 64 0 0.000 0.000 0.000
rigel.retrosnub .INIT. 16 - - 64 0 0.000 0.000 0.000
europium.canoni .INIT. 16 - - 64 0 0.000 0.000 0.000
看起来配置使得 nptd 根本不使用这些接口,甚至不连接到其他服务器。
ntpd 是否需要监听外部接口才能同步时钟?
答案1
据我所知,忽略意味着不打开地址/端口,丢弃意味着打开但忽略所有流量(尽管它可能仍能使用它们)。所以是的,它似乎需要绑定接口。
参考:http://www.eecis.udel.edu/~mills/ntp/html/miscopt.html#interface
答案2
我喜欢推行“无防火墙安全”配置,即使我身处其中,因此当软件包不提供对接口绑定的控制时,我会感到沮丧。至少有一个替代方案(老的)http://www.openntpd.org/对于“经典” ntpd,http://support.ntp.org/bin/view/Support/AccessRestrictions有一个简短的建议迷宫,可以使用您最喜欢的查询进行测试(例如来自另一台主机的 ntpdate、来自 Nagios 插件套件的 check_ntp 等)。