#!/usr/bin/perl # newkey.cgi # Create a new SSL key for Usermin require './usermin-lib.pl'; $access{'ssl'} || &error($text{'acl_ecannot'}); &ReadParse(); # Validate inputs &error_setup($text{'newkey_err'}); $in{'commonName_def'} || $in{'commonName'} =~ /^[A-Za-z0-9\.\-\*]+$/ || &error($text{'newkey_ecn'}); $in{'newfile'} || &error($text{'newkey_efile'}); $in{'size_def'} || $in{'size'} =~ /^\d+$/ || &error($text{'newkey_esize'}); $in{'days'} =~ /^\d+$/ || &error($text{'newkey_edays'}); &ui_print_header(undef, $text{'newkey_title'}, ""); %aclconfig = &foreign_config('acl'); &foreign_require("acl", "acl-lib.pl"); if (!($cmd = &acl::get_ssleay())) { print "<p>",&text('newkey_ecmd', "<tt>$aclconfig{'ssleay'}</tt>", "@{[&get_webprefix()]}/config.cgi?acl"),"<p>\n"; &ui_print_footer("", $text{'index_return'}); exit; } # Create key file $ctemp = &transname(); $ktemp = &transname(); $outtemp = &transname(); $size = $in{'size_def'} ? $default_key_size : $in{'size'}; &open_execute_command(CA, "$cmd req -newkey rsa:$size -x509 -nodes -out ".quotemeta($ctemp)." -keyout ".quotemeta($ktemp)." -days $in{'days'} >".quotemeta($outtemp)." 2>&1", 0); print CA ($in{'countryName'} || "."),"\n"; print CA ($in{'stateOrProvinceName'} || "."),"\n"; print CA ($in{'cityName'} || "."),"\n"; print CA ($in{'organizationName'} || "."),"\n"; print CA ($in{'organizationalUnitName'} || "."),"\n"; print CA ($in{'commonName_def'} ? "*" : $in{'commonName'}),"\n"; print CA ($in{'emailAddress'} || "."),"\n"; close(CA); $rv = $?; $qouttemp = quotemeta($outtemp); $out = `cat $qouttemp`; &unlink_file($outtemp); if (!-r $ctemp || !-r $ktemp || $?) { print "<p>$text{'newkey_essl'}<br>\n"; print "<pre>$out</pre>\n"; &ui_print_footer("", $text{'index_return'}); exit; } &lock_file($in{'newfile'}); &execute_command("cat ".quotemeta($ctemp)." ".quotemeta($ktemp)." 2>&1 >'$in{'newfile'}'", undef, \$catout); &unlink_file($ctemp); &unlink_file($ktemp); if ($catout || $?) { print "<p>$text{'newkey_ecat'}<br>\n"; print "<pre>$catout</pre>\n"; &ui_print_footer("", $text{'index_return'}); exit; } &set_ownership_permissions(0, 0, 0600, $in{'newfile'}); &unlock_file($in{'newfile'}); print "<p>$text{'newkey_ok'}<br>\n"; $key = `cat '$in{'newfile'}'`; print "<pre>$key</pre>"; &ui_print_footer("", $text{'index_return'}); # Configure usermin to use the new file if ($in{'usenew'}) { &lock_file($usermin_miniserv_config); &get_usermin_miniserv_config(\%miniserv); $miniserv{'keyfile'} = $in{'newfile'}; delete($miniserv{'certfile'}); &put_usermin_miniserv_config(\%miniserv); &unlock_file($usermin_miniserv_config); &restart_usermin_miniserv(); &webmin_log("newkey", undef, undef, \%in); }
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
images | Folder | 0755 |
|
|
lang | Folder | 0755 |
|
|
CHANGELOG | File | 3.94 KB | 0644 |
|
acl_security.pl | File | 1.37 KB | 0755 |
|
backup_config.pl | File | 2.17 KB | 0755 |
|
bootup.cgi | File | 1.12 KB | 0755 |
|
cgi_args.pl | File | 160 B | 0755 |
|
change_access.cgi | File | 783 B | 0755 |
|
change_advanced.cgi | File | 1.57 KB | 0755 |
|
change_anon.cgi | File | 758 B | 0755 |
|
change_bind.cgi | File | 2.96 KB | 0755 |
|
change_lang.cgi | File | 489 B | 0755 |
|
change_mobile.cgi | File | 989 B | 0755 |
|
change_os.cgi | File | 1.9 KB | 0755 |
|
change_referers.cgi | File | 462 B | 0755 |
|
change_session.cgi | File | 5.15 KB | 0755 |
|
change_ssl.cgi | File | 2.44 KB | 0755 |
|
change_theme.cgi | File | 675 B | 0755 |
|
change_twofactor.cgi | File | 1.07 KB | 0755 |
|
change_ui.cgi | File | 1.55 KB | 0755 |
|
change_users.cgi | File | 1.19 KB | 0755 |
|
change_web.cgi | File | 2.8 KB | 0755 |
|
clear_blocked.cgi | File | 126 B | 0755 |
|
clone_mod.cgi | File | 1.53 KB | 0755 |
|
config | File | 85 B | 0644 |
|
config.info | File | 242 B | 0644 |
|
config.info.ar | File | 315 B | 0644 |
|
config.info.ca | File | 287 B | 0644 |
|
config.info.cs | File | 287 B | 0644 |
|
config.info.de | File | 275 B | 0644 |
|
config.info.es | File | 298 B | 0644 |
|
config.info.fa | File | 221 B | 0644 |
|
config.info.fi | File | 273 B | 0644 |
|
config.info.fr | File | 300 B | 0644 |
|
config.info.hu | File | 0 B | 0644 |
|
config.info.it | File | 304 B | 0644 |
|
config.info.ja | File | 275 B | 0644 |
|
config.info.ms | File | 264 B | 0644 |
|
config.info.nl | File | 266 B | 0644 |
|
config.info.no | File | 244 B | 0644 |
|
config.info.pl | File | 290 B | 0644 |
|
config.info.pt_BR | File | 54 B | 0644 |
|
config.info.ru | File | 62 B | 0644 |
|
config.info.uk | File | 63 B | 0644 |
|
config.info.zh_TW | File | 34 B | 0644 |
|
copycert.cgi | File | 1.58 KB | 0755 |
|
defaultacl | File | 269 B | 0644 |
|
delete_mod.cgi | File | 2.14 KB | 0755 |
|
delete_session.cgi | File | 317 B | 0755 |
|
download_cert.cgi | File | 575 B | 0755 |
|
edit_access.cgi | File | 1.22 KB | 0755 |
|
edit_acl.cgi | File | 620 B | 0755 |
|
edit_advanced.cgi | File | 2.05 KB | 0755 |
|
edit_anon.cgi | File | 807 B | 0755 |
|
edit_assignment.cgi | File | 1.18 KB | 0755 |
|
edit_bind.cgi | File | 2.08 KB | 0755 |
|
edit_blocked.cgi | File | 892 B | 0755 |
|
edit_categories.cgi | File | 2.03 KB | 0755 |
|
edit_configs.cgi | File | 2.68 KB | 0755 |
|
edit_dav.cgi | File | 1.75 KB | 0755 |
|
edit_defacl.cgi | File | 692 B | 0755 |
|
edit_descs.cgi | File | 846 B | 0755 |
|
edit_ipkey.cgi | File | 1.62 KB | 0755 |
|
edit_lang.cgi | File | 1.79 KB | 0755 |
|
edit_logout.cgi | File | 1.16 KB | 0755 |
|
edit_mobile.cgi | File | 1.14 KB | 0755 |
|
edit_mods.cgi | File | 4.49 KB | 0755 |
|
edit_os.cgi | File | 3.04 KB | 0755 |
|
edit_referers.cgi | File | 937 B | 0755 |
|
edit_restrict.cgi | File | 2.05 KB | 0755 |
|
edit_session.cgi | File | 6.01 KB | 0755 |
|
edit_ssl.cgi | File | 6.24 KB | 0755 |
|
edit_themes.cgi | File | 3.28 KB | 0755 |
|
edit_twofactor.cgi | File | 1.65 KB | 0755 |
|
edit_ui.cgi | File | 2.67 KB | 0755 |
|
edit_upgrade.cgi | File | 4.05 KB | 0755 |
|
edit_users.cgi | File | 1.19 KB | 0755 |
|
edit_web.cgi | File | 3.08 KB | 0755 |
|
export_mod.cgi | File | 1.33 KB | 0755 |
|
feedback_files.pl | File | 137 B | 0755 |
|
index.cgi | File | 3.64 KB | 0755 |
|
install_check.pl | File | 530 B | 0755 |
|
install_mod.cgi | File | 2.68 KB | 0755 |
|
install_theme.cgi | File | 2.19 KB | 0755 |
|
list_configs.cgi | File | 780 B | 0755 |
|
list_restrict.cgi | File | 1.51 KB | 0755 |
|
list_sessions.cgi | File | 1.42 KB | 0755 |
|
log_parser.pl | File | 1.49 KB | 0755 |
|
module.info | File | 217 B | 0644 |
|
module.info.af | File | 0 B | 0644 |
|
module.info.af.auto | File | 130 B | 0644 |
|
module.info.ar | File | 133 B | 0644 |
|
module.info.ar.auto | File | 16 B | 0644 |
|
module.info.be | File | 0 B | 0644 |
|
module.info.be.auto | File | 229 B | 0644 |
|
module.info.bg | File | 0 B | 0644 |
|
module.info.bg.auto | File | 251 B | 0644 |
|
module.info.ca | File | 131 B | 0644 |
|
module.info.ca.auto | File | 16 B | 0644 |
|
module.info.cs | File | 29 B | 0644 |
|
module.info.cs.auto | File | 116 B | 0644 |
|
module.info.da | File | 0 B | 0644 |
|
module.info.da.auto | File | 129 B | 0644 |
|
module.info.de | File | 122 B | 0644 |
|
module.info.de.auto | File | 16 B | 0644 |
|
module.info.el | File | 0 B | 0644 |
|
module.info.el.auto | File | 212 B | 0644 |
|
module.info.es | File | 34 B | 0644 |
|
module.info.es.auto | File | 127 B | 0644 |
|
module.info.eu | File | 0 B | 0644 |
|
module.info.eu.auto | File | 164 B | 0644 |
|
module.info.fa | File | 0 B | 0644 |
|
module.info.fa.auto | File | 190 B | 0644 |
|
module.info.fi | File | 26 B | 0644 |
|
module.info.fi.auto | File | 103 B | 0644 |
|
module.info.fr | File | 33 B | 0644 |
|
module.info.fr.auto | File | 123 B | 0644 |
|
module.info.he | File | 0 B | 0644 |
|
module.info.he.auto | File | 182 B | 0644 |
|
module.info.hr | File | 0 B | 0644 |
|
module.info.hr.auto | File | 154 B | 0644 |
|
module.info.hu | File | 31 B | 0644 |
|
module.info.hu.auto | File | 120 B | 0644 |
|
module.info.it | File | 34 B | 0644 |
|
module.info.it.auto | File | 114 B | 0644 |
|
module.info.ja | File | 23 B | 0644 |
|
module.info.ja.auto | File | 135 B | 0644 |
|
module.info.ko | File | 0 B | 0644 |
|
module.info.ko.auto | File | 140 B | 0644 |
|
module.info.lt | File | 0 B | 0644 |
|
module.info.lt.auto | File | 162 B | 0644 |
|
module.info.lv | File | 0 B | 0644 |
|
module.info.lv.auto | File | 143 B | 0644 |
|
module.info.ms | File | 120 B | 0644 |
|
module.info.ms.auto | File | 16 B | 0644 |
|
module.info.mt | File | 0 B | 0644 |
|
module.info.mt.auto | File | 152 B | 0644 |
|
module.info.nl | File | 29 B | 0644 |
|
module.info.nl.auto | File | 103 B | 0644 |
|
module.info.no | File | 30 B | 0644 |
|
module.info.no.auto | File | 119 B | 0644 |
|
module.info.pl | File | 120 B | 0644 |
|
module.info.pl.auto | File | 16 B | 0644 |
|
module.info.pt | File | 0 B | 0644 |
|
module.info.pt.auto | File | 153 B | 0644 |
|
module.info.pt_BR | File | 37 B | 0644 |
|
module.info.pt_BR.auto | File | 125 B | 0644 |
|
module.info.ro | File | 0 B | 0644 |
|
module.info.ro.auto | File | 154 B | 0644 |
|
module.info.ru | File | 35 B | 0644 |
|
module.info.ru.auto | File | 200 B | 0644 |
|
module.info.sk | File | 0 B | 0644 |
|
module.info.sk.auto | File | 146 B | 0644 |
|
module.info.sl | File | 0 B | 0644 |
|
module.info.sl.auto | File | 155 B | 0644 |
|
module.info.sv | File | 0 B | 0644 |
|
module.info.sv.auto | File | 142 B | 0644 |
|
module.info.th | File | 0 B | 0644 |
|
module.info.th.auto | File | 258 B | 0644 |
|
module.info.tr | File | 0 B | 0644 |
|
module.info.tr.auto | File | 150 B | 0644 |
|
module.info.uk | File | 0 B | 0644 |
|
module.info.uk.auto | File | 258 B | 0644 |
|
module.info.ur | File | 0 B | 0644 |
|
module.info.ur.auto | File | 192 B | 0644 |
|
module.info.vi | File | 0 B | 0644 |
|
module.info.vi.auto | File | 163 B | 0644 |
|
module.info.zh | File | 0 B | 0644 |
|
module.info.zh.auto | File | 114 B | 0644 |
|
module.info.zh_TW | File | 25 B | 0644 |
|
module.info.zh_TW.auto | File | 98 B | 0644 |
|
move.cgi | File | 606 B | 0755 |
|
newkey.cgi | File | 2.64 KB | 0755 |
|
restart.cgi | File | 110 B | 0755 |
|
save_acl.cgi | File | 355 B | 0755 |
|
save_assignment.cgi | File | 588 B | 0755 |
|
save_categories.cgi | File | 1.05 KB | 0755 |
|
save_configs.cgi | File | 751 B | 0755 |
|
save_dav.cgi | File | 1019 B | 0755 |
|
save_defacl.cgi | File | 626 B | 0755 |
|
save_descs.cgi | File | 585 B | 0755 |
|
save_ipkey.cgi | File | 1.49 KB | 0755 |
|
save_logout.cgi | File | 1022 B | 0755 |
|
save_restrict.cgi | File | 1.31 KB | 0755 |
|
save_uconfigs.cgi | File | 1.38 KB | 0755 |
|
savekey.cgi | File | 2.4 KB | 0755 |
|
start.cgi | File | 200 B | 0755 |
|
stop.cgi | File | 203 B | 0755 |
|
switch.cgi | File | 317 B | 0755 |
|
syslog_logs.pl | File | 651 B | 0755 |
|
uninstall.pl | File | 350 B | 0755 |
|
update.cgi | File | 3.55 KB | 0755 |
|
update.pl | File | 3.71 KB | 0755 |
|
update_sched.cgi | File | 1.98 KB | 0755 |
|
upgrade.cgi | File | 9.81 KB | 0755 |
|
usermin-lib.pl | File | 26.86 KB | 0755 |
|