Linux脚本探测UDP端口 – nmap应用

2023-05-16 20:09:04 浏览数 (2)

Linux有nmap命令可以实现UDP端口探测的问题,Java代码无法实现。此脚本基于nmap命令,nmap安装教程在本站:https://cloud.tencent.com/developer/article/2170423

代码语言:javascript复制
#!/bin/bash

host=$1
port=$2

#nmap端口扫描命令示例
# nmap -sU www.baidu.com -p 54880-54889
# nmap -sU www.baidu.com -p 54230

result=$(nmap -sU $host -p $port | grep -w "open" | awk '{print $2}')

if [ "$result" == "open|filtered" ]; then
  echo "1"
else
  echo "0"
fi

返回1代表正常,0代表端口关闭。

脚本使用方式

比如:脚本文件名叫udpKeepAlive.sh

代码语言:javascript复制
【参数示例】
sh ./udpKeepAlive.sh [HOST] [PORT]

【运行示例】
sh ./udpKeepAlive.sh www.baidu.com 80

本脚本尚未支持多端口扫描,我是基于单个(动态:给予脚本入参实现)探索UDP端口的是否开放的。使用Java处理脚本返回多个脚本sh、cmd、bat等内容不是很方便处理。如果只是一个端口的信息正常返回,且返回1、0就能很轻松处理脚本执行结果,这才是我的初衷!

0 人点赞