我被要求logging每个服务器上每个应用程序使用的每个端口。 有这个好的工具吗?

基本上我需要说服务器1,与ipaddress 1.2.3.4有Application1,并且networkingstream量使用端口100,101和103

由于许多这些服务器是在我开始在这里工作之前build立和设置的,而且以前的pipe理员没有任何文档,所以我希望可能有一个工具可以显示这些信息。

谢谢

更新那些问:Windows和Linux操作系统的虚拟和物理硬件。

我认为大多数端口扫描仪会做你想做的。 一个stream行的是nmap 。

Nmap(“networking映射器”)是一个用于networking发现和安全审计的免费和开源(许可证)实用程序。 许多系统和networkingpipe理员也发现它对networking清单,pipe理服务升级计划和监视主机或服务正常运行时间等任务很有用。 Nmap以新颖的方式使用原始IP数据包来确定networking上可用的主机,主机提供的服务(应用程序名称和版本),正在运行的操作系统(和操作系统版本),数据包filter/防火墙types正在使用中,以及其他几十个特征。 它旨在快速扫描大型networking,但对单个主机工作正常。 Nmap运行在所有主要的计算机操作系统上,官方的二进制包可用于Linux,Windows和Mac OS X.除了传统的命令行Nmap可执行文件,Nmap套件还包括一个高级GUI和结果查看器(Zenmap),一个灵活的数据传输,redirect和debugging工具(Ncat),一个用于比较扫描结果的工具(Ndiff)以及一个数据包生成和响应分析工具(Nping)。

我会笑,并说“不”,很可能。 正如评论中所提到的那样,nmap / netstat和端口扫描并不是一个完整的解决scheme,因为很多这些服务只在某些情况下或在某些时候才是有效的。

我能想到的唯一可靠的方法是通过检查每个服务器上的防火墙规则来查看哪些端口已打开,并将这些开放与服务关联起来。 当然,即使这不是一个完整的解决scheme – 它依赖于所有服务器都打开了防火墙,并假定一个开放的端口是开放的现有服务(而不是历史原因或默认configuration或configuration错误等) 。

不过,我可能会拒绝这个请求 – 这个信息似乎并不是特别有用,所以我认为这可能是非技术人员真正需要/需要不同的信息,而是要求错误或错误的方式。

编辑:

为了响应这个信息,这是一个新的防火墙,你需要让请求者重新修改他们的请求。 一个新的防火墙通常不涉及每个服务器上使用的每个服务和端口,它关心的是允许哪些服务和端口进出networking。 这可能是他们真正希望你发现的,而且比问题要容易得多。

在Windows中,您可以运行“netstat -a -n -o”以数字forms列出所有侦听端口,并将这些端口与进程匹配。

来自同一networking的nmap (中间没有防火墙)和本地检查(Unix / Linux上的jeoqwerty或lsof / netstat / others)的组合,检查正在启动的服务,检查安装的内容。

查看目标本地防火墙上打开的端口,检查“面向互联网”的防火墙的configuration,他们通过什么stream量到目标/离开它们。 任何特殊的configuration大概是允许一些特定的服务。

把所有上面的东西都拉在一起,询问有人能告诉你应该在目标上运行什么,检查用户在机器上使用什么。

一旦你有一个合理的完整的图片,你将不得不开始质疑哪些确定的服务是真正需要的。 根据各自的最佳实践检查configuration是否健全。 确保所有的东西都是最新的,如果是Windows,那么这个作品就会被激活。

是的,你有工作为你切断。 祝你好运!

另一种可能性是扫描SNMP信息并通过SNMP检查当前活动的TCP / IP连接。 当然,对于Windows和Linux计算机,SNMP是不够的,也许还需要使用其他协议,如SSH或Telnet。

一旦你有了所有的信息,你就可以确定哪个服务器正在与哪个客户端/其他服务器通话。

当然,一次扫描是不够的。 你需要定期做,以获得完整的图片。

NetFlow的devise是为了做你正在寻找的。 如果设置正确,您可以查看networking上的所有对话并发现每个正在使用的服务。 有从廉价到企业级,封闭和开源的各种产品。 一些更好用的产品将获得相关服务(例如,前端Web服务器依赖于数据库,DNS和LDAP服务器),并在出现中断或性能问题时提醒您。

要使用它,您必须在您的骨干上设置一个或多个收集点(在交换机,路由器和/或防火墙上处于活动状态,或者通过SPAN端口或水龙头进行被动)。 每个收集点将把NetFlow数据提供给收集器。