内容简介:本文风哥教程参考Linux官方文档、Red Hat Enterprise Linux官方文档、Ansible Automation Platform官方文档、Docker官方文档、Kubernetes官方文档和Podman官方文档等内容,详细介绍了相关技术的配置和使用方法。学习交流加群风哥微信: itpux-com
本文档
风哥提示:
总结Linux系统安全强化的核心知识和最佳实践。
Part01-安全强化要点
1.1 核心安全措施
1. 账户安全
– 禁用root远程登录
– 使用强密码策略
– 配置账户锁定
– 定期审查账户
2. SSH安全
– 使用密钥认证
– 禁用密码登录
– 配置端口敲门
– 启用双因素认证
3. 文件系统安全
– 设置合理权限
– 配置SELinux
– 加密敏感数据
– 监控文件完整性
4. 网络安全
– 配置防火墙
– 关闭不必要端口
– 配置网络隔离
– 监控网络活动
5. 服务安全
– 最小化服务
– 配置访问控制
– 启用加密通信
– 定期更新服务
6. 日志审计
– 配置日志记录
– 配置审计规则
– 集中日志管理
– 定期日志分析
7. 监控告警
– 配置实时监控
– 设置安全告警
– 监控关键指标
– 及时响应事件
8. 漏洞管理
– 定期漏洞扫描
– 及时安装补丁
– 评估漏洞风险
– 验证修复效果
9. 应急响应
– 制定应急预案
– 准备应急工具
– 定期演练
– 及时总结改进
10. 合规管理
– 了解合规要求
– 定期合规检查
– 记录合规状态
– 保持文档更新
Part02-安全加固脚本
2.1 一键安全加固
$ cat > /usr/local/bin/one-click-hardening.sh << 'EOF' #!/bin/bash LOG_FILE="/var/log/hardening.log" log() { echo "$(date): $1" | tee -a $LOG_FILE } hardening_password() { log "Configuring password policy..." cat > /etc/login.defs << 'POLICY' PASS_MAX_DAYS 90 PASS_MIN_DAYS 7 PASS_MIN_LEN 12 PASS_WARN_AGE 14 POLICY cat > /etc/security/pwquality.conf << 'POLICY' minlen = 12 minclass = 4 dcredit = -1 ucredit = -1 lcredit = -1 ocredit = -1 maxrepeat = 3 POLICY } hardening_ssh() { log "Configuring SSH..." cat > /etc/ssh/sshd_config << 'SSHCONFIG' Port 22 Protocol 2 PermitRootLogin no PasswordAuthentication no PubkeyAuthentication yes MaxAuthTries 3 MaxSessions 5 ClientAliveInterval 300 ClientAliveCountMax 2 X11Forwarding no SSHCONFIG systemctl restart sshd } hardening_firewall() { log "Configuring firewall..." systemctl start firewalld systemctl enable firewalld firewall-cmd --permanent --add-service=ssh firewall-cmd --reload } hardening_selinux() { log "Configuring SELinux..." sed -i 's/SELINUX=.*/SELINUX=enforcing/' /etc/selinux/config setenforce 1 } hardening_audit() { log "Configuring audit..." cat > /etc/audit/rules.d/hardening.rules << 'AUDIT' -w /etc/passwd -p wa -k identity -w /etc/shadow -p wa -k identity -w /etc/sudoers -p wa -k sudoers -w /var/log/secure -p wa -k logins AUDIT systemctl enable auditd systemctl start auditd } hardening_services() { log "Disabling unnecessary services..." for service in telnet rsh rlogin rexec; do systemctl disable $service 2>/dev/null
systemctl stop $service 2>/dev/null
done
}
hardening_network() {
log “Configuring network security…”
cat > /etc/sysctl.d/99-security.conf << 'SYSCTL' net.ipv4.ip_forward = 0 net.ipv4.conf.all.send_redirects = 0 net.ipv4.conf.all.accept_source_route = 0 net.ipv4.conf.all.accept_redirects = 0 net.ipv4.conf.all.log_martians = 1 net.ipv4.icmp_echo_ignore_broadcasts = 1 net.ipv4.tcp_syncookies = 1 SYSCTL sysctl -p /etc/sysctl.d/99-security.更多视频教程www.fgedu.net.cnconf } main() { log "Starting one-click hardening..." hardening_password hardening_ssh hardening_firewall hardening_selinux hardening_audit hardening_services hardening_network log "One-click hardening completed!" } main EOF chmod +x /usr/local/bin/one-click-har更多学习教程公众号风哥教程itpux_comdening.sh # 执行一键加固 $ sudo /usr/local/bin/one-click-hardening.sh
Part03-安全检查清单
3.1 定期安全检查
$ cat > /etc/security/security-checklist.txt << 'EOF' [每日检查] - 查看登录日志 - 检查系统负载 - 查看磁盘空间 - 检查服务状态 [每周检查] - 检查安全更新 - 分析安全日志 - 检查备份状态 - 审查用户账户 [每月检查] - 执行漏洞扫描 - 检查安全基线 - 审查权限设置 - 更新安全文档 [每季度检查] - 全面安全审计 - 渗透测试 - 应急演练 - 安全培训 [年度检查] - 安全策略审查 - 合规性评估 - 风险评估 - 安全规划 EOF # 创建安全检查脚本 $ cat > /usr/local/bin/daily-security-check.sh << 'EOF' #!/bin/bash LOG_FILE="/var/log/daily-security.log" log() { echo "$(date): $1" >> $LOG_FILE
}
check_logins() {
log “Checking login activity…”
grep “Failed password” /var/log/secure | tail -10 >> $LOG_FILE
}
check_system() {
log “Checking system status…”
uptime >> $LOG_FILE
df -h >> $LOG_FILE
free -m >> $LOG_FILE
}
check_services() {
log “Checking services…”
systemctl list-units –state=failed >> $LOG_FILE
}
check_updates() {
log “Checking for updates…”
dnf check-update –security >> $LOG_FILE 2>&1
}
main() {
log “=== Daily Security Check ===”
check_logins
check_system
check_services
check_updates
log “=== Check Completed ===”
}
main
EOF
chmod +x /usr/local/bin/daily-security-check.sh
# 配置每日检查
$ cat > /etc/cron.daily/security-check << 'EOF'
#!/bin/bash
/usr/local/bin/daily-security-check.sh
EOF
chmod +x /etc/cron.daily/security-check
Part04-安全最佳实践
4.1 安全管理建议
1. 安全意识
– 定期安全培训
– 提高安全意识
– 遵守安全策略
– 及时报告问题
2. 安全流程
– 变更管理流程
– 访问审批流程
– 应急响应流程
– 安全审计流程
3. 安全工具
– 漏洞扫描工具
– 入侵检测工具
– 日志分析工具
– 监控告警工具
4. 安全文档
– 安全策略文档
– 操作手册文档
– 应急预案文档
– 审计报告文档
5. 安全团队
– 明确职责分工
– 建立沟通机制
– 定期安全会议
– 持续技能提升
# 安全加固总结
1. 预防为主
– 及时更新补丁
– 配置安全基线
– 最小权限原则
– 纵深防御策略
2. 监控为辅
– 实时监控系统
– 及时发现异常
– 快速响应事件
– 持续改进安全
3. 持续改进
– 定期安全评估
– 分析安全事件
– 优化安全措施
– 更新安全策略
1. 建立安全意识
2. 遵循安全流程
3. 使用安全工具
4. 保持文档更新
5. 持续改进安全
本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html
