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 /
webmin /
authentic-theme /
Delete
Unzip
Name
Size
Permission
Date
Action
extensions
[ DIR ]
drwxr-xr-x
2026-07-25 20:55
help
[ DIR ]
drwxr-xr-x
2026-07-25 20:55
images
[ DIR ]
drwxr-xr-x
2026-07-25 20:55
lang
[ DIR ]
drwxr-xr-x
2026-07-25 20:55
modules
[ DIR ]
drwxr-xr-x
2025-02-07 09:25
unauthenticated
[ DIR ]
drwxr-xr-x
2025-02-07 09:25
401.cgi
342
B
-rwxr-xr-x
2026-07-17 21:22
403.cgi
342
B
-rwxr-xr-x
2026-07-17 21:22
404.cgi
342
B
-rwxr-xr-x
2026-07-17 21:22
CHANGELOG.md
101.01
KB
-rw-r--r--
2026-07-17 21:17
FUNDING.yml
102
B
-rw-r--r--
2026-07-17 21:17
LICENSE
1.04
KB
-rw-r--r--
2026-07-17 21:17
THEME.pgp
3.03
KB
-rw-r--r--
2026-07-17 21:17
authentic-funcs.pl
29.95
KB
-rw-r--r--
2026-07-17 21:17
authentic-init.pl
84.64
KB
-rw-r--r--
2026-07-17 21:17
authentic-lib.pl
88.54
KB
-rw-r--r--
2026-07-17 21:17
authentic.pl
60.57
KB
-rw-r--r--
2026-07-17 21:17
config
139
B
-rw-r--r--
2026-07-17 21:17
config.cgi
6.73
KB
-rwxr-xr-x
2026-07-17 21:22
config_save.cgi
2.54
KB
-rwxr-xr-x
2026-07-17 21:22
index.cgi
309
B
-rwxr-xr-x
2026-07-17 21:22
login-lib-funcs.pl
18.66
KB
-rw-r--r--
2026-07-17 21:17
login-lib.pl
1.48
KB
-rw-r--r--
2026-07-17 21:17
manifest-webmin.json
994
B
-rw-r--r--
2025-02-08 21:47
manifest.template
920
B
-rw-r--r--
2026-07-17 21:17
mconfig.cgi
6.59
KB
-rwxr-xr-x
2026-07-17 21:22
mconfig_save.cgi
1.68
KB
-rwxr-xr-x
2026-07-17 21:22
navigation-lib.pl
63.24
KB
-rw-r--r--
2026-07-17 21:17
pam_login.cgi
3.41
KB
-rwxr-xr-x
2026-07-17 21:22
password_form.cgi
3.91
KB
-rwxr-xr-x
2026-07-17 21:22
postinstall-usermin.pl
264
B
-rwxr-xr-x
2026-07-17 21:22
postinstall.pl
645
B
-rwxr-xr-x
2026-07-17 21:22
service-worker.js
94
B
-rw-r--r--
2026-07-17 21:17
session_login.cgi
4.52
KB
-rwxr-xr-x
2026-07-17 21:22
settings-backgrounds.cgi
3.62
KB
-rwxr-xr-x
2026-07-17 21:22
settings-backgrounds_save.cgi
1.63
KB
-rwxr-xr-x
2026-07-17 21:22
settings-editor_favorites_read.cgi
897
B
-rwxr-xr-x
2026-07-17 21:22
settings-editor_favorites_write.cgi
574
B
-rwxr-xr-x
2026-07-17 21:22
settings-editor_read.cgi
2.38
KB
-rwxr-xr-x
2026-07-17 21:22
settings-editor_write.cgi
973
B
-rwxr-xr-x
2026-07-17 21:22
settings-favorites_save.cgi
632
B
-rwxr-xr-x
2026-07-17 21:22
settings-lib.pl
651
B
-rw-r--r--
2026-07-17 21:17
settings-logos.cgi
4.61
KB
-rwxr-xr-x
2026-07-17 21:22
settings-logos_save.cgi
2.34
KB
-rwxr-xr-x
2026-07-17 21:22
stats-lib-funcs.pl
16.76
KB
-rw-r--r--
2026-07-17 21:17
stats-lib.pl
432
B
-rw-r--r--
2026-07-17 21:17
stats.cgi
4.2
KB
-rwxr-xr-x
2026-07-17 21:22
stats.pl
7.83
KB
-rwxr-xr-x
2026-07-17 21:22
sysinfo.cgi
7.69
KB
-rwxr-xr-x
2026-07-17 21:22
tconfig-lib.pl
38.67
KB
-rw-r--r--
2026-07-17 21:17
tconfig.cgi
4.44
KB
-rwxr-xr-x
2026-07-17 21:22
theme-update.sh
8.21
KB
-rwxr-xr-x
2026-07-17 21:17
theme.info
374
B
-rw-r--r--
2026-07-17 21:17
theme.info.no
24
B
-rw-r--r--
2026-07-17 21:17
uconfig.cgi
6.29
KB
-rwxr-xr-x
2026-07-17 21:22
uconfig_save.cgi
1.99
KB
-rwxr-xr-x
2026-07-17 21:22
uninstall-usermin.pl
170
B
-rwxr-xr-x
2026-07-17 21:22
uninstall.pl
346
B
-rwxr-xr-x
2026-07-17 21:22
xhr-lib.pl
25.18
KB
-rw-r--r--
2026-07-17 21:17
xhr.cgi
355
B
-rwxr-xr-x
2026-07-17 21:22
Save
Rename
#!/usr/bin/perl # # Authentic Theme (https://github.com/authentic-theme/authentic-theme) # Copyright Jamie Cameron <jamie@virtualmin.com> # Copyright Ilia Rostovtsev <ilia@virtualmin.com> # Licensed under MIT (https://github.com/authentic-theme/authentic-theme/blob/master/LICENSE) # use strict; use warnings; our (%gconfig, %text, %in, $root_directory, $config_directory, $current_lang, $default_lang, %theme_text); require("$ENV{'THEME_ROOT'}/authentic-lib.pl"); require("$root_directory/config-lib.pl"); my (%access, %module_info, %info, %newconfig, @info_order, @sections, $help, $idx, $sname, $section, $module, $module_dir, $module_dir_conf_file, %moduletext); $module = $in{'module'} || $ARGV[0]; %module_info = &get_module_info($module); %module_info || &error($text{'config_emodule'}); &foreign_available($module) || $module_info{'noacl'} || &error($text{'config_eaccess'}); %access = &get_module_acl(undef, $module); $access{'noconfig'} && &error($text{'config_ecannot'}); if (-r &help_file($module, "config_intro")) { $help = ["config_intro", $module]; } else { $help = undef; } &ui_print_header(&text('config_dir', "<span>" . $module_info{'desc'} . "</span>"), $text{'config_title'}, "", $help, 0, 1); $module_dir = &module_root_directory($module); $module_dir_conf_file = "$module_dir/config.info"; if ($current_lang && $default_lang && $current_lang ne $default_lang && -r "$module_dir_conf_file.$current_lang") { $module_dir_conf_file .= ".$current_lang"; } # Read the config.info file to find sections &read_file($module_dir_conf_file, \%info, \@info_order); # Call any config preload function if (&foreign_require($module) && &foreign_defined($module, 'config_pre_load')) { &foreign_call($module, "config_pre_load", \%info, \@info_order); } my @config_quick_access; my $config_quick_access_section; my $config_quick_access_category; foreach my $i (@info_order) { my @p = split(/,/, $info{$i}); if ($p[1] == 11) { push(@sections, [$i, $p[0]]); $config_quick_access_section = $i; $config_quick_access_category = $p[0]; } else { my $value = $p[0]; $value =~ s/<(?:[^>'"]*|(['"]).*?\1)*>//gs; $value = &entities_to_ascii($value); push(@config_quick_access, { value => $value, section => $config_quick_access_section, data => { category => $config_quick_access_category } }); } } if (@sections > 1) { print ' <script type="application/javascript">'; print 'var config_quick_access = ' . convert_to_json(\@config_quick_access); print "</script>\n"; # Work out template section to edit $in{'section'} ||= $sections[0]->[0]; $idx = &indexof($in{'section'}, map {$_->[0]} @sections); if ($in{'nprev'}) { $idx--; $idx = @sections - 1 if ($idx < 0); } elsif ($in{'nnext'}) { $idx++; $idx = 0 if ($idx >= @sections); } $in{'section'} = $sections[$idx]->[0]; # We have some sections .. show a menu to select print &ui_form_start("config.cgi"); print &ui_hidden("module", $module), "\n"; print &hidden_config_cparams(\%in); print &ui_span_local($theme_text{'settings_config_configuration_category'}, 'row-block-label') . "\n"; print &ui_select("section", $in{'section'}, \@sections, 1, 0, 0, 0, "onChange='form.submit()'"); print &ui_button_group_local( ( &ui_dropdown_local([(&ui_textbox('search'))], { 'title' => $theme_text{'config_search_options_all'}, 'icon' => 'fa fa-md fa-file-find', 'container-class' => 'elm-rel-z config-search', 'button-class' => 'btn-default elm-rel-z heighter-28 pd-lr-8', 'ul-class' => 'pd-tb-0', } ) . &ui_submit($theme_text{'extensions_mail_pagination_left'}, "nprev", undef, undef, "fa fa-fw fa-arrow-circle-o-left", "heighter-28 margined-left-5") . &ui_submit($theme_text{'extensions_mail_pagination_right'}, "nnext", undef, undef, "fa fa-fw fa-arrow-circle-o-right", "heighter-28" ) ), 'end_submits'); print &ui_form_end(); ($section) = grep {$_->[0] eq $in{'section'}} @sections; $sname = "$section->[1]"; } $sname = $theme_text{'theme_xhred_config_configurable_options'} if (!$sname); print &ui_form_start("config_save.cgi", "post"); print &ui_hidden("module", $module), "\n"; print &ui_hidden("section", $in{'section'}), "\n"; print &hidden_config_cparams(\%in); if ($section) { # Find next section $idx = &indexof($section, @sections); if ($idx == @sections - 1) { print &ui_hidden("section_next", $sections[0]->[0]); } else { print &ui_hidden("section_next", $sections[$idx + 1]->[0]); } } print &ui_table_start($sname, "width=100%", 2); # Load module config defaults (fill missing) my $moddefconf = "$module_dir/config"; $moddefconf = "$module_dir/config-$gconfig{'os_type'}" if (-r "$module_dir/config-$gconfig{'os_type'}"); &read_file($moddefconf, \%newconfig); # Load module config custom &read_file("$config_directory/$module/config", \%newconfig); # Load module config user custom &load_module_preferences($module, \%newconfig); my $func; if (-r "$module_dir/config_info.pl") { # Module has a custom config editor &foreign_require($module, "config_info.pl"); my $fn = "${module}::config_form"; if (defined(&$fn)) { $func++; &foreign_call($module, "config_form", \%newconfig); } } if (!$func) { # Use config.info to create config inputs &generate_config(\%newconfig, "$module_dir/config.info", $module, undef, undef, $in{'section'}); } print &ui_table_end(); print &ui_form_end([["save", $text{'save'}], $section ? (["save_next", $theme_text{'settings_config_save_and_next'}]) : ()]); %moduletext = &load_language($module); &ui_print_footer(navigation_link_clean(&link_config_cparams($module, \%in)), $moduletext{'index_return'} || $text{'index'});