%PDF-1.5 %���� ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY
Server IP : 49.231.201.246 / Your IP : 216.73.216.248 Web Server : Apache/2.4.18 (Ubuntu) System : Linux 246 4.4.0-210-generic #242-Ubuntu SMP Fri Apr 16 09:57:56 UTC 2021 x86_64 User : root ( 0) PHP Version : 7.0.33-0ubuntu0.16.04.16 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/share/webmin/fail2ban/ |
Upload File : |
#!/usr/bin/perl # Show a status of all active jails use strict; use warnings; no warnings 'redefine'; no warnings 'uninitialized'; require './fail2ban-lib.pl'; our (%in, %text, %config); &ReadParse(); my $jail = $in{'jail'}; my $out = &backquote_logged("$config{'client_cmd'} status 2>&1 </dev/null"); my ($jail_list) = $out =~ /jail\s+list:\s*(.*)/im; my @jails = split(/,\s*/, $jail_list); &indexof($jail, @jails) > -1 || error($text{'status_err_unknownjail'}); &ui_print_header("$jail", $text{'status_title3'}, ""); my $fh = 'jailinfo'; my @jail_blocks; &open_execute_command($fh, "$config{'client_cmd'} get @{[quotemeta($jail)]} banip --with-time 2>&1 </dev/null", 1); while(<$fh>) { if (/^(?<ip>.*?)\s+(?<start>.*?\s+.*?)\s+.*?\s+.*?\s+=\s+(?<end>.*)$/) { my $ip = $+{ip}; my $start = $+{start}; my $end = $+{end}; if ($ip && $start && $end) { push(@jail_blocks, [$ip, $start, $end]); } } } close($fh); if (@jail_blocks) { my $popts = \%in; $popts->{'paginations'}->{'form'} = { 'jail' => $jail }; my $pagination = &ui_paginations(\@jail_blocks, $popts); my @links = ( &select_all_link("ip"), &select_invert_link("ip")); print $pagination->{'search'}->{'form-data'}; print &ui_form_start("unblock_jailed_ip.cgi", "post"); print &ui_links_row(\@links); print &ui_columns_start([ "", $text{'status_head_blocks_ip'}, $text{'status_head_blocks_stime'}, $text{'status_head_blocks_etime'} ]); if (@jail_blocks) { foreach my $r (@jail_blocks) { print &ui_checked_columns_row($r, [ 'width=5' ], "ip", $r->[0]); } } else { print $pagination->{'search'}->{'no-results'}; } print &ui_columns_end(); print $pagination->{'paginator'}->{'form-data'}; print $pagination->{'paginator'}->{'form-scripts'}; print &ui_hidden("jail", $jail); print &ui_hidden("return", 1); print $pagination->{'form'}; print &ui_links_row(\@links); print &ui_form_end([ [ undef, $text{'status_jail_unblock_ips'} ] ]); print $pagination->{'search'}->{'form'}; print $pagination->{'paginator'}->{'form'}; } else { print &text('status_jail_noactiveips', $jail); } &ui_print_footer("list_status.cgi", $text{'status_return'}, "", $text{'index_return'});