0

现在我正在使用 nginx 关闭来自未知主机的连接并返回 444“无响应”

如何使用 nginx 前面的 haproxy 实现相同的效果(节省 haproxy 和 nginx 之间的额外步骤)

当前的 nginx 配置:

server {
  # Close connection for unrecognized hosts (444 no response)
  listen 80 default_server;
  listen [::]:80 default_server;

  return 444;
}
4

2 回答 2

0

Ejez 您可以接受来自已知 IP 的连接是 haproxy 前端特定 IP 的块连接。

参考代码:

  • 允许已知IP
acl network_allowed src 20.30.40.50 20.30.40.40
use_backend allowed_backend if network_allowed

或者

  • 仅阻止某些IP
acl is-blocked-ip src 192.0.2.11 192.0.2.12 192.0.2.18
http-request deny if is-blocked-ip

参考:

于 2019-08-05T07:00:31.447 回答
0

这可以使用“静滴”来实现

acl host_example req.hdr(host) -i example.com
http-request silent-drop if not host_example

https://cbonte.github.io/haproxy-dconv/2.0/configuration.html#4.2-http-request%20silent-drop https://www.haproxy.com/blog/introduction-to-haproxy-acls/#使用 acls 来阻止请求

于 2019-08-06T02:22:56.127 回答