如何检查多个远程Linux系统是否打开了指定端口?


这个非常简单 。nc和nmap命令就可以 。下面我简单介绍一下实现过程 。主要内容如下:
这里为了更方便的演示过程 。我们假设远程Linux系统(服务器)的IP地址如下 。保存在server.txt文件中:

如何检查多个远程Linux系统是否打开了指定端口?

文章插图
对应检测的端口号分别是22、80和3306 。如下 。保存在port.txt文件中:
如何检查多个远程Linux系统是否打开了指定端口?

文章插图
nc
即netcat 。一个简单实用的Unix(Linux)工具 。使用TCP或UDP协议去读写网络间连接的数据 。可以很方便的查看指定端口是否开启 。测试脚本如下(这里命名为nc_port.sh) 。很容易理解 。2个for循环 。依次循环server.txt和port.txt 。然后使用命令nc测试连接就行:
如何检查多个远程Linux系统是否打开了指定端口?

文章插图
之后给nc_port.sh脚本添加执行权限 。命令“chomd u+x nc_port.sh” 。运行这个脚本 。效果如下 。已经可以成功查看对应Linux服务器是否开启22、80和3306端口:
如何检查多个远程Linux系统是否打开了指定端口?

文章插图
nmap
这是一个专门用于网络嗅探的工具 。可以快速扫描大规模网络(包括IP和端口号 。比nc命令快的多 。在渗透测试中经常会用到) 。当然 。对单个主机也可以正常工作 。测试脚本如下(这里命名为nmap_port.sh) 。基本思路和nc扫描差不多 。也是2个for循环 。然后使用nmap命令测试连接就行:
如何检查多个远程Linux系统是否打开了指定端口?

文章插图
之后给nmap_port.sh脚本添加执行权限 。“chmod u+x nmap_port.sh” 。运行这个脚本 。效果如下 。已经可以成功查看对应Linux服务器是否开启对应端口:
如何检查多个远程Linux系统是否打开了指定端口?

文章插图
至此 。我们就完成了利用nc和nmap命令来测试远程Linux服务器是否开启对应端口号 。总的来说 。整个过程不难 。脚本也非常简单 。只要你有一定的Linux和shell基础 。熟悉一下上面的脚本 。很快就能掌握的 。网上也有相关教程和资料 。非常丰富 。感兴趣的话 。可以搜一下 。希望以上分享的内容能对你有所帮助吧 。也欢迎大家评论、留言 。
其他观点:
【如何检查多个远程Linux系统是否打开了指定端口?】很简单 。直接ping x.x.x.x:端口 有响应就说明开通了该端口

    推荐阅读