Linux 时间同步与 SELinux 深层防火墙
Linux 时间同步与 SELinux 深层防火墙
一、NTP 时间同步服务
1.1 什么是 NTP?
- NTP(Network Time Protocol):用于在网络中同步各计算机系统时间的协议。
- 重要性:
- 分布式系统一致性:避免日志混乱、数据写入顺序错误。
- 安全性保障:TLS/SSL、Kerberos 等依赖精确时间戳;防止重放攻击。
- 日志管理与故障排查:统一时间线便于跨服务器问题追踪。
1.2 NTP 同步原理
- 标准时间源:UTC(协调世界时),由原子钟、天文台、卫星或互联网提供。
- 层级结构(Stratum):
- Stratum 1:直接连接原子钟。
- Stratum 2+:逐级同步,最多支持到 Stratum 15。
1.3 国内稳定 NTP 服务器
- 推荐来源:http://www.ntp.org.cn/
- 常用国内 NTP 服务器:
ntp.org.cn(中国国家授时中心)ntp.aliyun.com(阿里云)ntp.tencent.com(腾讯云)
查看当前时间源
chronyc sources
*:当前使用的时间源+:候选源-:可用但未选中?:通信失败或无效
查看同步状态详情
chronyc tracking
关键字段:
- System time:本地时间与 NTP 时间偏差
- Stratum:当前时间源层级
- Root delay / dispersion:网络延迟与时间源精度
- Leap status:是否处于闰秒调整期
二、Chrony 时间同步服务
2.1 Chrony 特点
- 轻量高效,启动快
- 适合间歇联网设备(如笔记本、虚拟机)
- 支持快速同步与高精度场景
2.2 安装与基本配置
dnf install chrony -y
systemctl enable --now chronyd
配置文件:/etc/chrony.conf
默认关键配置项:
pool ... iburst:指定时间源,iburst加速初始同步makestep 1.0 3:前3次若偏差 >1秒,直接跳变时间rtcsync:启用系统时钟与硬件时钟(RTC)同步driftfile:记录时钟频率偏差,用于重启后快速校准
2.3 实战:局域网时间同步架构
需求:
- node1:可访问外网,作为内部 NTP 服务器
- node2、node3:仅主机模式,通过 node1 同步时间
- 开放
192.168.88.0/24访问权限 - 启用详细日志、硬件时钟同步
操作步骤:
在 node1 上:
- 修改
/etc/chrony.conf:# 注释默认 pool,新增国内源 pool ntp.org.cn iburst pool ntp.aliyun.com iburst pool ntp.tencent.com iburst # 允许局域网同步 allow 192.168.88.0/24 # 启用日志 log measurements statistics tracking - 重启服务并开放防火墙:
systemctl restart chronyd firewall-cmd --add-service=ntp --permanent firewall-cmd --reload
在 node2/node3 上:
- 修改
/etc/chrony.conf:# 注释默认 pool,指向 node1 pool 192.168.88.101 iburst - 重启服务:
systemctl restart chronyd - 验证:
chronyc sources
三、SELinux 深层防火墙
3.1 什么是 SELinux?
- Security-Enhanced Linux:基于强制访问控制(MAC)的安全机制。
- 超越传统 DAC(用户/组权限),通过策略规则限制进程行为。
- 即使程序被攻破,SELinux 也能限制其破坏范围。
比喻:你有房门钥匙(文件权限),但房东规定你只能待在客厅(SELinux策略)——即使有钥匙也不能进厨房。
3.2 SELinux 工作模式
| 模式 | 说明 |
|---|---|
Enforcing |
强制执行策略,拒绝违规操作 |
Permissive |
仅记录违规,不阻止(调试用) |
Disabled |
完全关闭 SELinux |
查看状态
sestatus
临时切换模式
setenforce 0 # Permissive
setenforce 1 # Enforcing
永久配置
编辑 /etc/selinux/config:
SELINUX=enforcing
需重启生效。
3.3 日志与排错
- 日志位置:
/var/log/audit/audit.log - 查询 AVC 拒绝记录:
ausearch -m avc - 自动生成策略建议:
audit2allow -a < /var/log/audit/audit.log
3.4 常用管理工具
| 命令 | 用途 |
|---|---|
semanage |
管理端口、文件上下文等策略 |
restorecon |
恢复文件默认 SELinux 上下文 |
chcon |
手动修改文件上下文(临时) |
sealert |
图形化分析 SELinux 错误 |
示例:恢复文件上下文
restorecon /path/to/file
总结:
- 时间同步是分布式系统稳定运行的基石,推荐使用
chrony+ 国内 NTP 源。- SELinux 是 Linux 的“安全保险”,不应轻易禁用,而应学会通过日志和工具正确配置。

浙公网安备 33010602011771号