acme.sh icon indicating copy to clipboard operation
acme.sh copied to clipboard

dns_edgedns: Replace the ntp.org HTTP GET for retrieving timestamp with builtin _utc_date function.

Open tweitzel-akamai opened this issue 3 years ago • 7 comments

Previously this plugin would request a timestamp for Akamai OPEN API calls by doing an HTTP GET to ntp.org and grepping the headers. This became unreliable due to DDOS protection on that domain.

The plugin now uses acme.sh's own _utc_date function to request the current UTC time and reformats it according to the requirements (yyyyMMddTHH:mm:ss+0000) at https://developer.akamai.com/legacy/introduction/Client_Auth.html.

Fixes #3973

tweitzel-akamai avatar Oct 11 '22 22:10 tweitzel-akamai

Welcome Please make sure you're read our DNS API Dev Guide and DNS-API-Test. Then reply on this message, otherwise, your code will not be reviewed or merged. We look forward to reviewing your Pull request shortly ✨

github-actions[bot] avatar Oct 11 '22 22:10 github-actions[bot]

I have read the API dev guide and the API test guide, but I am unable to get github actions working in my forked repo and do not know where to get help for it. I have never used github actions before.

tweitzel-akamai avatar Oct 11 '22 23:10 tweitzel-akamai

please push any new changes to your fork to trigger the github actions to run.

Neilpang avatar Oct 11 '22 23:10 Neilpang

I got the tests running but the test fails in openbsd for unknown reasons. All the other systems are working.

tweitzel-akamai avatar Oct 12 '22 20:10 tweitzel-akamai

It's not passing yet:

https://github.com/tweitzel-akamai/acme.sh/actions/runs/3245182644

Neilpang avatar Oct 14 '22 06:10 Neilpang

I'm having a lot of difficulty with openbsd, as can be seen in this run (forgive the massive amounts of printf debugging; I will clean it up before rolling into this PR) https://github.com/tweitzel-akamai/acme.sh/actions/runs/3277730703

Because the openbsd tests do not have iconv or uconv, I have to fall back to perl to encode/decode UTF-8 using code found in the fritzbox deploy plugin.

The output is reporting that diagnostic data is in the "le_test_dnsapi.log" file, but I cannot find this file when I download the logs from the github action. Where is it? Also, is it possible to enable --output-insecure?

tweitzel-akamai avatar Oct 19 '22 20:10 tweitzel-akamai