简练的端口扫描脚本
发布时间:2020-12-15 23:50:53 所属栏目:大数据 来源:网络整理
导读:脚本名:monitor_port.pl 作用:扫描特定端口是否正常 脚本: #!/usr/bin/env?perl?($sec,$min,$hour,$mday,$mon,$year)?=?(localtime)[0..5];?($sec,$year)?=?(????sprintf("%02d",?$sec),????sprintf("%02d",?$min),?$hour),?$mday),?$mon?+?1),????$year?
脚本名:monitor_port.pl 作用:扫描特定端口是否正常 脚本: #!/usr/bin/env?perl ?($sec,$min,$hour,$mday,$mon,$year)?=?(localtime)[0..5]; ?($sec,$year)?=?( ????sprintf("%02d",?$sec),????sprintf("%02d",?$min),?$hour),?$mday),?$mon?+?1),????$year?+?1900 ); $date="$year-$mon-$mday?$hour:$min:$sec"; ########################################################## open?(FH,"/opt/monitor/port.list")?||?die; while?(defined($port_tn=<FH>))?{ ????????($host_ip,$mod_n,$port_t,$port_n)=split(/t/,$port_tn); ????chomp?$host_ip; ????chomp?$mod_n; ????chomp?$port_t; ????chomp?$port_n; ????ch_result(); ????} #################################################### sub?ch_result?{ ????open?LOG,">>/opt/monitor/port_status.log"; ????select?LOG; ????if($port_t?eq?'tcp'){ ???????`/usr/bin/nc?-z?-w2?$host_ip?$port_n`; ???????$flag?=?`echo?$?`; ????}else{ ???????`/usr/bin/nc?-u?-z?-w2?$host_ip?$port_n`; ???????$flag?=?`echo?$?`; ????} ########################### ????if($flag?!=?0){ ????????print?"$date?$host_ip?$mod_n?$port_t?$port_n?is?closed!n"; ????} ????close(LOG); } 文件1、port.list 定义要扫描的端口内容, eg: 172.16.2.2??????httpd?????tcp?????80 172.16.2.2??????tomcat?????tcp?????8080 文件2、port_status.log 记录端口失败信息 eg: 2014-11-25?20:30:01?172.16.2.2?httpd?tcp?80?is?closed! 2014-11-25?20:30:01?172.16.2.2?tomcat?tcp?8080?is?closed! 使用方法: ????只要将此脚本添加到crontab即可! */5?*?*?*?*?cd?/opt/monitor;?./monitor_port.pl?>?/dev/null?2>&1 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |