加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

简练的端口扫描脚本

发布时间: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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读