3、生产离线安装ntp服务器

一、修改系统时间

#查看时区,不是则修改
[root@10-121-2-96 opt]# timedatectl set-timezone Asia/Shanghai


#禁用系统中的网络时间协议(NTP)同步
[root@10-121-2-96 opt]# timedatectl set-ntp no

#手动修改
[root@10-121-2-96 opt]#  timedatectl set-time "2024-05-10 16:39:00"

#查看时间
[root@NTPSERVER ~]# date
2024年 05月 10日 星期五 16:39:03 CST

二、下载ntp的rpm包

#下载ntp
wget http://rpmfind.net/linux/centos/7.9.2009/os/x86_64/Packages/ntp-4.2.6p5-29.el7.centos.2.x86_64.rpm

#下载ntp依赖
wget -c http://rpmfind.net/linux/centos/7.9.2009/os/x86_64/Packages/autogen-libopts-5.18-5.el7.x86_64.rpm

#下载ntp依赖
wget -c http://rpmfind.net/linux/centos/7.9.2009/os/x86_64/Packages/ntpdate-4.2.6p5-29.el7.centos.2.x86_64.rpm

三、部署ntp

rpm -ivh autogen-libopts-5.18-5.el7.x86_64.rpm
rpm -ivh ntpdate-4.2.6p5-29.el7.centos.2.x86_64.rpm
rpm -ivh ntp-4.2.6p5-29.el7.centos.2.x86_64.rpm

四、修改配置文件

#拷贝修改
cp /etc/ntp.conf.rpmnew  /etc/ntp.conf

#拷贝配置文件
[root@NTPSERVER ~]# grep -Ev "^#|^$" /etc/ntp.conf
driftfile /var/lib/ntp/drift
restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery
restrict 127.0.0.1 
restrict ::1
server 127.127.1.0
fudge 127.127.1.0 stratum 10
restrict 192.168.221.0 mask 255.255.255.0 nomodify notrap
restrict 0.0.0.0 mask 0.0.0.0 nomodify notrap noquery notrust
includefile /etc/ntp/crypto/pw
keys /etc/ntp/keys
disable monitor
logfile /var/log/ntpstats/ntpd.log    # 定义ntp日志目录
pidfile  /var/run/ntp.pid             # 定义pid路径
  • 配置文件详解
#记录系统时间与BIOS事件偏差的文件
driftfile /var/lib/ntp/drift

#允许IPV4和IPV6查询,拒绝修改
restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery

#放行本机localhost对NTP服务的访问,利用restrict 来管理权限控制
restrict 127.0.0.1 
restrict ::1

#设置服务器无法同步外网时间,就和本地系统时间同步
server 127.127.1.0
fudge 127.127.1.0 stratum 10

##允许192.168.221.0 网段服务器进行同步,拒绝其他服务器的同步
restrict 192.168.221.0 mask 255.255.255.0 nomodify notrap
restrict 0.0.0.0 mask 0.0.0.0 nomodify notrap noquery notrust

#用于在NTP服务器配置中包含指定路径下的密码文件
includefile /etc/ntp/crypto/pw

#用于指定NTP服务器应该读取的密钥文件的路径
keys /etc/ntp/keys

#禁用NTP服务器的监视器功能,使其不再主动提供性能和状态信息
disable monitor

# 定义ntp日志目录
logfile /var/log/ntpstats/ntpd.log  

# # 定义pid路径
pidfile  /var/run/ntp.pid            

五、配置防火墙

firewall-cmd --zone=public --add-port=123/udp --permanent #放行端口 firewall-cmd --reload                                     #刷新防火墙策略

#放行服务
firewall-cmd --permanent --add-service=ntp
firewall-cmd --reload
firewall-cmd --list-all

#关闭防火墙
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux #c重启生效 
#临时关闭(下次开机,防火墙自启动)
systemctl stop firewalld

#查看防火墙状态
systemctl status firewalld

#永久关闭防火墙(开机时,不再启动防火墙)
systemctl disable firewalld
#常用命令
#查看版本
firewall-cmd --version
#查看帮助
firewall-cmd --help
#显示状态
firewall-cmd --state
#查看所有打开的端口
firewall-cmd --zone=public --list-ports
#更新防火墙规则
firewall-cmd --reload
#查看区域信息
firewall-cmd --get-active-zones
#查看指定接口所属区域
firewall-cmd --get-zone-of-interface=eth0
#拒绝所有包
firewall-cmd --panic-on
#取消拒绝状态
firewall-cmd --panic-off
#查看是否拒绝
firewall-cmd --query-panic
#查询指定端口是否已开
firewall-cmd --query-port=3306/tcp
#移除指定端口
firewall-cmd --permanent --remove-port=3306/tcp

六、开机自启动

#禁止chronyd开机启动
systemctl disable chronyd.service

#启动
systemctl start ntpd 

#设置开机自启
systemctl enable ntpd 

#查看ntp状态 
systemctl status ntpd 
[root@NTPSERVER ~]# cat /usr/lib/systemd/system/ntpd.service
[Unit]
Description=Network Time Service
After=syslog.target ntpdate.service sntp.service

[Service]
Type=forking
EnvironmentFile=-/etc/sysconfig/ntpd
ExecStart=/usr/sbin/ntpd -u ntp:ntp $OPTIONS
PrivateTmp=true

[Install]
WantedBy=multi-user.target

注:每次重启NTP服务器之后大约要3-5分钟客户端才能与server建立正常的通讯连接,否则在客户端执行同步命令的时候将返回:no server suitable for synchronization found


七、客户端同步时间

