我们的网络规模庞大,服务器众多。找到所有面向互联网的服务器最简单的方法是什么?手动检查每台服务器不是一种选择。
答案1
- 针对所有地址空间从外部运行 nmap?
- 检查防火墙/边界设备上设置的规则,了解允许的内容。
- 监控防火墙/边界设备上的流量一段时间,看看正在访问什么?
您可能应该执行上述所有操作,一旦找到结果,就将其添加到您的文档中,该文档将被保留。一旦找到上述结果,您将深入挖掘,并检查允许的流量是否流向某种代理设备或以其他方式允许流量流向其他设备。
答案2
我会检查我的 CMDB 或其他文档。
如果做不到这一点,您必须定义“面向互联网”(仅响应入站请求?可以自行访问互联网?)...然后检查每一个。也不能从外部进行检查。如果您有一个指向 LB 集群的公共 DNS 名称,并且该集群后面有 30 台服务器,该怎么办?从外部看,您永远无法分辨您访问了哪个服务器,除非服务器以某种方式将其名称放入应用程序有效负载中 - 通过 HTTP,这可能是一个 X-header。虽然如果这样做可能不是一个好主意。
如果您有一个可以捕获所有互联网流量的单一设备,您可以解析日志,但这只会告诉您哪些服务器进行了交谈,它会错过在日志时间范围内未被访问的任何服务器。
答案3
如果您不只是想弄清楚如何闯入他人的网络,那么通过收集以下信息您应该能够解决问题:
您至少应该知道哪些设备通过某种方式与互联网有物理连接,并且最好知道一些受控的入口点(一个或多个防火墙)。查看这些配置可能会有所帮助。
您应该能够找到分配给您网络的公共 IP 地址 - 这是需要检查的其他地方。对这些公共和内部 IP 地址进行反向 DNS 查找应该会提供一些线索。
您的网络上是否使用了 NAT?如果是,那么您一定在某处将来自互联网的流量通过 NAT 映射到服务器。请检查配置。
如果您只是想闯入网络,那么您可能会在其他论坛中找到更多帮助。