- added 'certbot' to which command (if letsencrypt is not installed as system package, but certbot is)
| | |
| | | public function onRunJob() { |
| | | global $app, $conf; |
| | | |
| | | $letsencrypt = array_shift( explode("\n", `which letsencrypt /root/.local/share/letsencrypt/bin/letsencrypt`) ); |
| | | $letsencrypt = array_shift( explode("\n", $this->_exec('which letsencrypt certbot /root/.local/share/letsencrypt/bin/letsencrypt')) ); |
| | | if(is_executable($letsencrypt)) { |
| | | $version = trim(exec($letsencrypt . ' --version 2>/dev/null')); |
| | | if(preg_match('/^(\S+)\s+(\d+(\.\d+)+)$/', $version, $matches)) { |
| | | $type = strtolower($matches[1]); |
| | | $version = $matches[2]; |
| | | if($type != 'letsencrypt' || version_compare($version, '0.7.0', '<')) { |
| | | if(($type != 'letsencrypt' && $type != 'certbot') || version_compare($version, '0.7.0', '<')) { |
| | | exec($letsencrypt . ' -n renew'); |
| | | $app->services->restartServiceDelayed('httpd', 'reload'); |
| | | } else { |
| | |
| | | $app->log("Create Let's Encrypt SSL Cert for: $domain", LOGLEVEL_DEBUG); |
| | | |
| | | $success = false; |
| | | $letsencrypt = array_shift( explode("\n", `which letsencrypt /root/.local/share/letsencrypt/bin/letsencrypt`) ); |
| | | $letsencrypt = array_shift( explode("\n", shell_exec('which letsencrypt certbot /root/.local/share/letsencrypt/bin/letsencrypt')) ); |
| | | if(is_executable($letsencrypt)) { |
| | | $success = $this->_exec($letsencrypt . " auth --text --agree-tos --authenticator webroot --server https://acme-v01.api.letsencrypt.org/directory --rsa-key-size 4096 --email postmaster@$domain --domains $lddomain --webroot-path /usr/local/ispconfig/interface/acme"); |
| | | } |
| | |
| | | $app->log("Create Let's Encrypt SSL Cert for: $domain", LOGLEVEL_DEBUG); |
| | | |
| | | $success = false; |
| | | $letsencrypt = array_shift( explode("\n", `which letsencrypt /root/.local/share/letsencrypt/bin/letsencrypt`) ); |
| | | $letsencrypt = array_shift( explode("\n", shell_exec('which letsencrypt certbot /root/.local/share/letsencrypt/bin/letsencrypt')) ); |
| | | if(is_executable($letsencrypt)) { |
| | | $success = $this->_exec($letsencrypt . " auth --text --agree-tos --authenticator webroot --server https://acme-v01.api.letsencrypt.org/directory --rsa-key-size 4096 --email postmaster@$domain --domains $lddomain --webroot-path /usr/local/ispconfig/interface/acme"); |
| | | $success = $this->_exec($letsencrypt . " certonly --text --agree-tos --authenticator webroot --server https://acme-v01.api.letsencrypt.org/directory --rsa-key-size 4096 --email postmaster@$domain --domains $lddomain --webroot-path /usr/local/ispconfig/interface/acme"); |
| | | } |
| | | if(!$success) { |
| | | // error issuing cert |