您的位置:首页 > 运维架构 > Linux

如何在 Linux/Unix 之上绑定 ntpd 到特定的 IP 地址 | Linux 中国

2018-02-18 00:00 781 查看

NTP 是网络时间协议的首字母简写,这是一个用来同步两台电脑之间时间的协议。ntpd 是一个操作系统守护进程,可以设置并且保证系统的时间与互联网标准时间服务器同步。-- Vivek Gite
本文导航◈ /etc/ntp.conf 之中的端口指令15%◈ 重启 ntpd46%◈ 校验59%编译自 | https://www.cyberciti.biz/faq/how-to-bind-ntpd-to-specific-ip-addresses-on-linuxunix/ 
 作者 | Vivek Gite
 译者 | ShuCheng默认的情况下,我们的 ntpd/NTP 服务器会监听所有的端口或者 IP 地址,也就是:
0.0.0.0:123
。 怎么才可以在一个 Linux 或是 FreeBSD Unix 服务器上,确保只监听特定的 IP 地址,比如 
localhost
 或者是 
192.168.1.1:123
 ?NTP 是网络时间协议Network Time Protocol的首字母简写,这是一个用来同步两台电脑之间时间的协议。ntpd 是一个操作系统守护进程,可以设置并且保证系统的时间与互联网标准时间服务器同步。NTP 使用 
/etc/directory
 之下的 
ntp.conf
 作为配置文件。/etc/ntp.conf 之中的端口指令你可以通过设置端口命令来防止 ntpd 监听 
0.0.0.0:123
,语法如下:
interface listen IPv4|IPv6|all


interface ignore IPv4|IPv6|all


interface drop IPv4|IPv6|all


上面的配置可以使 
ntpd
 监听那个地址或者不出来任何请求而直接丢弃。
ignore
 会防止打开匹配的地址,
drop
 会导致 ntpd 打开该地址并丢弃所有接收到的包,而不做任何检查。举个例子,如果要忽略所有端口之上的监听,加入下面的语句到 
/etc/ntp.conf
interface ignore wildcard


如果只监听 127.0.0.1 和 192.168.1.1 则是这样:
interface listen 127.0.0.1


interface listen 192.168.1.1


这是我 FreeBSD 云服务器上的样例 
/etc/ntp.conf
 文件:
$ egrep -v '^#|$^' /etc/ntp.conf


样例输出为:
tos minclock 3 maxclock 6


pool 0.freebsd.pool.ntp.org iburst


restrict    default limited kod nomodify notrap noquery nopeer


restrict -6 default limited kod nomodify notrap noquery nopeer


restrict    source  limited kod nomodify notrap noquery


restrict 127.0.0.1


restrict -6 ::1


leapfile "/var/db/ntpd.leap-seconds.list"


interface ignore wildcard


interface listen 172.16.3.1


interface listen 10.105.28.1


重启 ntpd在 FreeBSD Unix 之上重新加载/重启 ntpd:
$ sudo /etc/rc.d/ntpd restart


或者 在 Debian 和 Ubuntu Linux 之上使用下面的命令[1]:
$ sudo systemctl restart ntp


或者 在 CentOS/RHEL 7/Fedora Linux 之上使用下面的命令[1]:
$ sudo systemctl restart ntpd


校验使用 
netstat
 和 
ss
 命令来检查 ntpd 只绑定到了特定的 IP 地址:
$ netstat -tulpn | grep :123


或是:
$ ss -tulpn | grep :123


样例输出:
udp        0      0 10.105.28.1:123         0.0.0.0:*                           -              


udp        0      0 172.16.3.1:123          0.0.0.0:*                           -


在 FreeBSD Unix 服务器上使用 sockstat 命令[2]:
$ sudo sockstat


$ sudo sockstat -4


$ sudo sockstat -4 | grep :123


样例输出:
root     ntpd       59914 22 udp4   127.0.0.1:123         *:*


root     ntpd       59914 24 udp4   127.0.1.1:123         *:*


作者是 nixCraft 的创始人并且是一位经验丰富的系统管理员、DevOps 工程师,也是一名 Linux 操作系统和 Unix shell 脚本的训练师。他为全球不同行业,包括 IT、教育业、安全防护、空间研究和非营利性组织的客户工作。关注他的 Twitter[3], Facebook[4], Google+[5]。via: https://www.cyberciti.biz/faq/how-to-bind-ntpd-to-specific-ip-addresses-on-linuxunix/作者:Vivek Gite[7] 译者:Drshu 校对:wxy本文由 LCTT 原创编译,Linux中国 荣誉推出LCTT 译者

ShuCheng(Drshu) ? ?共计翻译:4 篇贡献时间:17 天
推荐文章< 左右滑动查看相关文章 >











点击图片、输入文章 ID 或识别二维码直达
原文链接请访问“原文链接”获得可点击的文内链接、全尺寸原图和相关文章。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: