Linux mail.vriendennsm.nl 6.1.0-51-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.177-1 (2026-07-16) x86_64
Apache/2.4.68 (Debian)
Server IP : 217.154.75.17 & Your IP : 216.73.216.195
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
share /
usermin /
changepass /
Delete
Unzip
Name
Size
Permission
Date
Action
images
[ DIR ]
drwxr-xr-x
2026-07-25 20:55
ulang
[ DIR ]
drwxr-xr-x
2026-07-25 20:55
CHANGELOG
570
B
-rw-r--r--
2026-07-19 16:26
changepass-lib.pl
3.95
KB
-rwxr-xr-x
2026-07-19 16:26
changepass.cgi
8.1
KB
-rwxr-xr-x
2026-07-19 16:28
config
138
B
-rw-r--r--
2026-07-19 16:26
config-ALL-linux
136
B
-rw-r--r--
2026-07-19 16:26
config-freebsd
233
B
-rw-r--r--
2026-07-19 16:26
config-macos
151
B
-rw-r--r--
2026-07-19 16:26
config-netbsd
208
B
-rw-r--r--
2026-07-19 16:26
config-openbsd
154
B
-rw-r--r--
2026-07-19 16:26
config-openserver
151
B
-rw-r--r--
2026-07-19 16:26
config-qnx
159
B
-rw-r--r--
2026-07-19 16:26
config-solaris
136
B
-rw-r--r--
2026-07-19 16:26
config.info
812
B
-rw-r--r--
2026-07-19 16:26
config.info.ca
990
B
-rwxr-xr-x
2026-07-19 16:26
config.info.cs
872
B
-rw-r--r--
2026-07-19 16:26
config.info.de
689
B
-rw-r--r--
2026-07-19 16:26
config.info.el
1.37
KB
-rw-r--r--
2026-07-19 16:26
config.info.nl
929
B
-rw-r--r--
2026-07-19 16:26
config.info.no
852
B
-rw-r--r--
2026-07-19 16:26
index.cgi
1.79
KB
-rwxr-xr-x
2026-07-19 16:28
md5-lib.pl
7.73
KB
-rwxr-xr-x
2026-07-19 16:26
module.info
179
B
-rw-r--r--
2026-07-19 16:26
module.info.ar
0
B
-rw-r--r--
2026-07-19 16:26
module.info.ar.auto
213
B
-rw-r--r--
2026-07-19 16:26
module.info.bg
0
B
-rw-r--r--
2026-07-19 16:26
module.info.bg.auto
218
B
-rw-r--r--
2026-07-19 16:26
module.info.ca
29
B
-rw-r--r--
2026-07-19 16:26
module.info.ca.auto
106
B
-rw-r--r--
2026-07-19 16:26
module.info.cs
21
B
-rw-r--r--
2026-07-19 16:26
module.info.cs.auto
101
B
-rw-r--r--
2026-07-19 16:26
module.info.da
0
B
-rw-r--r--
2026-07-19 16:26
module.info.da.auto
134
B
-rw-r--r--
2026-07-19 16:26
module.info.de
81
B
-rw-r--r--
2026-07-19 16:26
module.info.de.auto
21
B
-rw-r--r--
2026-07-19 16:26
module.info.el
0
B
-rw-r--r--
2026-07-19 16:26
module.info.el.auto
213
B
-rw-r--r--
2026-07-19 16:26
module.info.es
32
B
-rw-r--r--
2026-07-19 16:26
module.info.es.auto
112
B
-rw-r--r--
2026-07-19 16:26
module.info.eu
0
B
-rw-r--r--
2026-07-19 16:26
module.info.eu.auto
116
B
-rw-r--r--
2026-07-19 16:26
module.info.fa
0
B
-rw-r--r--
2026-07-19 16:26
module.info.fa.auto
176
B
-rw-r--r--
2026-07-19 16:26
module.info.fi
0
B
-rw-r--r--
2026-07-19 16:26
module.info.fi.auto
133
B
-rw-r--r--
2026-07-19 16:26
module.info.fr
32
B
-rw-r--r--
2026-07-19 16:26
module.info.fr.auto
121
B
-rw-r--r--
2026-07-19 16:26
module.info.hr
0
B
-rw-r--r--
2026-07-19 16:26
module.info.hr.auto
132
B
-rw-r--r--
2026-07-19 16:26
module.info.hu
30
B
-rw-r--r--
2026-07-19 16:26
module.info.hu.auto
130
B
-rw-r--r--
2026-07-19 16:26
module.info.it
0
B
-rw-r--r--
2026-07-19 16:26
module.info.it.auto
127
B
-rw-r--r--
2026-07-19 16:26
module.info.ja
33
B
-rw-r--r--
2026-07-19 16:26
module.info.ja.auto
136
B
-rw-r--r--
2026-07-19 16:26
module.info.ko
0
B
-rw-r--r--
2026-07-19 16:26
module.info.ko.auto
154
B
-rw-r--r--
2026-07-19 16:26
module.info.ms
0
B
-rw-r--r--
2026-07-19 16:26
module.info.ms.auto
145
B
-rw-r--r--
2026-07-19 16:26
module.info.nl
30
B
-rw-r--r--
2026-07-19 16:26
module.info.nl.auto
108
B
-rw-r--r--
2026-07-19 16:26
module.info.no
22
B
-rw-r--r--
2026-07-19 16:26
module.info.no.auto
108
B
-rw-r--r--
2026-07-19 16:26
module.info.pl
109
B
-rw-r--r--
2026-07-19 16:26
module.info.pl.auto
99
B
-rw-r--r--
2026-07-19 16:26
module.info.pt
0
B
-rw-r--r--
2026-07-19 16:26
module.info.pt.auto
116
B
-rw-r--r--
2026-07-19 16:26
module.info.pt_BR
25
B
-rw-r--r--
2026-07-19 16:26
module.info.pt_BR.auto
102
B
-rw-r--r--
2026-07-19 16:26
module.info.ru
32
B
-rw-r--r--
2026-07-19 16:26
module.info.ru.auto
133
B
-rw-r--r--
2026-07-19 16:26
module.info.sk
0
B
-rw-r--r--
2026-07-19 16:26
module.info.sk.auto
125
B
-rw-r--r--
2026-07-19 16:26
module.info.sv
0
B
-rw-r--r--
2026-07-19 16:26
module.info.sv.auto
138
B
-rw-r--r--
2026-07-19 16:26
module.info.tr
0
B
-rw-r--r--
2026-07-19 16:26
module.info.tr.auto
147
B
-rw-r--r--
2026-07-19 16:26
module.info.uk
0
B
-rw-r--r--
2026-07-19 16:26
module.info.uk.auto
201
B
-rw-r--r--
2026-07-19 16:26
module.info.zh
0
B
-rw-r--r--
2026-07-19 16:26
module.info.zh.auto
112
B
-rw-r--r--
2026-07-19 16:26
module.info.zh_TW
0
B
-rw-r--r--
2026-07-19 16:26
module.info.zh_TW.auto
121
B
-rw-r--r--
2026-07-19 16:26
recovery.cgi
629
B
-rwxr-xr-x
2026-07-19 16:28
uconfig.info.de
845
B
-rw-r--r--
2026-07-19 16:26
webmin_menu.pl
339
B
-rw-r--r--
2026-07-19 16:26
Save
Rename
# changepass-lib.pl BEGIN { push(@INC, ".."); }; use WebminCore; &init_config(); require 'md5-lib.pl'; $recovery_file = $user_module_config_directory."/recovery"; # check_password(password, username) # Returns an error message if a password is invalid sub check_password { local ($pass, $username) = @_; return &text('change_epasswd_min', $config{'passwd_min'}) if (length($pass) < $config{'passwd_min'}); local $re = $config{'passwd_re'}; return &text('change_epasswd_re', $re) if ($re && !eval { $pass =~ /$re/ }); if ($config{'passwd_same'}) { return &text('change_epasswd_same') if ($pass =~ /\Q$username\E/i); } if ($config{'passwd_new'}) { return &text('change_epasswd_new') if (lc($pass) eq lc($in{'old'})); } if ($config{'passwd_dict'} && $pass =~ /^[A-Za-z\'\-]+$/) { return &text('change_epasswd_dict') if (&is_dictionary_word($pass)); } if ($config{'passwd_prog'}) { # Run external program with username and password as args local $qu = quotemeta($username); local $qp = quotemeta($pass); local $out = &backquote_command("$config{'passwd_prog'} $qu $qp 2>&1 </dev/null"); if ($?) { return $out; } } return undef; } # change_mailbox_passwords(user, old, new) # Change a user's password in Usermin IMAP folders. Returns a message about # the password change, if done sub change_mailbox_passwords { local ($user, $oldpass, $newpass) = @_; local $rv; if ($config{'mailbox'} && &foreign_check("mailbox")) { &foreign_require("mailbox", "mailbox-lib.pl"); foreach my $f (&mailbox::list_folders()) { if (($f->{'type'} == 2 || $f->{'type'} == 4) && ($f->{'user'} eq $user || $f->{'user'} eq '*') && $f->{'pass'} eq $oldpass && !$f->{'imapauto'} && !$f->{'autouser'}) { # Found one to change local $type = $f->{'type'} == 2 ? "pop3" : "imap"; local $file; if ($f->{'inbox'}) { # Need to change special inbox password file $file = "$mailbox::user_module_config_directory/inbox"; $rv = &text('change_inbox', uc($type)); } else { # Need to change folder's file $file = "$mailbox::user_module_config_directory/$f->{'id'}"; $rv = &text('change_folder', uc($type), $f->{'server'}); } $file .= ".".$type; local %data; &read_file($file, \%data); $data{'pass'} = $newpass; &write_file($file, \%data); } } } return $rv; } # change_samba_password(user, old, new) # Change a user's Samba password sub change_samba_password { local ($user, $oldpass, $newpass) = @_; local ($smbpasswd_binary) = split(/\s+/, $config{'smbpasswd'}); local $smbout; if (&has_command($smbpasswd_binary)) { $user = quotemeta($user); local $hout = &backquote_command("$config{'smbpasswd'} -h 2>&1"); if ($hout =~ /\s-s\s/) { # New version of smbpasswd which accepts the -s option local $temp = &transname(); open(TEMP, ">$temp"); if ($config{'smbpasswd'} =~ /\s-r\s/) { print TEMP $oldpass,"\n"; } print TEMP $newpass,"\n",$newpass,"\n"; close(TEMP); $smbout = &backquote_command( "$config{'smbpasswd'} -s $user 2>&1 <$temp"); unlink($temp); } else { # Old version of smbpasswd which takes password on command line local $pass = quotemeta($newpass); $smbout = &backquote_command( "$config{'smbpasswd'} $user $pass 2>&1 </dev/null"); } } return $smbout; } # get_recovery_address() # Returns the address from the recovery file sub get_recovery_address { my $rv = &eval_as_unix_user($remote_user, sub { &create_user_config_dirs(); &read_file_contents($user_module_config_directory."/recovery") }); $rv =~ s/\r|\n//g; return $rv; } # save_recovery_address(address) # Updates the user's password recovery address sub save_recovery_address { my ($addr) = @_; &eval_as_unix_user($remote_user, sub { &create_user_config_dirs(); &open_tempfile(ADDR, ">".$user_module_config_directory."/recovery"); if (defined($addr)) { &print_tempfile(ADDR, $addr,"\n"); } &close_tempfile(ADDR) }); } 1;