Open devourer66 opened 6 months ago
Just in case
$ echo | openssl s_client -showcerts -servername acme.lan:8443/roots.pem -connect acme.lan:8443
| openssl x509 -inform pem -noout -text
Warning: Reading certificate from stdin since no -in or -new option is given
Connecting to 10.1.2.100
depth=1 O=Homelab, CN=Homelab Intermediate CA
verify error:num=20:unable to get local issuer certificate
verify return:1
depth=0 CN=Step Online CA
verify return:1
Certificate:
Data:
Version: 3 (0x2)
Serial Number:
44:60:ea:76:46:4c:cb:fb:d0:75:b7:e5:cd:3c:cc:c6
Signature Algorithm: ecdsa-with-SHA256
Issuer: O=Homelab, CN=Homelab Intermediate CA
Validity
Not Before: May 15 09:37:49 2024 GMT
Not After : May 16 09:38:49 2024 GMT
Subject: CN=Step Online CA
Subject Public Key Info:
Public Key Algorithm: id-ecPublicKey
Public-Key: (256 bit)
pub:
04:e3:84:91:f2:92:ec:df:37:d7:43:82:77:45:bb:
1e:1d:9c:b8:5d:1e:9f:75:7f:ed:84:2e:39:70:c5:
28:44:09:8d:aa:7e:b6:df:3f:d6:ee:0c:33:b6:35:
05:98:49:f4:3a:5f:ab:92:cb:71:18:3d:b3:7c:5f:
25:5f:15:85:8d
ASN1 OID: prime256v1
NIST CURVE: P-256
X509v3 extensions:
X509v3 Key Usage: critical
Digital Signature
X509v3 Extended Key Usage:
TLS Web Server Authentication, TLS Web Client Authentication
X509v3 Subject Key Identifier:
4A:C6:A2:E0:48:3F:32:01:91:EE:F7:27:0C:E6:9B:CB:CF:2E:B3:87
X509v3 Authority Key Identifier:
8F:70:91:D8:53:F3:6A:B8:F4:85:6A:5E:77:D2:75:F2:36:D4:46:9E
X509v3 Subject Alternative Name:
DNS:acme.lan, IP Address:10.1.2.100
Signature Algorithm: ecdsa-with-SHA256
Signature Value:
30:46:02:21:00:ed:ae:83:9d:bc:8a:f1:c3:47:9e:0d:c2:96:
b6:0f:68:1d:68:ea:20:c0:00:0d:4a:ec:b4:0f:7e:f3:57:9c:
f2:02:21:00:ba:40:db:47:8f:71:68:25:49:28:83:58:7e:9d:
a2:d3:11:06:db:59:4a:24:5b:bd:a5:cb:2c:0b:68:31:43:f8
Steps to Reproduce
On windows
Your Environment
Server:
Client
Expected Behavior
After enabling
crl
inca.json
it is expected:X509v3 CRL Distribution Points:
be present in the certificate that CA HTTPS server presents to clients.X509v3 CRL Distribution Points: Full Name: URI:
equates to URL configured incrl.idpURL
Actual Behavior
After enabling
crl
inca.json
,CRLDistributionPoints
wont appear on certificates that CA HTTPS server presents to clients.Additional Context
Such curl behavior is specific to windows, curl in linux does not complain.
CRL works fine (
CRLDistributionPoints
appears on certs) for myJWK
andACME
provisioners. They were configured following these guidelines https://github.com/smallstep/certificates/issues/1423#issuecomment-1581568312It seems that CA HTTPS server does not use for its certificates any particular template that the user could configure. I was not able to immediately identify any dependence on
a.config.CRL.IsEnabled()
inauthority.GetTLSCertificate
function https://github.com/smallstep/certificates/blob/9355923799d55254ed18fe2de43b206a57ca2e41/authority/tls.go#L859Contributing
Vote on this issue by adding a 👍 reaction. To contribute a fix for this issue, leave a comment (and link to your pull request, if you've opened one already).