需求:
- 升级linux内核版本,修复SACK Panic”远程DoS漏洞
- 安装nscd,提升RDS响应速度
说明:
漏洞描述:
Linux 以及 FreeBSD 等系统内核上存在严重远程DoS漏洞,攻击者可利用该漏洞构造并发送特定的 SACK 序列请求到目标服务器导致服务器崩溃或拒绝服务。
目前已知受影响版本如下:
• FreeBSD 12(使用到 RACK TCP 协议栈)
• CentOS 5(Redhat 官方已停止支持,不再提供补丁)
• CentOS 6
• CentOS 7
• Ubuntu 18.04 LTS
• Ubuntu 16.04 LTS
• Ubuntu 19.04
• Ubuntu 18.10
各大Linux发行厂商已发布内核修复补丁,详细内核修复版本如下:
• CentOS 6 :2.6.32-754.15.3
• CentOS 7 :3.10.0-957.21.3
• Ubuntu 18.04 LTS :4.15.0-52.56
• Ubuntu 16.04 LTS:4.4.0-151.178
修复建议:
➤【CentOS 6/7 系列用户】
注:截止文章发布,CentOS官方暂未同步内核修复补丁到软件源,建议用户及时关注补丁更新情况并开展相应升级工作。升级方式如下:
- yum clean all && yum makecache,进行软件源更新;
- yum update kernel -y,更新当前内核版本;
- reboot,更新后重启系统生效;
- uname -a,检查当前版本是否为上述【安全版本】,如果是,则说明修复成功。
➤【Ubuntu 16.06/18.04 LTS 系列用户】
- sudo apt-get update && sudo apt-get install linux-image-generic,进行软件源更新并安装最新内核版本;
- sudo reboot,更新后重启系统生效;
- uname -a,检查当前版本是否为【安全版本】,如果是,则说明修复成功。
如果用户不方便重启进行内核补丁更新,可选择临时缓解方案:
运行如下命令禁用内核 SACK 配置防范漏洞利用:
sysctl -w net.ipv4.tcp_sack=0
NSCD服务:
https://help.aliyun.com/knowledge_detail/41806.html
NSCD(Name Service Cache Daemon)是一种能够缓存passwd、group、hosts的本地缓存服务。若您使用短连接的方式连接RDS,请在与RDS相连的ECS实例上进行如下操作开启NSCD,提升RDS响应速度。
思路:
- 编写Shell脚本
- Ansible分发脚本
- Ansible执行脚本
- 验证脚本执行情况
- 分批重启主机
实现:
Shell脚本:
1 | vim /data/vcg/zhy/ansible/0623.sh |
分发脚本
1 | ansible pre-k8s -m copy -a "src=/data/vcg/zhy/ansible/0623.sh dest=/tmp/0623.sh mode=755" |
执行脚本
1 | ansible pre-k8s -m shell -a "/tmp/0623.sh" |
验证脚本执行情况
1 | ansible pre-k8s -m shell -a "cat /etc/resolv.conf |grep options" |
分批重启主机
1 | 脚本内容: |