温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

perl 系统文件监控脚本

发布时间:2020-04-02 03:29:17 阅读:695 作者:niuniu0716 栏目:安全技术
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

script 说明:

该脚本可以对指定的系统重要文件进行监控,当文件被查看或修改后,脚本会查看最近登陆系统的用户和IP,并发邮件通知。


#!/usr/bin/perl use strict; use Mail::Sender; use Digest::SHA; my @files=('/etc/passwd''/etc/shadow''/var/log/wtmp'); my $last_cmd=`last -2`;  while (1) {         my %md5_res;         my %output;         my @change;         foreach my $file (@files) {                 $md5_res{$file}=MD5_digest($file);         };                 while(1) {                         sleep 10;                         foreach my $file (@files) {                                 if ($md5_res{$file} ne MD5_digest($file)) {                                         $output{$file}="$file is changed";                                  };                         };                         if (%output) {                                 foreach my $key (%output) {                                        print "$output{$key}\n";                                  }                                 print "$last_cmd";                                 last;                         };                 }; };  sub MD5_digest {         my $file=shift;         my $sha=Digest::SHA->new('256');         $sha->addfile($file);         my $digest=$sha->hexdigest;         return "$digest"; }    sub Send_mail {         my($subject,$msg)=@_;         my $sender=new Mail::Sender->MailMsg({          smtp => 'mail.aaa.com',          from => 'neo@aaa.com',          to =>'neo@gmail.com',          subject => $subject,          msg => $msg,          auth => 'LOGIN',          authid => 'neo',          authpwd => '1234',}         ) or die "$Mail::Sender::Error\n";         print "Mail sent ok"; } 

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI

开发者交流群×