Linux 如何设置HAProxy以删除匹配查询字符串键值的连接?

Linux 如何设置HAProxy以删除匹配查询字符串键值的连接?,linux,centos7,haproxy,Linux,Centos7,Haproxy,我已经在Centos 7上安装了HAProxy 1.5.18 在/etc/haproxy/haproxy.cfg中,我有以下行: frontend free_api bind *:80 stats uri /haproxy?stats mode http option forwardfor acl key1 urlp(key) 12345 acl key2 urlp(key) 678

我已经在Centos 7上安装了HAProxy 1.5.18

/etc/haproxy/haproxy.cfg
中,我有以下行:

frontend free_api
        bind *:80
        stats uri /haproxy?stats
        mode http
        option forwardfor         
        acl key1 urlp(key) 12345
        acl key2 urlp(key) 6789

        http-request deny if key1
        http-request deny if key2

       # use_backend api if api
 default_backend api
现在,对匹配值为123456789的查询字符串键的URL访问被拒绝。HAProxy返回一个
403禁止
状态代码

我想要的是简单地断开连接,这样就不会向用户返回任何内容了?用HAProxy怎么做


谢谢。

使用haproxy v1.6及更高版本,以及指令
无声下降

http-request silent-drop if key1
“无声下降”:这将停止对规则的评估,并使 使用依赖于系统的方式,面向客户端的连接突然消失 它试图阻止客户端收到通知。当时的效果如何 客户端仍然可以看到已建立的连接,而没有连接 在HAProxy上。目的是达到与“柏油坑”相当的效果 只是它根本不使用机器上的任何本地资源 运行HAProxy。它可以承受比“柏油坑”更高的负荷,并且速度较慢 击倒更强的攻击者。了解使用 这个机制。放置在客户机和服务器之间的所有有状态设备 HAProxy(防火墙、代理、负载平衡器)也将保持 已建立连接很长时间,并且可能会受到此操作的影响。 在具有足够权限运行的现代Linux系统上,TCP\u 套接字选项用于阻止TCP重置的发射。另一方面 在系统中,套接字的TTL减少到1,这样TCP重置就不会发生 通过第一个路由器,尽管它仍然传送到本地网络。做 除非你完全了解它的工作原理,否则不要使用它


使用haproxy v1.6及更高版本,以及指令
无声下降

http-request silent-drop if key1
“无声下降”:这将停止对规则的评估,并使 使用依赖于系统的方式,面向客户端的连接突然消失 它试图阻止客户端收到通知。当时的效果如何 客户端仍然可以看到已建立的连接,而没有连接 在HAProxy上。目的是达到与“柏油坑”相当的效果 只是它根本不使用机器上的任何本地资源 运行HAProxy。它可以承受比“柏油坑”更高的负荷,并且速度较慢 击倒更强的攻击者。了解使用 这个机制。放置在客户机和服务器之间的所有有状态设备 HAProxy(防火墙、代理、负载平衡器)也将保持 已建立连接很长时间,并且可能会受到此操作的影响。 在具有足够权限运行的现代Linux系统上,TCP\u 套接字选项用于阻止TCP重置的发射。另一方面 在系统中,套接字的TTL减少到1,这样TCP重置就不会发生 通过第一个路由器,尽管它仍然传送到本地网络。做 除非你完全了解它的工作原理,否则不要使用它


谢谢这正是我需要的。落选的选民应该解释一下。这个答案是正确的。谢谢。这正是我需要的。落选的选民应该解释一下。这个答案是正确的。