Closed diafygi closed 6 years ago
NOTE: when the single domain is included in the SubjectAltName, ACMEv2 works fine:
$ openssl req -new -sha256 -key domain.key -subj "/" -reqexts SAN -config <(cat /etc/ssl/openssl.cnf <(printf "[SAN]\nsubjectAltName=DNS:letsencrypt.daylightpirates.org")) > domain.csr
$ python acme_scratch.py --account-key ./account.key --csr ./domain.csr --acme-dir /home/acme/challenges
Parsing account key...
Parsing CSR...
Found domains: letsencrypt.daylightpirates.org
Getting directory...
Directory found!
Registering account...
Already registered!
Creating new order...
Order created!
Verifying letsencrypt.daylightpirates.org...
letsencrypt.daylightpirates.org verified!
Signing certificate...
Certificate signed!
-----BEGIN CERTIFICATE-----
MIIGAjCCBOqgAwIBAgITAPoViJQlN4xbmth0CkTx74SUSjANBgkqhkiG9w0BAQsF
ADAiMSAwHgYDVQQDDBdGYWtlIExFIEludGVybWVkaWF0ZSBYMTAeFw0xODAxMTUw
MDEyNDBaFw0xODA0MTUwMDEyNDBaMCoxKDAmBgNVBAMTH2xldHNlbmNyeXB0LmRh
eWxpZ2h0cGlyYXRlcy5vcmcwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoIC
AQClDwgP9d74Uqr/GMs26rbuRXKDQcd77+lGyy8tLxfSccA0kvbkNhfSJbg1Whrv
kzCeBjiydoa82eZqRe9vL8bw2HhtCMJhivQ+vHjxH1pOGNi7UOJyKt98MdTrCDqd
MS0lIsgqs1UJe9xS9rOtRkM/qpM+Wfbl04HWKH1ReM/O2MDo0w2ii0scwMikYj1o
kDksLi82DUCg3+RsI3Xg8MzYM5+4p9b6iPXmaKMLc3Eu9z4KTwUemeIhak9VNkeu
OcElAIxFi5NaJ33Z9is8STgheA28WevHXXoMGwXlTRhrik5YLdyMUqfVnZYMWa+V
YRKFcaYP/T67jKtXONu59E0tQU2IWDBI6KHgtb074WdLPgt3xjKCOCI85kvZN5El
XbK0EiyE0ll1VjOgsp03QFLwEV0y0TsWzTMn9l2GK7pN9JAaNo7Njf0OBPT6FuyX
QN62EXxX7CM09BPgSz4AF9FLiXIMhE/VrYfxlz5sEFH77MfdiGTqj5ifEraLAO/j
+ehQ82P79KiUF+vUZJ7moMbXgUYjOqa1lsKsmounoISAurvjO/capZo3PJY2xi9H
+Qt8hrZ/x477BlrzqyWhfYUeQ3vCXYhATimc/hVUDtcSHUxZKmDon1kQNsgtcFl/
YDAVIl6rPTfsCDYbbDo0ljbT2RgunEoRpZN+XarlokBoEwIDAQABo4ICJzCCAiMw
DgYDVR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAM
BgNVHRMBAf8EAjAAMB0GA1UdDgQWBBT8sPpvsTCGO0vCQvHcWrt1IiacqDAfBgNV
HSMEGDAWgBTAzANGuVggzFxycPPhLssgpvVoOjB3BggrBgEFBQcBAQRrMGkwMgYI
KwYBBQUHMAGGJmh0dHA6Ly9vY3NwLnN0Zy1pbnQteDEubGV0c2VuY3J5cHQub3Jn
MDMGCCsGAQUFBzAChidodHRwOi8vY2VydC5zdGctaW50LXgxLmxldHNlbmNyeXB0
Lm9yZy8wKgYDVR0RBCMwIYIfbGV0c2VuY3J5cHQuZGF5bGlnaHRwaXJhdGVzLm9y
ZzCB/gYDVR0gBIH2MIHzMAgGBmeBDAECATCB5gYLKwYBBAGC3xMBAQEwgdYwJgYI
KwYBBQUHAgEWGmh0dHA6Ly9jcHMubGV0c2VuY3J5cHQub3JnMIGrBggrBgEFBQcC
AjCBngyBm1RoaXMgQ2VydGlmaWNhdGUgbWF5IG9ubHkgYmUgcmVsaWVkIHVwb24g
YnkgUmVseWluZyBQYXJ0aWVzIGFuZCBvbmx5IGluIGFjY29yZGFuY2Ugd2l0aCB0
aGUgQ2VydGlmaWNhdGUgUG9saWN5IGZvdW5kIGF0IGh0dHBzOi8vbGV0c2VuY3J5
cHQub3JnL3JlcG9zaXRvcnkvMA0GCSqGSIb3DQEBCwUAA4IBAQBGHWMwAVTVNoUy
EVSJyCAlCLolkhMsvWl4/LPHy8a7N6Zwy3Ow/D0dj+Am9GFhDS8zLquQfMAatHXO
fOZI8XYId9ylMWMZW/nGol4M4e5evu09YqI9q70FgZtAEQHJTpHg62aDt3vuA61C
+EQ1JoVYN6/DZMkHzK5+5iRdDi227SOQCYo84jbNGK+uWZ+Ro8KDBBTuzDzMsJb9
PsOqY/x6xED3AAMbhpzizzTIbR5pWc0PMImwb8QRUj0XpMSX31/ikU3HaIN/a3I1
C+P3JNZq0RJotjSg+/11ILgrSQM58ugE3k0zZMXLFfDfLCxIj0mY2Tw52bml/nga
pzLenSCf
-----END CERTIFICATE-----
Hi @diafygi,
The root issue here is that your CSR only has a legacy subject common name, and no DNS type SAN entries. If you finalize the order with a CSR that has a DNS SAN for letsencrypt.daylightpirates.org
it should succeed.
I think given what you've shown with the V1 API being more tolerant of this we should probably promote the Subject CN to a SAN in the V2 API (or at least fix the error message to be more descriptive of the root cause!).
I'm going to close this issue in favour of one to do that: https://github.com/letsencrypt/boulder/issues/3368
Thanks for reporting this! I appreciate it.
Given the below CSR[1][2], ACMEv2 /finalize-order rejects for the reason "Order includes different number of names than CSR specifies"[3]. However, this same CSR is not rejected on ACMEv1[4].
[1]:
[2]:
[3]:
[4]: