Linux下构建NTP时间服务器
前言:
最开始要开启两台虚拟机,一台作为客户端,一台作为服务端!!!
NTP服务器是用于局域网服务器时间同步使用的,可以保证局域网所有的服务器与时间服务器的时间保持一致,某些应用对时间实时性要求高的必须统一时间。
互联网的时间服务器也有很多,例如ntpdate ntp.fudan.edu.cn 复旦大学的NTP免费提供互联网时间同步。
NTP服务器监听端口为UDP的123
,那就需要在本地防火墙开启运行客户端访问123端口,vi /etc/sysconfig/iptables
添加如下规则:
-A INPUT -m state --state NEW -m udp -p udp --dport 123 -j ACCEPT
关闭防火墙命令:
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
关闭Selinux软件服务:
setenforce 0 临时关闭
sestatus 查看selinux的状态,为disable就ok啦
永久关闭如下
:
[root@localhost ~]# ll /etc/selinux/config
-rw-r--r--. 1 root root 543 5月 26 2020 /etc/selinux/config //selinux文件存在
[root@localhost ~]# vi /etc/selinux/config //更改配置信息
[root@localhost ~]# reboot //重启机器生效
安装时间服务器ntp
yum install ntp*-y
查看安装该服务是否成功,这里是配置文件带.conf的后缀,
修改ntp.conf配置文件
cp /etc/ntp.conf /etc/ntp.conf.bak
vi /etc/ntp.conf ,然后进入文件清空该文件的所有内容
然后粘贴进去我们要写入的内容
以下是ntp服务器配置文件内容(局域网NTP,如果需要跟外网同步,添加外网server即可)
driftfile /var/lib/ntp/drift
restrict default kod nomodify notrap nopeer noquery
restrict -6 default kod nomodify notrap nopeer noquery
restrict 127.0.0.1
restrict -6 ::1
server pool.ntp.org //和上一级进行同步
server 127.127.1.0 # local clock//(本级进行同步)
fudge 127.127.1.0 stratum 10 //优先和本级进行同步
includefile /etc/ntp/crypto/pw //引用密码文件
keys /etc/ntp/keys
下面是参数详解:
restrict default ignore | # 关闭所有的 NTP 要求封包 |
---|---|
restrict 127.0.0.1 | # 开启内部递归网络接口 lo |
restrict 192.168.0.0 mask 255.255.255.0 nomodify | #在内部子网里面的客户端可以进行网络校时,但不能修改NTP服务器的时间参数。 |
server 198.123.30.132 | #198.123.30.132作为上级时间服务器参考 |
restrict 198.123.30.132 | #开放server 访问我们ntp服务的权限 |
driftfile /var/lib/ntp/drift | 在与上级时间服务器联系时所花费的时间,记录在driftfile参数后面的文件内 |
broadcastdelay 0.008 | #广播延迟时间 |
使用systemctl restart ntpd.service重启ntp服务
查看状态的两种方式
使用命令:
systemctl status ntpd.service
或者使用命令:
ps -ef |grep ntp
查看监听端口号
服务器端已经完成!!!!
接下来我们对客户端进行同步
检查当前ntp服务器的一个情况
使用:
ntpq -p
在客户端操作(ntpdate只能在客户端使用)
如果ntpdate命令不能操作,则安装
使用命令:ntpdate 服务端ip
date
是查看当前时间的命令
linux任务计划
crontab只能在客户端安装
当我们装任何东西都装不了的时候,查看一下我们的yum源
cd /etc/yum.repos.d
发现我们的源文件都消失了
然后使用命令(该命令为远程拷贝的意思)
scp -r root@服务器ip:/etc/yum.repos.d/* .
然后我们再一次查看,结果如下
我们查看以下cron
那么这三个软件放哪里呢?
使用命令
rpm -ql crontabs
再查看cronie
计划目录配置目录是/var/spool/cron
/etc/crontab
是配置文件
接下来我们进入/var/spool/cron目录下去编辑root文件
crontab是一个管理工具,可以认为是一个管理 的命令
我们也
可以使用crontab -e
来编辑
计划目录的格式:
时 分 日 月 星期 ntpdate 服务器ip
例如:6点到12点每隔两个小时运行这个脚本
0 6-12/2 * * * ntpdate 服务器ip
重启服务
使用命令:
service crond restart
使用which
找一个命令在哪里
构建时间服务器就到这里结束!!!