Merge pull request #877 from pcfreak30/feature/800

Letsencrypt Improvements
This commit is contained in:
Serghey Rodin 2016-10-20 16:04:29 +03:00 committed by GitHub
commit db04a00bca
5 changed files with 49 additions and 28 deletions

View file

@ -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"
} }

View file

@ -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)

View file

@ -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);

View file

@ -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);

View file

@ -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">