最新公告
  • 欢迎您光临AA分享网,一个高级程序员的学习、分享的分享平台!立即加入我们
  • 远程Linux 系统时,如何检测多个服务器上的端口是否打开?

    随着技术的不断的升级和改造。Linux操作系统逐渐被人所熟知并应用。当在Linux操作系统的服务器运行时,它还将表征各种参数信息。一般而言,运维人员和系统管理员对这些数据非常敏感,因此这些参数对开发人员也非常重要,尤其是在您的程序无法正常工作时,这些提示通常有助于快速定位和跟踪问题。那么远程Linux
    系统时,如何检测多个服务器上的端口是否打开?

    如果要检查五个服务器有没有问题,可以使用以下任何一个命令,如 nc(netcets/tca/'
    target='_blank'>tcat)、nmap 和 telnet。但是如果想检查50 多台服务器,那么你的解决方案是什么?

    要检查所有服务器并不容易,如果你一个一个这样做,完全没有必要,因为这样你将会浪费大量的时间。为了解决这种情况,我使用 nc 命令编写了一个shell
    小脚本,它将允许我们扫描任意数量服务器给定的端口。

    如果你要查找单个服务器扫描,你有多个选择,你只需阅读 检查远程 Linux 系统上的端口是否打开? 了解更多信息。

    本教程中提供了两个脚本,这两个脚本都很有用。这两个脚本都用于不同的目的,你可以通过阅读标题轻松理解其用途。

      什么是nc(netcat)命令?

    nc 即netcat。它是一个简单实用的Unix 程序,它使用TCP 或UDP 协议进行跨网络连接进行数据读取和写入。

    它被设计成一个可靠的 “后端” 工具,我们可以直接使用或由其他程序和脚本轻松驱动它。

    同时,它也是一个功能丰富的网络调试和探索工具,因为它可以创建你需要的几乎任何类型的连接,并具有几个有趣的内置功能。

    netcat 有三个主要的模式。分别是连接模式,监听模式和隧道模式。

      nc(netcat)的通用语法:

    $ nc [-options] [HostNameorIP] [PortNumber]

    远程Linux 系统时,如何检测多个服务器上的端口是否打开?

    如果要检查多个远程Linux 服务器上给定端口是否打开,请使用以下shell 脚本。

    在我的例子中,我们将检查端口22 是否在以下远程服务器中打开,确保你已经更新文件中的服务器列表而不是使用我的服务器列表。

    你必须确保已经更新服务器列表 :server-list.txt 。每个服务器(IP)应该在单独的行中。

    #catserver-list.txt

    192.168.1.2

    192.168.1.3

    192.168.1.4

    192.168.1.5

    192.168.1.6

    192.168.1.7

    使用以下脚本可以达到此目的。

    #viport_scan.sh

    #!/bin/sh

    forserver in`more server-list.txt`

    do

    #echo$i

    nc -zvw3 $server 22

    done

    设置 port_scan.sh 文件的可执行权限。

    $ chmod+x port_scan.sh

    最后运行脚本来达到此目的。

    #sh port_scan.sh

    Connectionto 192.168.1.222port [tcp/ssh] succeeded!

    Connectionto 192.168.1.322port [tcp/ssh] succeeded!

    Connectionto 192.168.1.422port [tcp/ssh] succeeded!

    Connectionto 192.168.1.522port [tcp/ssh] succeeded!

    Connectionto 192.168.1.622port [tcp/ssh] succeeded!

    Connectionto 192.168.1.722port [tcp/ssh] succeeded!

      如何检查多个远程Linux 服务器上是否打开多个端口?

    如果要检查多个服务器中的多个端口,请使用下面的脚本。

    在我的例子中,我们将检查给定服务器的22 和80 端口是否打开。确保你必须替换所需的端口和服务器名称而不使用是我的。

    你必须确保已经将要检查的端口写入 port-list.txt 文件中。每个端口应该在一个单独的行中。

    #catport-list.txt

    22

    80

    你必须确保已经将要检查的服务器(IP 地址)写入 server-list.txt 到文件中。每个服务器(IP) 应该在单独的行中。

    #catserver-list.txt

    192.168.1.2

    192.168.1.3

    192.168.1.4

    192.168.1.5

    192.168.1.6

    192.168.1.7

    使用以下脚本来达成此目的。

    #vimultiple_port_scan.sh

    #!/bin/sh

    forserver in`more server-list.txt`

    do

    forport in`more port-list.txt`

    do

    #echo$server

    nc -zvw3 $server $port

    echo""

    done

    done

    设置 multiple_port_scan.sh 文件的可执行权限。

    $ chmod+x multiple_port_scan.sh

    最后运行脚本来实现这一目的。

    #sh multiple_port_scan.sh

    Connectionto 192.168.1.222port [tcp/ssh] succeeded!

    Connectionto 192.168.1.280port [tcp/http] succeeded!

    Connectionto 192.168.1.322port [tcp/ssh] succeeded!

    Connectionto 192.168.1.380port [tcp/http] succeeded!

    Connectionto 192.168.1.422port [tcp/ssh] succeeded!

    Connectionto 192.168.1.480port [tcp/http] succeeded!

    Connectionto 192.168.1.522port [tcp/ssh] succeeded!

    Connectionto 192.168.1.580port [tcp/http] succeeded!

    Connectionto 192.168.1.622port [tcp/ssh] succeeded!

    Connectionto 192.168.1.680port [tcp/http] succeeded!

    Connectionto 192.168.1.722port [tcp/ssh] succeeded!

    Connectionto 192.168.1.780port [tcp/http] succeeded!

    综上所述,远程Linux 系统时,如何检测多个服务器上的端口是否打开相信大家已经知晓了,想了解更多关于Linux的信息,请继续关注中培教育。

    AA分享网一个高级程序员的学习、分享的IT资源分享平台
    AA分享网-企业网站源码-PHP源码-网站模板-视频教程-IT技术教程 » 远程Linux 系统时,如何检测多个服务器上的端口是否打开?
    • 257会员总数(位)
    • 5903资源总数(个)
    • 14本周发布(个)
    • 6 今日发布(个)
    • 540稳定运行(天)

    提供最优质的资源集合

    立即查看 了解详情