| ➔ | 操作系统安全补丁管理是服务器运维中最基础但最重要的工作之一。据统计,超过60%的安全漏洞是由于未及时安装补丁导致的。本文介绍Fedora 30系统的更新策略与最佳实践。 |
▶一、为什么要及时更新?
- ●修复已知安全漏洞(CVE),如OpenSSL漏洞、内核漏洞等
- ●提升系统稳定性和兼容性
- ●获得最新的功能和安全特性
- ●满足等保合规要求
▶二、手动更新方法
code
# 检查可用更新
yum check-update
# 执行系统更新
yum update -y
# 查看更新历史
▶三、自动安全更新配置
对于生产环境,建议开启自动安全更新,只自动安装安全补丁:
code
yum install -y yum-cron && systemctl enable yum-cron
▶四、更新策略与注意事项
生产环境更新策略:
- ●先在测试环境验证更新兼容性
- ●业务低峰期执行更新(如凌晨)
- ●重要系统先创建快照或备份
- ●分批更新(先更新少量服务器)
- ●保留最近2个内核版本,防止回滚问题
▶五、回滚操作
code
# CentOS/RHEL回滚
yum history
yum history undo ID
# Ubuntu/Debian回滚
cat /var/log/apt/history.log
# 内核回滚
grub2-set-default '旧内核名称'
grub2-mkconfig -o /boot/grub2/grub.cfg
reboot
▶六、内核安全参数优化
code
# 除更新外,内核参数也能提升安全性
cat >> /etc/sysctl.d/99-security.conf << 'EOF'
# 防止IP欺骗
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.rp_filter = 1
# 禁用IP转发
net.ipv4.ip_forward = 0
# 禁用心跳检测
net.ipv4.tcp_timestamps = 0
# 限制内核日志访问
kernel.dmesg_restrict = 1
# 限制ptrace
kernel.yama.ptrace_scope = 1
# 启用地址空间布局随机化
kernel.randomize_va_space = 2
# TCP SYN Cookie防护
net.ipv4.tcp_syncookies = 1
# 忽略ICMP重定向
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.all.secure_redirects = 0
# 忽略ICMP Echo广播
net.ipv4.icmp_echo_ignore_broadcasts = 1
# 禁用source route
net.ipv4.conf.all.accept_source_route = 0
EOF
sysctl --system
▶七、更新自动化脚本
code
#!/bin/bash
# /usr/local/bin/update-check.sh
# 自动检查并报告更新状态
echo "===== 系统更新检查 ====="
echo "检查时间: $(date)"
echo ""
echo "--- 安全更新 ---"
yum updateinfo list security 2>/dev/null | head -20
# 或 Ubuntu: apt list --upgradable 2>/dev/null | grep security
echo ""
echo "--- 内核版本 ---"
uname -r
echo ""
echo "--- 系统运行时间 ---"
uptime
echo ""
echo "--- 需要重启?---"
if [ -f /var/run/reboot-required ]; then
echo "需要重启以完成更新!"
cat /var/run/reboot-required
else
echo "无需重启"
fi
▶八、CVE监控与应急响应
- ●订阅CVE邮件列表(如Ubuntu USN、CentOS Errata)
- ●配置yum-utils或apt-listchanges查看更新详情
- ●关注重要CVE评分(CVSS 7+需优先处理)
- ●在紧急漏洞(如Log4j、OpenSSL心脏出血)发生时立即响应
- ●建立应急预案:先临时缓解(防火墙规则封禁),再彻底修复