任何工具来检查哪些端口/协议防火墙防止?

假设我有一个设置为:

host_1 --- Firewall_1 --- Internet --- Firewall_2 --- host_2 

我需要检查host_1上哪些端口在host_2上打开(可能被防火墙阻止)

是否有一个工具分为两部分(一个在host_1上运行,另一个在host_2上运行),这对我来说是这样吗? 它应该是这样的:

 1 Listen to all ports on host_2 2 Try to connect to every port on host_2 from host_1 3 Give a report what ports are allowed. 

nmap是传统的端口扫描器,并且能够很好地完成这项工作。 你将它安装在host1上,并运行它对主机2,例如

 host1% nmap -sT host2 

我赞同其他用户的意见,除非您自己拥有,或者得到系统所有者的书面许可。 未经许可的渗透testing和其他forms的端口扫描不会使任何人都感到厌恶。

如果你有权访问host_2,那么运行一个端口扫描器在那里扫描自己。 nmap http://nmap.org会做到这一点。

如果您无法访问host_2,则只能通过两个防火墙进入,只能访问host_2上防火墙允许的端口。 您无法扫描防火墙,这是您有防火墙的原因之一!

任何端口扫描器都会为你做这件事,但是如果你不拥有所涉及的所有系统,或者至less对所有相关方都没有很好的理解,那么你应该知道这种行为是严重的。

nmap是我的首选,这是我使用的一个例子

nmap -p 10-6000 -v -e eth0 remote-host -P0 -sT localhost

使用-p你可以限制正在扫描的端口,而不会为所有端口运行。

每个人都与nmap的钱。 我会使用以下。

从主机1:

 nmap -PN -sSU -p U:1-65535,T:1-65535 -vvv -n host2_IP -oN output_report.txt 
  • -PN =不要ping主机
  • -sSU =这是Syn和UDP扫描(只是您想要执行的扫描types)
  • -p =想要尝试的端口findU:UDP端口范围,T:TCP端口范围
  • -vvv只是冗长的,给我的信息
  • -n不要做一个名字查询(如果你不需要的话就加快速度)
  • -oN将结果输出到文件

如果港口回来“开放”,那么显然是开放的。 同样的事情closures。 如果它以“过滤”的方式回来,意味着有一个防火墙的方式。