为什么 UFW 阻止了一些允许的内部连接?

为什么 UFW 阻止了一些允许的内部连接?

我的设置是这样的:

  • 服务器 1 (192.168.1.1) - nginx (负载平衡) - Ubuntu 12.04 LTS
  • 服务器 2 - uwsgi - Debian 7.1
  • 服务器 3 - uwsgi - Debian 7.1

服务器 2 和服务器 3 上的 UFW 阻止了来自服务器 1 (nginx) 的某些请求,并在 nginx 错误日志中显示为“上游超时”。nginx 和 uwsgi 服务器之间的流量全部在专用网络上。

这是 uwsgi 服务器上的 UFW 设置:

Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing)
New profiles: skip

To                         Action      From
--                         ------      ----
Anywhere on eth1           ALLOW IN    Anywhere
Anywhere                   ALLOW IN    192.168.1.1
Anywhere (v6) on eth1      ALLOW IN    Anywhere (v6)

系统日志中的 UFW 块示例:

8 月 20 日 13:56:16 内核:[1028623.806318] [UFW BLOCK] IN=eth1 OUT= MAC=68:05:ca:17:c9:fb:68:05:ca:17:ca:0e:08:00 SRC=192.168.1.1 DST=192.168.1.103 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=54877 DF PROTO=TCP SPT=41652 DPT=8000 WINDOW=14600 RES=0x00 SYN URGP=0

如果我在 Uwsgi 服务器上禁用 UFW,nginx 中的超时就会停止。目前,超时/阻止主要是频繁的 AJAX 调用(每 2 分钟一次),但并非全部。

答案1

是的,我发现 UFW 阻止了来自 Nginx 服务器的无效数据包(我认为是错误的校验和)。不知道为什么会这样。我通过从 UFW 中的 before.rules 中删除丢弃无效数据包的规则解决了这个问题。网站再次快速运行。

相关内容