一、tcpport指令
tcpport指令是探知TCP端口状态的重要工具之一。使用tcpport指令,在调试TCP协议时可以查询自己服务器上开放的端口有哪些;在进行安全审计时,可以查询目标主机上所有开放的TCP端口。以下是tcpport指令的示例代码:
tcpport -t 192.168.1.1 -p 80-90
上面的代码表示查询IP地址为192.168.1.1的服务器上TCP端口80到90的状态。
二、tcpport reused
在调试TCP协议时,常常会遇到" TCP: reported 72 TCP, 11 UDP, 2 ICMP"这种类似的错误信息。其中TCP端口数目超出了系统允许的上限,这意味着有部分端口被重复使用了。使用tcpport reused命令,可以查看哪些TCP端口被重复使用了。以下是tcpport reused命令的示例代码:
tcpport reused | grep LISTEN
上面的代码表示查询系统中被重复使用的TCP端口,并过滤出正在监听的端口。
三、tcpportscan
tcpportscan是一款强大的TCP端口扫描工具,可以扫描目标主机上所有开放的TCP端口。扫描时,tcpportscan会自己构造TCP数据包,发送到目标主机上的每一个端口,然后根据返回数据包判断该端口是否开放,从而达到扫描的目的。以下是tcpportscan的示例代码:
tcpportscan -t 192.168.1.1 -p 1-65535
上面的代码表示扫描IP地址为192.168.1.1的服务器上所有开放的TCP端口。
四、tcpport服务可用性
TCP端口可用性是指该端口是否能被客户端访问。在TCP服务开发和维护中,需要对TCP端口可用性进行监控,以及时发现客户端无法访问的问题。以下是使用nc命令进行TCP端口可用性测试的示例代码:
nc -nvz 192.168.1.1 80
上面的代码表示测试IP地址为192.168.1.1,端口为80的TCP服务是否可用。
五、tcpport number reused
在TCP服务开发和维护中,由于县城池限制的原因,常常会遇到TCP端口不够用的情况。使用tcpport number reused可以查看哪些TCP端口已经被使用过,并被释放了。示例代码如下:
ss -tn | awk '{print $4}' | cut -d':' -f2 | sort -n | uniq -c | sort -nr
六、tcpport numbers reused
与tcpport number reused类似,tcpport numbers reused可以查看多个TCP端口是否被使用过。示例代码如下:
ss -tn | awk '{print $4}' | cut -d':' -f2 | sort -n | uniq -c | awk '!/1/{print}'
七、tcpportnumber9100
tcpportnumber9100指的是TCP端口号9100,该端口被众多打印机制造商(如HP、惠普、Brother、Xerox)用于打印。使用tcpportnumber9100可以检查TCP端口号9100的状态。以下是tcpportnumber9100的示例代码:
tcpportnumber9100 -t 192.168.1.1
上面的代码表示查询IP地址为192.168.1.1的服务器上TCP端口号9100的状态。
八、tcpportscan.py脚本
tcpportscan.py是一款Python编写的TCP端口扫描脚本,可以扫描多个目标主机上所有开放的TCP端口。与tcpportscan类似,tcpportscan.py也是发送TCP数据包进行扫描,但其功能更加强大。以下是tcpportscan.py的示例代码:
python tcpportscan.py -H 192.168.1.1,192.168.1.2,192.168.1.3 -p 21,22,80,443,3389
上面的代码表示扫描IP地址为192.168.1.1、192.168.1.2、192.168.1.3的服务器上TCP端口21、22、80、443、3389的状态。