https://www.jianshu.com/p/3960ee4b8a43
最近公司有服务器安全审计,针对所管服务器需要做加固处理,由于数量较多,一个个来弄比较麻烦。本着能用工具干活绝不自己动手的原则,开发此功能。
优势:秒级批量加固
前置条件:安装easyctl
版本支持:v0.7.12-alpha以上
加固内容参考文末说明文档
部分
适用平台:
CentOS7
CentOS6
暂未测试,理论上兼容,欢迎使用测试。git clone https://github.com/weiliang-ms/easyctl.git
cd easyctl
go build -ldflags "-w -s" -o /usr/local/bin/easyctl
chmod +x easyctl
mv easyctl /usr/local/bin
1.生成配置文件
$ easyctl harden os
INFO[0000] 生成配置文件样例, 请携带 -c 参数重新执行 -> config.yaml
2.调整配置
vi config.yaml
,调整以下参数
server
主机信息(用于做安全加固的主机)server:
- host: 10.10.10.[1:40] # 地址段
username: root
privateKeyPath: "" # ~/.ssh/id_rsa,为空默认走password登录;不为空默认走密钥登录
password: 123456
port: 22
excludes:
- 192.168.235.132 # 用于排除地址区间内的元素
3.执行加固
$ easyctl harden os -c config.yaml --debug
结果输出如下:
$ easyctl harden os -c config.yaml
[easyctl] localhost.localdomain | 2021-10-11T04:56:35-04:00 | info | [step 1] 禁ping
[easyctl] localhost.localdomain | 2021-10-11T04:56:35-04:00 | info | 解析server列表完毕!
[easyctl] localhost.localdomain | 2021-10-11T04:56:35-04:00 | info | 开始并行执行命令...
[easyctl] localhost.localdomain | 2021-10-11T04:56:35-04:00 | info | [192.168.109.137] 开始执行指令 -> shell content
[easyctl] localhost.localdomain | 2021-10-11T04:56:35-04:00 | info | <- 192.168.109.137执行命令成功...
| IP ADDRESS | CMD | EXIT CODE | RESULT | OUTPUT | EXCEPTION |
|-----------------|--------|-----------|---------|----------------------|-----------|
| 192.168.109.137 | ****** | 0 | success | net.ipv4.icmp_echo_i | |
[easyctl] localhost.localdomain | 2021-10-11T04:56:35-04:00 | info | [step 2] 关闭ICMP_TIMESTAMP应答
[easyctl] localhost.localdomain | 2021-10-11T04:56:35-04:00 | info | 解析server列表完毕!
[easyctl] localhost.localdomain