-
Notifications
You must be signed in to change notification settings - Fork 90
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
The ACME modules does not seem to support ACME directories that do not contain a "meta" key in their directory response, resulting in module crash #220
Comments
You are right, currently the code assumes that |
I created a PR to fix this (#221). Please test it. I'd be happy to hear whether the modules will work with step-ca (after this is fixed); I already wanted to test that once, but never managed to find time to set step-ca up and try it out yet... |
That did not work, but what worked was changing your new line to this:
Thanks a lot for your help |
Ok, that was stupid :) I've updated the PR... So were you able to create an account and obtain a certificate once you applied your fix of my fix? Or how far did you got with it? |
Yep, i was able to run the acme_certficiate module directly (which from what i can read automatically creates account, given a account_key), request a certificate, validate the challenge (DNS-01) and get the signed certificate. |
@ConsciaDBA awesome! In that case I'll create a new release once the fix is merged, instead of waiting for more bug reports ;) |
SUMMARY
The ACME modules does not seem to support ACME directories that do not contain a "meta" key in their directory response, resulting in module crash. According to the RFC for acme v2 its also only a optional field that can be set (https://tools.ietf.org/html/rfc8555#section-7.1.1) and not required. The ACME server in step-ca does for example not respond with a meta object.
ISSUE TYPE
COMPONENT NAME
community.crypto.acme_*
ANSIBLE VERSION
STEPS TO REPRODUCE
Run any ACME_* module against a ACME server that does not respond with a "meta" object in its directory response, for example step-ca ACME server.
Supported (letsencrypt acme server):
Not supported (step-ca self-hosted acme server):
I think it may be related to this line due to the meta key not existing at all
community.crypto/plugins/module_utils/acme/account.py
Line 59 in 201920d
EXPECTED RESULTS
Run without issue
ACTUAL RESULTS
The text was updated successfully, but these errors were encountered: