����JFIF��x�x����'
Server IP : 78.140.185.180 / Your IP : 3.15.31.240 Web Server : LiteSpeed System : Linux cpanel13.v.fozzy.com 4.18.0-513.11.1.lve.el8.x86_64 #1 SMP Thu Jan 18 16:21:02 UTC 2024 x86_64 User : builderbox ( 1072) PHP Version : 7.3.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /usr/lib64/nagios/plugins/base/ |
Upload File : |
#!/usr/bin/env perl use extreme; use Socket; use Sys::Hostname; use File::Slurp; use Net::DNS; my @incidents; my @reverse_IPs; use constant { OK => 0, WARNING => 1, CRITICAL => 2, UNKNOWN => 3, }; my @rbls = qw/ zombie.dnsbl.sorbs.net combined.rbl.msrbl.net ix.dnsbl.manitu.net bl.spamcop.net dsn.rfc-ignorant.org multi.surbl.org cblless.anti-spam.org.cn cblplus.anti-spam.org.cn cbl.anti-spam.org.cn blackholes.five-ten-sg.com sorbs.dnsbl.net.au dnsbl.sorbs.net zen.spamhaus.org db.wpbl.info rmst.dnsbl.net.au dnsbl.kempt.net blacklist.woody.ch psbl.surriel.com virbl.bit.nl rot.blackhole.cantv.net wormrbl.imp.ch spamrbl.imp.ch virus.rbl.msrbl.net phishing.rbl.msrbl.net images.rbl.msrbl.net spam.rbl.msrbl.net rbl.interserver.net spamlist.or.kr dyna.spamrats.com dnsbl.abuse.ch dnsbl.inps.de dnsbl.dronebl.org bl.deadbeef.com ricn.dnsbl.net.au forbidden.icm.edu.pl probes.dnsbl.net.au ubl.unsubscore.com b.barracudacentral.org ksi.dnsbl.net.au uribl.swinog.ch bsb.spamlookup.net dob.sibl.support-intelligence.net bogons.cymru.com omrs.dnsbl.net.au osrs.dnsbl.net.au relays.nether.net relays.bl.gweep.ca smtp.dnsbl.sorbs.net relays.bl.kundenserver.de dialups.mail-abuse.org rdts.dnsbl.net.au spam.dnsbl.sorbs.net dynablock.sorbs.net dynip.rothen.com dul.blackhole.cantv.net cdl.anti-spam.org.cn korea.services.net mail.people.it blacklist.sci.kun.nl all.spamblock.unit.liu.se /; my @white_list = read_file('/etc/icinga2/plinc/dnsblwhitelist') if -f '/etc/icinga2/plinc/dnsblwhitelist'; chomp @white_list; # get list of ips my $get_ip = '/sbin/ip -4 -o addr | /bin/awk \'!/^[0-9]*: ?lo|link\/ether/ {gsub("/", " "); print $4}\' | grep -v \'^10\.\''; my @IPs = `$get_ip`; chomp(@IPs); # get reverse ips for my $IP (@IPs) { my $reverse_ip = join( '.', reverse split( /\./, $IP ) ); push @reverse_IPs, $reverse_ip; } chomp(@reverse_IPs); my $res = Net::DNS::Resolver->new; for my $rbl (@rbls) { next if grep /$rbl/, @white_list; for my $reverse_IP (@reverse_IPs) { my $packet = $res->query("$reverse_IP.$rbl"); next if !$packet; my ($answer) = $packet->answer; my $result = "$rbl: " . $answer->rdatastr; # get some description from txt record if avaliable $packet = $res->query( "$reverse_IP.$rbl", "TXT" ); if ($packet) { ($answer) = $packet->answer; $result .= " - " . $answer->rdatastr; } push @incidents, $result; } } if (@incidents) { say join( "\n", @incidents ); exit CRITICAL; } say "OK - not listed";