CentOS7.9安全加固镜像制作流程梳理
1、先准备一台CentOS7.9虚拟机
准备虚拟机用于后面脚本的优化
(图片可放大查看)
确定好分区方案
(图片可放大查看)
2、yum update更新
- 先yum update 检查是否新的更新
- 完成后再yum check-upate
注意yum update 与yum upgrade的区别
(图片可放大查看)
是否删除原低版本内核的启动项 这个可以自行决定
(图片可放大查看)
3、YUM软件源配置
YUM源及EPEL源设置
4、常用软件包的安装
例如vim lrzsz bash-completion net-tools wget git
(图片可放大查看)
当然也可以加入排查需要的一些工具包nmap htop nmon iftop ncdu nethogs tcpdump
以上初始环境完成后,建议对该虚拟机做一下快照
因为下面编写安全加固脚本是一件很冗杂的事,需要初始环境作为沙盘来进行反复测试与验证加固脚本
5、编写安全加固脚本
脚本需要从诸如账号管理,口令策略,授权管理,服务管理,配置管理,网络管理,权限管理等多个角度提高CentOS Linux的安全性。
例如SSH的一些安全加固项
(图片可放大查看)
6、借助云厂商的基线检查自动化工具进行验证
上传安全加固脚本并执行
(图片可放大查看)
(图片可放大查看)
通过自动化基线检查不断完善加固脚本
(图片可放大查看)
(图片可放大查看)
脚本涉及加固项
- 1)、/etc/pam.d/sshd 中加入pam_tally2.so 设置多次登录失败锁定
- 2)、/etc/logrotate.conf中修改系统相关日志轮转及保留时间
- 3)、历史命令添加时间戳格式
- 4)、rsyslog日志转发到日志服务器
- 5)、SELINUX关闭
- 6)、umask值
- 7)、登陆超时时间设置TMOUT
等等,这里不详细列举了
总之你能想到的加固项越全面越好,可以集思广益,不断来完善脚本
我这边改写的脚本部分内容如下
代码语言:javascript复制#!/usr/bin/env bash
# Author: yuanfan
# Date: 2021-07-03
#sec_system.sh 系统加固脚本
export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
RGB_DANGER='