wget http://blog.s135.com/attachment/200708/ntdate.tar.gz
tar zxvf ntpdate.tar.gz -c /usr/sbin/
rz 
rpm -ivh ntpdate-4.2.6p5-29.el7.centos.2.x86_64.rpm

#修改配置文件
[root@NTPSERVER ~]# grep -Ev "^#|^$" /etc/ntp.conf
driftfile /var/lib/ntp/drift
server 192.168.221.31 iburst 
restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery
restrict 127.0.0.1 
restrict ::1
includefile /etc/ntp/crypto/pw
keys /etc/ntp/keys
disable monitor
logfile /var/log/ntpstats/ntpd.log    # 定义ntp日志目录
pidfile  /var/run/ntp.pid             # 定义pid路径
systemctl start ntpd
systemctl enable ntpd
systemctl status ntpd
ss  -nlap | grep 123
# 查看ntp链接状态
[root@NTPSERVER ~]# ntpq -p

     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*LOCAL(0)        .LOCL.          10 l   10   64  377    0.000    0.000   0.000

> remote 	详细说明了我们连接到的NTP服务器。 # 本机和上层ntp的ip或主机名,“+”有连线可做候选,“*”正在使用的
> refid 	表示远程服务器连接的NTP服务器。	# 上一层服务器
> st 		指的是服务器的层级,指的是服务器离我们有多“近”(数字越低,越“近”,通常越好)。
> t 		表示类型,具体来说是服务器使用单播、广播、多播还是多播。
> when 	指的是距离上次轮询服务器的时间有多长。
> poll 	表明服务器将被轮询的频率,对于示例屏幕截图中的大多数条目,轮询时间为64秒。
> reach 	包含最近8次NTP更新的结果。如果所有8个都成功,这个字段将读取377。#这个数字是八进制的,正常情况下值为[0, 1, 3, 7, 17, 37, 77, 177, 377],对应的二进制为[0, 1, 11, 111, 1111, 11111, 111111, 1111111, 11111111],所以8个成功的八进制数将被表示为377。当您第一次在服务器上启动ntp守护进程时,这个数字可能需要一段时间才能达到377。
> delay 表示到达服务器的延迟时间,单位为毫秒。
> offset 指的是本地时钟和服务器时钟之间的差异。
> jitter 指的是remote和refid服务器之间的网络延迟。


######## 查看端口

[root@NTPSERVER ~]# netstat -anup | grep 123
udp        0      0 192.168.182.50:123      0.0.0.0:*                           2604/ntpd           
udp        0      0 127.0.0.1:123           0.0.0.0:*                           2604/ntpd           
udp6       0      0 ::1:123                 :::*                                2604/ntpd 

九、同步硬件时钟

ntp服务,默认只会同步系统时间。如果想要让ntp同时同步硬件时间,可以设置/etc/sysconfig/ntpd文件,
在/etc/sysconfig/ntpd文件中 添加【SYNC_HWCLOCK=yes】,就可以让硬件时间与系统时间一起同步。
允许BIOS与系统时间同步,也可以通过 hwclock -w 命令


十一、二进制部署ntp

1)解压部署

wget http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2.6.tar.gz
tar zxvf ntp-4.2.6.tar.gz
cd ntp-4.2.6
./configure --prefix=/usr/local/ntp --enable-all-clocks --enable-parse-clocks
make && make install
  • 编译如果报错没有c则安装gcc即可

2)修改配置

[root@NTPSERVER ~]# grep -Ev "^#|^$" /etc/ntp.conf
driftfile /var/lib/ntp/drift
restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery
restrict 127.0.0.1 
restrict ::1
server 127.127.1.0
fudge 127.127.1.0 stratum 10
restrict 192.168.221.0 mask 255.255.255.0 nomodify notrap
restrict 0.0.0.0 mask 0.0.0.0 nomodify notrap noquery notrust
includefile /etc/ntp/crypto/pw
keys /etc/ntp/keys
disable monitor
logfile /var/log/ntpstats/ntpd.log    # 定义ntp日志目录
pidfile  /var/run/ntp.pid             # 定义pid路径

3)启动

1)拷贝常用命令

#拷贝ntp
scp /usr/local/ntp/bin/*  /usr/sbin/
#手动重启
/usr/local/ntp/bin/ntpd -c /etc/ntp.conf -p /var/run/ntp.pid
#停止服务
root@jia-VMware-Virtual-Platform:~/ntp-4.2.6# ss  -nlap | grep ntp|grep -v 172.17.0.1|grep pid|head -n 2
u_dgr ESTAB  0      0                                                           * 47653                           * 12443 users:(("ntpd",pid=20674,fd=3))                                                                                                                                                                                                                                                          
udp   UNCONN 0      0                                              192.168.50.129:123                       0.0.0.0:*     users:(("ntpd",pid=20674,fd=19))       

#停止服务
kill 20674
mkdir -p /etc/sysconfig/
root@jia-VMware-Virtual-Platform:/usr/local/ntp/bin# cat /etc/sysconfig/ntpd
OPTIONS="-g"
---
cat << EOF > /usr/lib/systemd/system/ntpd.service
[Unit]
Description=Network Time Service
After=syslog.target

[Service]
Type=forking
EnvironmentFile=-/etc/sysconfig/ntpd
ExecStart=/usr/local/bin/ntpd -u ntp:ntp $OPTIONS
PrivateTmp=true

[Install]
WantedBy=multi-user.target
EOF
mkdir -p  /var/log/ntpstats/
mkdir -p /etc/ntp/keys
mkdir -p /etc/ntp/crypto/pw
systemctl stop  ntpd
systemctl start ntpd
systemctl status  ntpd
ss -nlap |grep ntp
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

烟雨话浮生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值