有没有可行的方法来查找我的 Linux 服务器正在联系的 IP 地址/服务器?

有没有可行的方法来查找我的 Linux 服务器正在联系的 IP 地址/服务器?

我的客户过于热心的 IT 管理员向我提出了一个请求,要求我提供我部署的服务器箱(物理)使用的所有服务器/端口。

它正在运行 debian jessie,但是这应该不是重点。

我们要清楚:他们将阻止我未指定的所有内容,包括安全 apt 更新、NTP 时间同步等。

我已经在谷歌上搜索了一些内容(花了几个小时),但一无所获。

那么,除了抓取一个月内来自该盒子的所有流量之外,还有其他可行的方法来找到所请求的信息吗?

答案1

这实际上取决于您的服务器如何配置。

一个例子是,如果您使用公共 ntp 服务器池(如 0.ca.pool.ntp.org)来同步时间,您会发现您的服务器联系域名解析为的几个 IP 地址,目标端口为 123。

您需要手动解析该地址并将其添加到您允许出站连接的 IP 地址列表中。

要获取与其绑定的进程的所有当前已建立的连接,可以使用以下命令。

~# ss -anp
Netid     State       Recv-Q      Send-Q                                        Local Address:Port                                 Peer Address:Port
tcp       LISTEN      0           5                                                   x.x.x.x:xxxx                                      0.0.0.0:*              users:(("nrpe",pid=xxx,fd=4))

这将告诉您 X 进程已连接到 Y 端口上的 xxxx IP 地址,这样您就知道哪个应用程序需要访问哪个范围的 IP 地址。使用此列表,您可以添加需要允许的地址。

据我所知,没有优雅的方法可以做到这一点,您需要收集零碎的数据来形成它。

相关内容