mirror of
https://github.com/myvesta/vesta
synced 2025-08-19 04:50:47 -07:00
Merge pull request #877 from pcfreak30/feature/800
Letsencrypt Improvements
This commit is contained in:
commit
db04a00bca
5 changed files with 49 additions and 28 deletions
|
@ -31,6 +31,7 @@ json_list() {
|
||||||
"STATS_USER": "'$STATS_USER'",
|
"STATS_USER": "'$STATS_USER'",
|
||||||
"SSL": "'$SSL'",
|
"SSL": "'$SSL'",
|
||||||
"SSL_HOME": "'$SSL_HOME'",
|
"SSL_HOME": "'$SSL_HOME'",
|
||||||
|
"LETSENCRYPT": "'$LETSENCRYPT'",
|
||||||
"FTP_USER": "'$FTP_USER'",
|
"FTP_USER": "'$FTP_USER'",
|
||||||
"FTP_PATH": "'$FTP_PATH'",
|
"FTP_PATH": "'$FTP_PATH'",
|
||||||
"AUTH_USER": "'$AUTH_USER'",
|
"AUTH_USER": "'$AUTH_USER'",
|
||||||
|
@ -56,6 +57,9 @@ shell_list() {
|
||||||
fi
|
fi
|
||||||
if [ ! -z "$SSL" ] && [ "$SSL" != 'no' ]; then
|
if [ ! -z "$SSL" ] && [ "$SSL" != 'no' ]; then
|
||||||
echo "SSL: $SSL / $SSL_HOME"
|
echo "SSL: $SSL / $SSL_HOME"
|
||||||
|
if [ ! -z "$LETSENCRYPT" ] && [ "$LETSENCRYPT" != 'no' ]; then
|
||||||
|
echo "LETSENCRYPT: $LETSENCRYPT"
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
echo "TEMPLATE: $TPL"
|
echo "TEMPLATE: $TPL"
|
||||||
if [ ! -z "$WEB_BACKEND" ]; then
|
if [ ! -z "$WEB_BACKEND" ]; then
|
||||||
|
@ -84,7 +88,7 @@ shell_list() {
|
||||||
# PLAIN list function
|
# PLAIN list function
|
||||||
plain_list() {
|
plain_list() {
|
||||||
echo -ne "$DOMAIN\t$IP\t$IP6\t$U_DISK\t$U_BANDWIDTH\t$TPL\t"
|
echo -ne "$DOMAIN\t$IP\t$IP6\t$U_DISK\t$U_BANDWIDTH\t$TPL\t"
|
||||||
echo -ne "$ALIAS\t$STATS\t$STATS_USER\t$SSL\t$SSL_HOME\t"
|
echo -ne "$ALIAS\t$STATS\t$STATS_USER\t$SSL\t$SSL_HOME\t,$LETSENCRYPT"
|
||||||
echo -ne "$FTP_USER\t$FTP_PATH\t$AUTH_USER\t$BACKEND\t$PROXY\t"
|
echo -ne "$FTP_USER\t$FTP_PATH\t$AUTH_USER\t$BACKEND\t$PROXY\t"
|
||||||
echo -e "$PROXY_EXT\t$SUSPENDED\t$TIME\t$DATE"
|
echo -e "$PROXY_EXT\t$SUSPENDED\t$TIME\t$DATE"
|
||||||
}
|
}
|
||||||
|
@ -92,10 +96,10 @@ plain_list() {
|
||||||
# CSV list function
|
# CSV list function
|
||||||
csv_list() {
|
csv_list() {
|
||||||
echo -n "DOMAIN,IP,IP6,U_DISK,U_BANDWIDTH,TPL,ALIAS,STATS,STATS_USER,SSL,"
|
echo -n "DOMAIN,IP,IP6,U_DISK,U_BANDWIDTH,TPL,ALIAS,STATS,STATS_USER,SSL,"
|
||||||
echo -n "SSL_HOME,FTP_USER,FTP_PATH,AUTH_USER,BACKEND,PROXY,PROXY_EXT,"
|
echo -n "SSL_HOME,LETSENCRYPT,FTP_USER,FTP_PATH,AUTH_USER,BACKEND,PROXY,PROXY_EXT,"
|
||||||
echo "SUSPENDED,TIME,DATE"
|
echo "SUSPENDED,TIME,DATE"
|
||||||
echo -n "$DOMAIN,$IP,$IP6,$U_DISK,$U_BANDWIDTH,$TPL,\"$ALIAS\",$STATS"
|
echo -n "$DOMAIN,$IP,$IP6,$U_DISK,$U_BANDWIDTH,$TPL,\"$ALIAS\",$STATS"
|
||||||
echo -n "\"$STATS_USER\",$SSL,$SSL_HOME,\"$FTP_USER\",\"$FTP_PATH\","
|
echo -n "\"$STATS_USER\",$SSL,$SSL_HOME,$LETSENCRYPT,\"$FTP_USER\",\"$FTP_PATH\","
|
||||||
echo -n "\"$AUTH_USER\",$BACKEND,$PROXY,\"$PROXY_EXT\",$SUSPENDED,$TIME,"
|
echo -n "\"$AUTH_USER\",$BACKEND,$PROXY,\"$PROXY_EXT\",$SUSPENDED,$TIME,"
|
||||||
echo "$DATE"
|
echo "$DATE"
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,6 +35,7 @@ json_list() {
|
||||||
"STATS_USER": "'$STATS_USER'",
|
"STATS_USER": "'$STATS_USER'",
|
||||||
"SSL": "'$SSL'",
|
"SSL": "'$SSL'",
|
||||||
"SSL_HOME": "'$SSL_HOME'",
|
"SSL_HOME": "'$SSL_HOME'",
|
||||||
|
"LETSENCRYPT": "'$LETSENCRYPT'",
|
||||||
"FTP_USER": "'$FTP_USER'",
|
"FTP_USER": "'$FTP_USER'",
|
||||||
"FTP_PATH": "'$FTP_PATH'",
|
"FTP_PATH": "'$FTP_PATH'",
|
||||||
"AUTH_USER": "'$AUTH_USER'",
|
"AUTH_USER": "'$AUTH_USER'",
|
||||||
|
@ -58,11 +59,11 @@ json_list() {
|
||||||
# SHELL list function
|
# SHELL list function
|
||||||
shell_list() {
|
shell_list() {
|
||||||
IFS=$'\n'
|
IFS=$'\n'
|
||||||
echo "DOMAIN IP TPL SSL DISK BW SPND DATE"
|
echo "DOMAIN IP TPL SSL LETSENCRYPT DISK BW SPND DATE "
|
||||||
echo "------ -- --- --- ---- -- ---- ----"
|
echo "------ -- --- --- ----------- ---- -- ---- ----------"
|
||||||
while read str; do
|
while read str; do
|
||||||
eval $str
|
eval $str
|
||||||
echo "$DOMAIN $IP $TPL $SSL $U_DISK $U_BANDWIDTH $SUSPENDED $DATE"
|
echo "$DOMAIN $IP $TPL $SSL $LETSENCRYPT $U_DISK $U_BANDWIDTH $SUSPENDED $DATE"
|
||||||
done < <(cat $USER_DATA/web.conf)
|
done < <(cat $USER_DATA/web.conf)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -72,7 +73,7 @@ plain_list() {
|
||||||
while read str; do
|
while read str; do
|
||||||
eval $str
|
eval $str
|
||||||
echo -ne "$DOMAIN\t$IP\t$IP6\t$U_DISK\t$U_BANDWIDTH\t$TPL\t"
|
echo -ne "$DOMAIN\t$IP\t$IP6\t$U_DISK\t$U_BANDWIDTH\t$TPL\t"
|
||||||
echo -ne "$ALIAS\t$STATS\t$STATS_USER\t$SSL\t$SSL_HOME\t"
|
echo -ne "$ALIAS\t$STATS\t$STATS_USER\t$SSL\t$SSL_HOME\t$LETSENCRYPT\t"
|
||||||
echo -ne "$FTP_USER\t$FTP_PATH\t$AUTH_USER\t$BACKEND\t$PROXY\t"
|
echo -ne "$FTP_USER\t$FTP_PATH\t$AUTH_USER\t$BACKEND\t$PROXY\t"
|
||||||
echo -e "$PROXY_EXT\t$SUSPENDED\t$TIME\t$DATE"
|
echo -e "$PROXY_EXT\t$SUSPENDED\t$TIME\t$DATE"
|
||||||
done < <(cat $USER_DATA/web.conf)
|
done < <(cat $USER_DATA/web.conf)
|
||||||
|
@ -82,12 +83,12 @@ plain_list() {
|
||||||
csv_list() {
|
csv_list() {
|
||||||
IFS=$'\n'
|
IFS=$'\n'
|
||||||
echo -n "DOMAIN,IP,IP6,U_DISK,U_BANDWIDTH,TPL,ALIAS,STATS,STATS_USER,"
|
echo -n "DOMAIN,IP,IP6,U_DISK,U_BANDWIDTH,TPL,ALIAS,STATS,STATS_USER,"
|
||||||
echo -n "SSL,SSL_HOME,FTP_USER,FTP_PATH,AUTH_USER,BACKEND,PROXY,"
|
echo -n "SSL,SSL_HOME,LETSENCRYPT,FTP_USER,FTP_PATH,AUTH_USER,BACKEND,PROXY,"
|
||||||
echo "PROXY_EXT,SUSPENDED,TIME,DATE"
|
echo "PROXY_EXT,SUSPENDED,TIME,DATE"
|
||||||
while read str; do
|
while read str; do
|
||||||
eval $str
|
eval $str
|
||||||
echo -n "$DOMAIN,$IP,$IP6,$U_DISK,$U_BANDWIDTH,$TPL,"
|
echo -n "$DOMAIN,$IP,$IP6,$U_DISK,$U_BANDWIDTH,$TPL,"
|
||||||
echo -n "\"$ALIAS\",$STATS,\"$STATS_USER\",$SSL,$SSL_HOME,"
|
echo -n "\"$ALIAS\",$STATS,\"$STATS_USER\",$SSL,$SSL_HOME,$LETSENCRYPT,"
|
||||||
echo -n "\"$FTP_USER\",\"$FTP_PATH\",\"$AUTH_USER\",$BACKEND,$PROXY,"
|
echo -n "\"$FTP_USER\",\"$FTP_PATH\",\"$AUTH_USER\",$BACKEND,$PROXY,"
|
||||||
echo "\"$PROXY_EXT\",$SUSPENDED,$TIME,$DATE"
|
echo "\"$PROXY_EXT\",$SUSPENDED,$TIME,$DATE"
|
||||||
done < <(cat $USER_DATA/web.conf)
|
done < <(cat $USER_DATA/web.conf)
|
||||||
|
|
|
@ -267,26 +267,26 @@ if (!empty($_POST['save'])) {
|
||||||
// Disable Lets Encrypt support
|
// Disable Lets Encrypt support
|
||||||
|
|
||||||
if (( $v_letsencrypt == 'yes' ) && (empty($_POST['v_letsencrypt'])) && (!empty($_POST['v_letsencrypt'])) && (empty($_SESSION['error_msg']))) {
|
if (( $v_letsencrypt == 'yes' ) && (empty($_POST['v_letsencrypt'])) && (!empty($_POST['v_letsencrypt'])) && (empty($_SESSION['error_msg']))) {
|
||||||
exec (VESTA_CMD."v-add-letsencrypt-domain ".$user." ".$v_domain." '' 'no'", $output, $return_var);
|
exec (VESTA_CMD."v-delete-letsencrypt-domain ".$user." ".$v_domain." '' 'no'", $output, $return_var);
|
||||||
check_return_code($return_var,$output);
|
check_return_code($return_var,$output);
|
||||||
unset($output);
|
unset($output);
|
||||||
$v_letsencrypt = 'no';
|
$v_letsencrypt = 'no';
|
||||||
$restart_web = 'yes';
|
$restart_web = 'yes';
|
||||||
$restart_proxy = 'yes';
|
$restart_proxy = 'yes';
|
||||||
}
|
}
|
||||||
else {
|
else{
|
||||||
// Delete SSL certificate
|
// Delete SSL certificate
|
||||||
if (( $v_ssl == 'yes' ) && (empty($_POST['v_ssl'])) && (empty($_SESSION['error_msg']))) {
|
if (( $v_ssl == 'yes' ) && (empty($_POST['v_ssl'])) && (empty($_SESSION['error_msg']))) {
|
||||||
exec (VESTA_CMD."v-list-web-domain ".$user." ".$v_domain." json", $output, $return_var);
|
exec (VESTA_CMD."v-delete-web-domain-ssl ".$v_username." ".$v_domain." 'no'", $output, $return_var);
|
||||||
$data = json_decode(implode('', $output), true);
|
check_return_code($return_var,$output);
|
||||||
exec (VESTA_CMD."v-add-letsencrypt-domain ".$user." ".$v_domain." '".$data['ALIAS']."' 'no'", $output, $return_var);
|
unset($output);
|
||||||
check_return_code($return_var,$output);
|
$v_ssl = 'no';
|
||||||
unset($output);
|
$restart_web = 'yes';
|
||||||
$v_ssl = 'no';
|
$restart_proxy = 'yes';
|
||||||
$restart_web = 'yes';
|
}
|
||||||
$restart_proxy = 'yes';
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Enable Lets Encrypt support
|
||||||
if (( $v_letsencrypt == 'no' || empty( $v_letsencrypt)) && (!empty($_POST['v_letsencrypt'])) && empty($_SESSION['error_msg'])) {
|
if (( $v_letsencrypt == 'no' || empty( $v_letsencrypt)) && (!empty($_POST['v_letsencrypt'])) && empty($_SESSION['error_msg'])) {
|
||||||
exec (VESTA_CMD."v-list-web-domain ".$user." ".$v_domain." json", $output, $return_var);
|
exec (VESTA_CMD."v-list-web-domain ".$user." ".$v_domain." json", $output, $return_var);
|
||||||
$data = json_decode(implode('', $output), true);
|
$data = json_decode(implode('', $output), true);
|
||||||
|
|
|
@ -135,14 +135,14 @@ App.Actions.WEB.toggle_additional_ftp_accounts = function(elm) {
|
||||||
App.Actions.WEB.toggle_letsencrypt = function(elm) {
|
App.Actions.WEB.toggle_letsencrypt = function(elm) {
|
||||||
if ($(elm).attr('checked')) {
|
if ($(elm).attr('checked')) {
|
||||||
$('#ssltable textarea[name=v_ssl_crt],#ssltable textarea[name=v_ssl_key], #ssltable textarea[name=v_ssl_ca]').attr('disabled', 'disabled');
|
$('#ssltable textarea[name=v_ssl_crt],#ssltable textarea[name=v_ssl_key], #ssltable textarea[name=v_ssl_ca]').attr('disabled', 'disabled');
|
||||||
//$('input[name=v_ssl]').prop('checked', true);
|
$('input[name=v_ssl]').prop('checked', true);
|
||||||
//$('#ssltable').show();
|
$('#ssltable').show();
|
||||||
$('#generate-csr').hide();
|
$('#generate-csr').hide();
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$('#ssltable textarea[name=v_ssl_crt],#ssltable textarea[name=v_ssl_key], #ssltable textarea[name=v_ssl_ca]').removeAttr('disabled');
|
$('#ssltable textarea[name=v_ssl_crt],#ssltable textarea[name=v_ssl_key], #ssltable textarea[name=v_ssl_ca]').removeAttr('disabled');
|
||||||
//$('input[name=v_ssl]').prop('checked', false);
|
$('input[name=v_ssl]').prop('checked', false);
|
||||||
//$('#ssltable').hide();
|
$('#ssltable').hide();
|
||||||
$('#generate-csr').show();
|
$('#generate-csr').show();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -180,8 +180,9 @@ $(function() {
|
||||||
var elm = $(evt.target);
|
var elm = $(evt.target);
|
||||||
App.Actions.WEB.passwordChanged(elm);
|
App.Actions.WEB.passwordChanged(elm);
|
||||||
});
|
});
|
||||||
App.Actions.WEB.toggle_letsencrypt($('input[name=v_letsencrypt]'));
|
if ($('input[name=v_letsencrypt]').attr('checked')) {
|
||||||
|
App.Actions.WEB.toggle_letsencrypt($('input[name=v_letsencrypt]'))
|
||||||
|
}
|
||||||
$('select[name="v_stats"]').change(function(evt){
|
$('select[name="v_stats"]').change(function(evt){
|
||||||
var select = $(evt.target);
|
var select = $(evt.target);
|
||||||
|
|
||||||
|
|
|
@ -266,6 +266,21 @@ sort-name="<?=$key?>" sort-bandwidth="<?=$data[$key]['U_BANDWIDTH']?>" sort-dis
|
||||||
<? } ?>
|
<? } ?>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td></td>
|
||||||
|
<td>
|
||||||
|
<? if(empty($data[$key]['LETSENCRYPT']) || $data[$key]['LETSENCRYPT'] == 'no') { ?>
|
||||||
|
<div class="l-unit__stat-cols clearfix disabled"><?=__('Lets Encrypt Support')?></div>
|
||||||
|
<? } else {?>
|
||||||
|
<div class="l-unit__stat-cols clearfix">
|
||||||
|
<div class="l-unit__stat-col l-unit__stat-col--left"><?=__('Lets Encrypt Support')?>:</div>
|
||||||
|
<div class="l-unit__stat-col l-unit__stat-col--right">
|
||||||
|
<b><?=__($data[$key]['LETSENCRYPT'])?></b>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<? } ?>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<div class="l-unit__stat-cols clearfix graph">
|
<div class="l-unit__stat-cols clearfix graph">
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue