Project

General

Profile

Actions

Bug #14592

closed

Issues with ACME Private Key handling

Added by Jim Pingle 9 months ago. Updated 9 months ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
ACME
Target version:
-
Start date:
Due date:
% Done:

100%

Estimated time:
Plus Target Version:
Affected Version:
Affected Plus Version:
Affected Architecture:

Description

There are some problems with private key handling in the ACME package that appear to have been ongoing for a while.

  • The ACME package code attempts to generate a private key based on the current entry settings, but this may be skipped if the key file already exists, even if the settings changed.
  • When issuing or renewing a certificate, the pre-generated key can be ignored, defaulting to a 2048-bit RSA key no matter what settings are present in the ACME certificate entry.
  • If the certificate manager entry corresponding to an ACME certificate entry is missing its private key, it can lead to a PHP error: https://forum.netgate.com/topic/181346/acme-certificate-php-fatal-error
PHP Fatal error:  Uncaught TypeError: openssl_pkey_get_details(): Argument #1 ($key) must be of type OpenSSLAsymmetricKey, bool given in /usr/local/pkg/acme/acme.inc:1732
Stack trace:
#0 /usr/local/pkg/acme/acme.inc(1732): openssl_pkey_get_details(false)
#1 /usr/local/pkg/acme/acme.inc(1884): pfsense_pkg\acme\getCertificatePSK('https://acme-st...', Array, 'pfsense.ionutda...')
#2 /usr/local/www/acme/acme_certificates.php(61): pfsense_pkg\acme\issue_certificate('pfsense.ionutda...', true)
#3 {main}
  thrown in /usr/local/pkg/acme/acme.inc on line 1732

I have a fix prepared for all of these, will be committed shortly and be available as ACME pkg v0.7.5

Actions #1

Updated by Jim Pingle 9 months ago

  • Status changed from In Progress to Feedback
  • % Done changed from 0 to 100

Commit: https://github.com/pfsense/FreeBSD-ports/commit/2b3c7e925fed1d53763e6d2eee5e5ab2289b4116

Packages are built and available now for Plus 23.05.1 and CE 2.7.0, dev snapshots will get them in the next overnight build.

Actions #2

Updated by Danilo Zrenjanin 9 months ago

I couldn't reproduce any of the listed issues on the 0.7.5 Acme package.

I am marking this case resolved.

Actions #3

Updated by Danilo Zrenjanin 9 months ago

  • Status changed from Feedback to Resolved
Actions

Also available in: Atom PDF