首页 > 解决方案 > 乘客中奇怪的公共监听端口

问题描述

我们正在运行 Apache 乘客模块(乘客 6.0.4,Apache 2.4.18),从乘客 6 开始,所有打开的机器都为乘客启动的每个进程随机分配更高的端口。我正在使用它来运行 ruby​​ on rails 应用程序,并将 ruby​​ 2.3.1 与 rbenv 版本切换器和 rails 4.2.9 一起使用。

即:我们有两个由乘客启动的 App 实例:

~# passenger-status
Version : 6.0.4
Date    : Wed Oct 23 09:55:45 +0200 2019
Instance: wCqrhk9f (Apache/2.4.18 (Ubuntu) Phusion_Passenger/6.0.4)

----------- General information -----------
Max pool size : 20
App groups    : 1
Processes     : 2
Requests in top-level queue : 0

----------- Application groups -----------
/var/www/app/current (production):
  App root: /var/www/app/current
  Requests in queue: 0
  * PID: 8514    Sessions: 0       Processed: 1       Uptime: 15m 37s
    CPU: 0%      Memory  : 98M     Last used: 15m 37s ago
  * PID: 8533    Sessions: 0       Processed: 0       Uptime: 15m 37s
    CPU: 0%      Memory  : 93M     Last used: 15m 37s ago

此外,乘客还立即开放了两个港口:

~# netstat -tulpen | grep current
tcp        0      0 0.0.0.0:32840           0.0.0.0:*               LISTEN      1000       492133765   8533/current (forki
tcp        0      0 0.0.0.0:41487           0.0.0.0:*               LISTEN      1000       492133704   8514/current (forki

我使用 tcpdump 和 curl 分析了这些端口,以找出它们的优点,但是如果我可以信任 tcpdump,则不会有流量通过这些端口,当我向端口发送 curl 时,我会得到 HTTP/1.1 答案有 400 错误。

我想知道这些端口有什么用,是否有可能建议乘客不要打开它们,或者如果有必要,只在 127.0.0.1 打开它们。

希望这里的任何人都有一个想法:)

标签: passenger

解决方案


推荐阅读