Linux利用nc命令脚本批量检测服务器指定端口是否开放

简介: nc命令脚本批量检测服务器指定端口是否开放

一、nc命令检测端口的用法

nc -v -w 10 %IP% -z %PORT%

-v 显示指令执行过程。

-w <超时秒数> 设置等待连线的时间。

-u 表示使用UDP协议

-z 使用0输入/输出模式,只在扫描通信端口时使用。

例如:检测192.168.0.180(这里的IP地址也可以换成域名A记录形式,如换成www.baidu.com)这台服务器的80端口和81端口

如果开放,则结果为succeeded,如下:

[root@localhost ~]# nc -v -w 10 -z 192.168.0.180 80

Connection to 192.168.0.180 80 port [tcp/http] succeeded!

如果关闭,则结果为failed,如下:

[root@localhost ~]# nc -v -w 10 -z 192.168.0.180 81

nc: connect to 192.168.0.180 port 81 (tcp) failed: Connection refused

二、批量检测服务器指定端口是否开放

1、假如我们要监控一堆指定的IP和端口,可新建一个文件(第1列为服务器IP,第2列为监控的端口,中间用空格分隔)。

┌──(root💀guiltyfet)-[/home/guiltyfet]
└─# vi /ip-ports.txt

放入ip和端口

192.168.0.180 80

2、新建这样一个脚本来批量检测端口是否开放,成功会返回0值显示ok,失败会返回1值显示fail

┌──(root💀guiltyfet)-[/home/guiltyfet]
└─# vi /ncports.sh
#!/bin/bash  
cat /ip-ports.txt | while read line
do
  nc -w 10 -z $line > /dev/null 2>&1
  if [ $? -eq 0 ]
  then
    echo $line:ok
  else
    echo $line:fail
  fi
done

3、给脚本赋予可执行权限,并执行查看结果

┌──(root💀guiltyfet)-[/home/guiltyfet]
└─# chmod a+x /ncports.sh
┌──(root💀guiltyfet)-[/home/guiltyfet]
└─# sh /ncports.sh

三、注意:

执行nc命令之前,请先检查linux系统是否已安装nc命令;如未安装可进行yum安装

─(root💀guiltyfet)-[/home/guiltyfet]

└─# yum install nc -y

相关文章
|
17天前
|
Java Linux
Springboot 解决linux服务器下获取不到项目Resources下资源
Springboot 解决linux服务器下获取不到项目Resources下资源
|
1天前
|
Linux
如何将一个linux服务器挂载到另外一个linux服务器上
如何将一个linux服务器挂载到另外一个linux服务器上
13 1
|
3天前
|
监控 Linux 网络安全
Linux服务器如何查询连接服务器的IP
【4月更文挑战第15天】Linux服务器如何查询连接服务器的IP
9 1
|
3天前
|
监控 安全 Linux
Linux系统之安装ServerBee服务器监控工具
【4月更文挑战第22天】Linux系统之安装ServerBee服务器监控工具
41 2
|
7天前
|
网络协议 安全 Linux
IDEA通过内网穿透实现固定公网地址远程SSH连接本地Linux服务器
IDEA通过内网穿透实现固定公网地址远程SSH连接本地Linux服务器
|
13天前
|
Linux 数据安全/隐私保护
Linux基础与服务器架构综合小实践
【4月更文挑战第9天】Linux基础与服务器架构综合小实践
1242 8
|
14天前
|
存储 弹性计算 Shell
ecs服务器shell常用脚本练习(十)
【4月更文挑战第11天】shell代码训练(十)
144 0
|
14天前
|
弹性计算 Shell Go
ecs服务器shell常用脚本练习(九)
【4月更文挑战第10天】shell代码训练(八)
142 0
|
18天前
|
弹性计算 Shell Linux
ecs服务器shell常用脚本练习(六)
【4月更文挑战第4天】shell代码训练(六)
110 0
|
8月前
|
安全 关系型数据库 MySQL
Linux学习笔记——Linux基本命令篇(三)
Linux学习笔记——Linux基本命令篇(三)