shell脚本实现批量端口扫描

#!/bin/bash
# Telnet Batach
readonly TMOUT=3

ip_prefix="192.168"
ip_network_range="80-80"
ip_network_host_range="1-254"
port_range="445-445"
ports="135 445 3389 3306"
execute_num=3000

function telnet_batch()
{
  ip="$1"
  port="$2"
  script_ping=‘echo ""|telnet ‘$ip‘ ‘$port‘ 2> /dev/null|grep "Escape character is"&>/dev/null;[[ $? -eq 0 ]] && echo -e "\033[32m‘$ip‘ ‘$port‘ yes\033[0m" || echo -e "\033[36m‘$ip‘ ‘$port‘ no\033[0m">/dev/null‘
  eval $script_ping &
}
function sleep_wait()
{
  sleep 2
  [[ $(ps -ef|wc -l) -ge $execute_num ]] && sleep_wait;
}

for port in $ports;do for i in `seq $(echo $ip_network_range|awk -F ‘-‘ ‘{print $1}‘) $(echo $ip_network_range|awk -F ‘-‘ ‘{print $2}‘)`;do [[ $(ps -ef|wc -l) -ge $execute_num ]] && sleep_wait;for j in `seq $(echo $ip_network_host_range|awk -F ‘-‘ ‘{print $1}‘) $(echo $ip_network_host_range|awk -F ‘-‘ ‘{print $2}‘)`;do telnet_batch "${ip_prefix}.${i}.${j}" "$port";done;done;done

原文地址:https://www.cnblogs.com/tianyuanchen/p/11375104.html

时间: 2024-08-15 02:32:53

shell脚本实现批量端口扫描的相关文章

脚本应用之四: 批量端口扫描

作用:批量端口扫描,可根据扫描主机的配置调整后台扫描进程数量 实现:使用nc指令扫描端口, 使用管道特性控制后台扫描进程数量 不足:仅仅对扫描端口状态为down的信息做记录,并没有其他报警操作 使用:需要提供包含被扫描主机的ip地址.协议和端口号的配置文件(格式见演示或代码专区注释) 演示:

shell脚本:批量修改文件名(删除文件名中字符)

shell脚本:批量修改文件名(文件名中添加字符) 上一篇写过批量修改文件名(文件名中添加字符),工作中还存在这样的需求,批量修改文件名,删除文件名中的某些字符: 举例如下:批量改名,删除文件名中多余字符 目录下文件名为如下,要求去掉_finished. stu_102999_1_finished.jpg stu_102999_2_finished.jpg stu_102999_3_finished.jpg stu_102999_4_finished.jpg stu_102999_5_finis

(转)通过shell脚本实现批量添加用户和设置随机密码以及生产环境如何批量添加

通过shell脚本实现批量添加用户和设置随机密码以及生产环境如何批量添加 原文:http://www.21yunwei.com/archives/4773 有一个朋友问我如何批量创建用户和设置密码 ,我就简单给他写了两个脚本,让他自己参考下并自己根据实际情况进行修改,毕竟他需要的用户名和密码都是实际生产环境的. 这里分两种情况,一种是测试for循环批量添加用户,一个是根据实际生产环境进行批量添加.分别写一下案例如下:1,for添加指定类型用户以及设置随机密码.脚本作用:批量添加user1-10用

使用Shell脚本+expect批量部署ssh

Shell脚本+expect批量部署ssh一.准备工作及思路1,三台机器做实验(centos6.5.IP:192.168.0.22 (主控制).192.168.0.156.192.168.0.157)2,IP:22这一台做主控机器,另外2台做客户机.3,提前在主控制机器上创建好公钥,安装好expect,使用脚本批量推送ssh公钥.4,本次部署是以root身份进行下面的操作.二.正式部署1,首先穿件秘钥[[email protected] .ssh]# ssh-keygen -t rsa Gene

shell脚本:<批量检查并更改MySQL数据库表的存储引擎><工作中总结>

Work Description: 在搭建完Percona XtraDB Cluster(一种MySQL架构,简称PXC),需要把old mysql中的数据导入到new mysql中,但PXC只支持InnoDB表,非InnoDB表无法同步到PXC的其它节点上,因此我需要批量统一表的引擎. Event Description: 1.需要写个shell脚本,完成两个目的:<1>查询(ck)ENGINE的状态 <2>更改(al)引擎状态 2.需要在管理机上,访问远程MySQL <方

shell脚本杀掉(kill)端口号对应的PID进程

我是用的mac 就是当你本机启动一个python 端口进程, 即使关掉,后台进程依然存在,在启动同端口的进程,或报错提示已被占用 当你lsof -i:端口号(linux--(ss -anpt | grep 22)-->(ss是nestat的简写)) 又会发现不知一个pid进程 kill 很麻烦,所以就写了一个shell脚本,根据你输入的端口号,循环kill掉: #!/bin/bash read -p "输入 你要kill的端口号: " a for i in `lsof -i:$a

shell脚本之批量添加用户

没错,这是一个简单的脚本,不写不知道,写了才发现自己有多少不足. 下面的脚本主要用于批量添加用户的脚本,本来很简单的脚本,但是添加了一些判断,验证自己学习. 1.判断用户输入是否有误 2.判断用户是否存在,存在就跳过不再处理 代码如下: #/bin/bash #批量添加用户脚本   #判断用户是否存在函数 function panduan()     {         for nametmp in $(cat /tmp/user.txt)             do             

shell脚本:批量修改文件名(文件名中添加字符)

举例如下:批量创建10个随机字符串的文件,要求每个文件名后面添加_aaa,后缀名不变: [[email protected] goodboy]# ls adddbbdedf.html  baacjaiija.html  bhcfaabcfh.html  dgjdcdfbca.html  efejadfdji.html agdhcdeaje.html  bgffbffjcg.html  cbbiebdafh.html  diadebbhag.html  jcajafgejf.html 脚本1: [

shell脚本,批量创建10个系统帐号并设置密码为随机8位字符串。

[[email protected] wyb]# cat user10.sh #!/bin/bash #批量创建10个系统帐号wangyb01-wangyb10并设置密码(密码为随机8位字符串). >user.list for user in `seq -w 10` do useradd wangyb$user password=`echo $RANDOM|md5sum|cut -c 1-8` echo $password|passwd wangyb$user --stdin echo wang