only renew froxlor.panel LE cert if required

Signed-off-by: Michael Kaufmann (d00p) <d00p@froxlor.org>
This commit is contained in:
Michael Kaufmann (d00p)
2016-09-08 12:28:43 +02:00
parent e4887362ec
commit 08f36243e9

View File

@@ -111,7 +111,8 @@ if (Settings::Get('system.le_froxlor_enabled') == '1') {
'ssl_cert_file' => null, 'ssl_cert_file' => null,
'ssl_key_file' => null, 'ssl_key_file' => null,
'ssl_ca_file' => null, 'ssl_ca_file' => null,
'ssl_csr_file' => null 'ssl_csr_file' => null,
'id' => null
); );
$froxlor_ssl_settings_stmt = Database::prepare(" $froxlor_ssl_settings_stmt = Database::prepare("
@@ -121,6 +122,7 @@ if (Settings::Get('system.le_froxlor_enabled') == '1') {
"); ");
$froxlor_ssl = Database::pexecute_first($froxlor_ssl_settings_stmt); $froxlor_ssl = Database::pexecute_first($froxlor_ssl_settings_stmt);
$insert_or_update_required = true;
if ($froxlor_ssl) { if ($froxlor_ssl) {
$certrow['id'] = $froxlor_ssl['id']; $certrow['id'] = $froxlor_ssl['id'];
$certrow['expirationdate'] = $froxlor_ssl['expirationdate']; $certrow['expirationdate'] = $froxlor_ssl['expirationdate'];
@@ -128,7 +130,20 @@ if (Settings::Get('system.le_froxlor_enabled') == '1') {
$certrow['ssl_key_file'] = $froxlor_ssl['ssl_key_file']; $certrow['ssl_key_file'] = $froxlor_ssl['ssl_key_file'];
$certrow['ssl_ca_file'] = $froxlor_ssl['ssl_ca_file']; $certrow['ssl_ca_file'] = $froxlor_ssl['ssl_ca_file'];
$certrow['ssl_csr_file'] = $froxlor_ssl['ssl_csr_file']; $certrow['ssl_csr_file'] = $froxlor_ssl['ssl_csr_file'];
} else {
// check whether we have an entry with valid certificates which just does not need
// updating yet, so we need to skip this here
$froxlor_ssl_settings_stmt = Database::prepare("
SELECT * FROM `".TABLE_PANEL_DOMAIN_SSL_SETTINGS."` WHERE `domainid` = '0'
");
$froxlor_ssl = Database::pexecute_first($froxlor_ssl_settings_stmt);
if ($froxlor_ssl && !empty($froxlor_ssl['ssl_cert_file'])) {
$insert_or_update_required = false;
} }
}
if ($insert_or_update_required)
{
$domains = array( $domains = array(
$certrow['domain'], $certrow['domain'],
'www.'.$certrow['domain'] 'www.'.$certrow['domain']
@@ -183,6 +198,7 @@ if (Settings::Get('system.le_froxlor_enabled') == '1') {
$cronlog->logAction(CRON_ACTION, LOG_WARNING, $cronlog->logAction(CRON_ACTION, LOG_WARNING,
"Skipping Let's Encrypt generation for " . $certrow['domain'] . " due to an enabled ssl_redirect"); "Skipping Let's Encrypt generation for " . $certrow['domain'] . " due to an enabled ssl_redirect");
} }
}
} }
// customer domains // customer domains