Apache 在端口 443 上无响应的可能原因

Apache 在端口 443 上无响应的可能原因

背景:Google Cloud 上的 Debian Stretch amd64 服务器,使用 Apache 2.4.25。它通过 proxy_fcgi 到 PHP-FPM 运行基于 PHP 的网站。后端数据库是 PostgreSQL 10。Postgres 软件包已从官方 Postgres apt repo 安装,其他一切都是来自 Debian repos 的 vanilla。有一个端口 80 重定向到 443,带有 Let's Encrypt 证书。HTTP/2 和 Brotli 已启用。同一台服务器上还有一个到 Server-Sent Event 守护程序的反向代理(https://github.com/vgno/ssehub)。

服务器已经运行了 2 年多,但最近几个月出现了间歇性故障,网站停止响应请求。通常几分钟后就会恢复。我做了很多日志分析,似乎与服务器进程无关。CPU 使用率正常,内存使用率低,Apache、PostgreSQL、FPM、syslog、ssehub 的日志中没有出现错误。服务器还安装了 fail2ban,但也没有日志条目。我在 Apache 和 FPM 中加入了额外的诊断日志来检查需要很长时间处理的请求,但什么也没发现。

以下是 的输出iptables -L

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
f2b-sshd   tcp  --  anywhere             anywhere             multiport dports ssh
DROP       udp  --  anywhere             anywhere             udp dpt:l2f policy match dir in pol none
DROP       all  --  anywhere             anywhere             ctstate INVALID
ACCEPT     all  --  anywhere             anywhere             ctstate RELATED,ESTABLISHED
ACCEPT     udp  --  anywhere             anywhere             multiport dports isakmp,ipsec-nat-t
ACCEPT     udp  --  anywhere             anywhere             udp dpt:l2f policy match dir in pol ipsec
DROP       udp  --  anywhere             anywhere             udp dpt:l2f

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
DROP       all  --  anywhere             anywhere             ctstate INVALID
ACCEPT     all  --  anywhere             anywhere             ctstate RELATED,ESTABLISHED
ACCEPT     all  --  anywhere             anywhere            
ACCEPT     all  --  192.168.42.0/24      192.168.42.0/24     
ACCEPT     all  --  anywhere             192.168.43.0/24      ctstate RELATED,ESTABLISHED
ACCEPT     all  --  192.168.43.0/24      anywhere            
DROP       all  --  anywhere             anywhere            

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Chain f2b-sshd (1 references)
target     prot opt source               destination         
RETURN     all  --  anywhere             anywhere            

有什么建议可以说明可能的原因或我应该检查的内容吗?目前我能想到的唯一原因是网络拥塞,但这很难证明,因为这是一个间歇性问题,通常在我意识到并开始进行一些测试时就会解决。此外,Google Cloud 出现如此频繁的网络问题似乎令人惊讶。Google 是否有我不知道的某种流量整形策略?这是一个流量非常低的服务器,问题经常发生在几乎没有人使用该网站的非工作时间。

相关内容