最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

如何使用 Shell 腳本查看多個(gè)服務(wù)器的端口是否打開(kāi)的方法

 更新時(shí)間:2020年06月16日 08:46:33   作者:良許Linux  
這篇文章主要介紹了如何使用 Shell 腳本來(lái)查看多個(gè)服務(wù)器的端口是否打開(kāi)的方法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

我們?cè)谶M(jìn)行服務(wù)器配置的時(shí)候,經(jīng)常要查看服務(wù)器的某個(gè)端口是否已經(jīng)開(kāi)放。如果服務(wù)器只有一兩臺(tái)的話(huà),那很好辦,只需要使用 nc 命令一個(gè)個(gè)查看即可。

但是,如果你的服務(wù)器是個(gè)集群,有很多臺(tái)呢?那如果還一個(gè)個(gè)手動(dòng)去檢查的話(huà),效率肯定是無(wú)比低下的,年底裁員名單里肯定有你。

在這種情況下,我們完全可以使用 Shell 腳本配合 nc 命令來(lái)達(dá)到我們的目的。而且,不管服務(wù)器有幾臺(tái),需要檢查的端口有幾個(gè),都可以實(shí)現(xiàn)這樣的目標(biāo)。

在本文里,我們用 Shell 腳本來(lái)實(shí)現(xiàn)兩個(gè)需求:

  • 掃描多臺(tái)服務(wù)器的一個(gè)端口是否打開(kāi)
  • 掃描多臺(tái)服務(wù)器的多個(gè)端口是否打開(kāi)

在開(kāi)始之前,我們先來(lái)了解一下 nc 命令。

nc 命令簡(jiǎn)介

nc 是英文單詞 netcat 的縮寫(xiě),它是通過(guò)使用 TCP 或 UDP 的網(wǎng)絡(luò)協(xié)議的連接來(lái)讀或?qū)憯?shù)據(jù),可以直接被第三方程序或腳本直接調(diào)用。

同時(shí),它是一款功能非常強(qiáng)大的網(wǎng)絡(luò)調(diào)試工具,因?yàn)樗梢詣?chuàng)建幾乎所有你所需要的連接方式。

nc 工具主要有三種功能模式:連接模式、監(jiān)聽(tīng)模式、通道模式。它的一般使用格式如下:

$ nc [-options] [HostName or IP] [PortNumber]

接下來(lái),我們就用 Shell 腳本結(jié)合 nc 命令來(lái)實(shí)現(xiàn)我們的兩個(gè)需求。

1. 掃描多臺(tái)服務(wù)器的一個(gè)端口是否打開(kāi)

在這里,我們先把需要查詢(xún)的所有服務(wù)器地址全部放在一個(gè) server-list.txt 文件里,每個(gè)地址單獨(dú)一行,如下:

# cat server-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

然后,我們?cè)儆?for 循環(huán)依次掃描 server-list.txt 里對(duì)應(yīng)服務(wù)器的端口是否打開(kāi)。在這里,我們掃描 22 端口是否打開(kāi)。

# vi port_scan.sh

#!/bin/sh
for server in `more server-list.txt`
do
#echo $i
nc -zvw3 $server 22
done

最后,我們給這個(gè)腳本賦予可執(zhí)行權(quán)限即可。

$ chmod +x port_scan.sh

之后,我們就可以用這個(gè)腳本來(lái)自動(dòng)依次檢查多個(gè)服務(wù)器的 22 端口是否已打開(kāi)。

# sh port_scan.sh

Connection to 192.168.1.2 22 port [tcp/ssh] succeeded!
Connection to 192.168.1.3 22 port [tcp/ssh] succeeded!
Connection to 192.168.1.4 22 port [tcp/ssh] succeeded!
Connection to 192.168.1.5 22 port [tcp/ssh] succeeded!
Connection to 192.168.1.6 22 port [tcp/ssh] succeeded!
Connection to 192.168.1.7 22 port [tcp/ssh] succeeded!

2. 掃描多臺(tái)服務(wù)器的多個(gè)端口是否打開(kāi)

在這里,我們同樣把需要查詢(xún)的所有服務(wù)器地址全部放在一個(gè) server-list.txt 文件里,每個(gè)地址單獨(dú)一行。這里就不重復(fù)演示了。

與此同時(shí),我們也把需要查詢(xún)的服務(wù)器端口放在另一個(gè) port-list.txt 文件里,每個(gè)端口單獨(dú)一行,如下所示:

# cat port-list.txt
22
80

然后,我們?cè)儆?for 循環(huán)依次掃描 server-list.txt 里對(duì)應(yīng)服務(wù)器 port-list.txt 所列的端口是否打開(kāi)。注意,這里用到了兩個(gè) for 循環(huán),第一層是服務(wù)器列表,第二層是端口列表。

# vi multiple_port_scan.sh

#!/bin/sh
for server in `more server-list.txt`
do
for port in `more port-list.txt`
do
#echo $server
nc -zvw3 $server $port
echo ""
done
done

最后,我們給這個(gè)腳本賦予可執(zhí)行權(quán)限即可。

$ chmod +x multiple_port_scan.sh

之后,我們就可以用這個(gè)腳本來(lái)自動(dòng)依次檢查多個(gè)服務(wù)器的多個(gè)端口是否已打開(kāi)。

# sh multiple_port_scan.sh
Connection to 192.168.1.2 22 port [tcp/ssh] succeeded!
Connection to 192.168.1.2 80 port [tcp/http] succeeded!

