【发布时间】:2022-01-19 22:47:37
【问题描述】:
基于此post,haproxy 提供了缓解 acls 规则,可用于帮助对抗 log4j 攻击请求被代理到受影响的 log4j 应用程序。
在阅读一些用户 cmets 时,我注意到许多企业 Linux Haproxy 系统可能正在运行没有 option http-buffer-request 指令的旧版 haproxy 1.5。该指令对于您尝试缓解的任何 CVE 都至关重要,如果这是您在升级受影响的应用程序之前的唯一选择,则更是如此。
最简单的升级方法是什么?升级到什么版本?
回答我自己的问题...
需要 Haproxy 1.6,但是 RH 从 RHSCL repo 提供了 haproxy 1.8
确保这些存储库在系统上处于活动状态并安装 haproxy1.8
subscription-manager repos --enable=rhel-7-server-optional-rpms --enable=rhel-7-server-rpms --enable=rhel-server-rhscl-7-rpms
yum install -y rh-haproxy18.x86_64
将当前配置放入 1.8 cfg 文件并运行快速测试配置
cat /etc/haproxy/haproxy.cfg > /etc/opt/rh/rh-haproxy18/haproxy/haproxy.cfg
/opt/rh/rh-haproxy18/root/usr/sbin/haproxy -c -V -f /etc/opt/rh/rh-haproxy18/haproxy/haproxy.cfg
^ 纠正任何警告或警报错误,根据我的经验,它主要是指令命令或检查后端服务上的端口字符串。这在网上搜索和纠正相对简单
nano /etc/opt/rh/rh-haproxy18/haproxy/haproxy.cfg
添加 ACLS 规则,如果在 cfg 中使用多个侦听器/前端,请使用唯一名称,以免它们重叠
systemctl disable --now haproxy && systemctl enable --now rh-haproxy18-haproxy
yum remove -y haproxy && yum install -y rh-haproxy18-haproxy-syspaths.x86_64
^ rh-haproxy18-haproxy-syspaths.x86_64 包替换了 haproxy 服务名称,因此如果您使用它来监控 haproxy 服务,则无需更新 systemctl 脚本甚至 keepalived
我在 keepalived 中使用它,它在之前和之后都有效
killall -0 haproxy
【问题讨论】:
-
我也很好奇haproxy提供的acls规则是否尽可能准确?
标签: proxy log4j redhat haproxy cve-2021-44228