Connection to 192.168.1.3 22 port [tcp/ssh] succeeded!
Connection to 192.168.1.3 80 port [tcp/http] succeeded!

Connection to 192.168.1.4 22 port [tcp/ssh] succeeded!
Connection to 192.168.1.4 80 port [tcp/http] succeeded!

Connection to 192.168.1.5 22 port [tcp/ssh] succeeded!
Connection to 192.168.1.5 80 port [tcp/http] succeeded!

Connection to 192.168.1.6 22 port [tcp/ssh] succeeded!
Connection to 192.168.1.6 80 port [tcp/http] succeeded!

Connection to 192.168.1.7 22 port [tcp/ssh] succeeded!
Connection to 192.168.1.7 80 port [tcp/http] succeeded!

總結(jié)

到此這篇關(guān)于使用 Shell 腳本來(lái)查看多個(gè)服務(wù)器的端口是否打開(kāi)的方法的文章就介紹到這了,更多相關(guān) Shell 腳本查看多個(gè)服務(wù)器的端口內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java設(shè)計(jì)模式之模板方法模式

    Java設(shè)計(jì)模式之模板方法模式

    這篇文章介紹了Java設(shè)計(jì)模式之模板方法模式,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-10-10
  • 深入探究SpringBoot攔截器的自定義設(shè)計(jì)與實(shí)現(xiàn)全攻略

    深入探究SpringBoot攔截器的自定義設(shè)計(jì)與實(shí)現(xiàn)全攻略

    攔截器是Spring框架提供的核心功能之?,主要用來(lái)攔截用戶(hù)的請(qǐng)求,在指定方法前后,根據(jù)業(yè)務(wù)需要執(zhí)行預(yù)先設(shè)定的代碼,本文將給大家和大家一起深入探究SpringBoot攔截器的自定義設(shè)計(jì)與實(shí)現(xiàn),需要的朋友可以參考下
    2024-05-05
  • Spring Boot Filter 過(guò)濾器的使用方式

    Spring Boot Filter 過(guò)濾器的使用方式

    這篇文章主要介紹了Spring Boot Filter 過(guò)濾器的使用方式,文章通過(guò)圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-09-09
  • MyBatis實(shí)現(xiàn)遞歸查詢(xún)的方法詳解

    MyBatis實(shí)現(xiàn)遞歸查詢(xún)的方法詳解

    在項(xiàng)目開(kāi)發(fā)過(guò)程中,往往會(huì)遇到多級(jí)菜單、分類(lèi)等多層級(jí)結(jié)構(gòu)數(shù)據(jù)的查詢(xún)。本文就來(lái)為大家講講MyBatis實(shí)現(xiàn)遞歸查詢(xún)的方法,感興趣的可以動(dòng)手嘗試一下
    2022-08-08
  • springboot快速集成mybatis-plus的詳細(xì)教程

    springboot快速集成mybatis-plus的詳細(xì)教程

    這篇文章主要介紹了springboot快速集成mybatis-plus的教程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-09-09
  • SpringBoot2.0解決Long型數(shù)據(jù)轉(zhuǎn)換成json格式時(shí)丟失精度問(wèn)題

    SpringBoot2.0解決Long型數(shù)據(jù)轉(zhuǎn)換成json格式時(shí)丟失精度問(wèn)題

    這篇文章主要介紹了SpringBoot2.0解決Long型數(shù)據(jù)轉(zhuǎn)換成json格式時(shí)丟失精度問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • java基于嵌入式Tomcat的War包啟動(dòng)器

    java基于嵌入式Tomcat的War包啟動(dòng)器

    本文主要介紹了java基于嵌入式Tomcat的War包啟動(dòng)器,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • Spring?Security配置多個(gè)數(shù)據(jù)源并添加登錄驗(yàn)證碼的實(shí)例代碼

    Spring?Security配置多個(gè)數(shù)據(jù)源并添加登錄驗(yàn)證碼的實(shí)例代碼

    這篇文章主要介紹了Spring?Security配置多個(gè)數(shù)據(jù)源并添加登錄驗(yàn)證碼,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-08-08
  • springboot themaleaf 第一次進(jìn)頁(yè)面不加載css的問(wèn)題

    springboot themaleaf 第一次進(jìn)頁(yè)面不加載css的問(wèn)題

    這篇文章主要介紹了springboot themaleaf 第一次進(jìn)頁(yè)面不加載css的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • Java SPI 機(jī)制知識(shí)點(diǎn)總結(jié)

    Java SPI 機(jī)制知識(shí)點(diǎn)總結(jié)

    在本篇文章里小編給大家整理的是一篇關(guān)于Java SPI 機(jī)制知識(shí)點(diǎn)總結(jié)內(nèi)容,需要的朋友們可以參考下。
    2020-02-02

最新評(píng)論

米脂县| 明光市| 旬阳县| 内丘县| 关岭| 清原| 边坝县| 灵武市| 葵青区| 黔南| 色达县| 昭通市| 玛曲县| 札达县| 尉犁县| 蓬安县| 宁陵县| 富川| 中牟县| 城市| 江安县| 日土县| 庄河市| 剑川县| 武城县| 华坪县| 吕梁市| 湖南省| 中卫市| 唐河县| 元谋县| 宁波市| 铜梁县| 永嘉县| 五莲县| 巴楚县| 沁源县| 烟台市| 伊吾县| 西藏| 进贤县|