Open casperklein opened 7 years ago
Works, thank you!
The documentary should also be updated:
--accountemail Specifies the account email for registering, Only valid for the '--install' command.
to
--accountemail Specifies the account email for registering, Only valid for the '--install' and '--update-account' command.
Actual version (2.7.7) has the same problem. Please reopen bug.
I'm also seeing this too.
acme.sh --update-account --accountemail <email address>
will update the email address on ~/.acme.sh/account.conf
, but not in ~/.acme.sh/ca/acme-v01.api.letsencrypt.org/account.json
.
The updated email address doesn't get expiry reminders, suggesting that the email address update isn't successfully completed.
[Mon 23 Apr 17:15:14 AEST 2018] _SCRIPT_='/home/ssl/.acme.sh/acme.sh'
[Mon 23 Apr 17:15:14 AEST 2018] _script='/home/ssl/.acme.sh/acme.sh'
[Mon 23 Apr 17:15:14 AEST 2018] _script_home='/home/ssl/.acme.sh'
[Mon 23 Apr 17:15:14 AEST 2018] Using config home:/home/ssl/.acme.sh
[Mon 23 Apr 17:15:14 AEST 2018] LE_WORKING_DIR='/home/ssl/.acme.sh'
https://github.com/Neilpang/acme.sh
v2.7.9
[Mon 23 Apr 17:15:14 AEST 2018] Using config home:/home/ssl/.acme.sh
[Mon 23 Apr 17:15:14 AEST 2018] ACME_DIRECTORY='https://acme-v01.api.letsencrypt.org/directory'
[Mon 23 Apr 17:15:14 AEST 2018] _ACME_SERVER_HOST='acme-v01.api.letsencrypt.org'
[Mon 23 Apr 17:15:14 AEST 2018] Using config home:/home/ssl/.acme.sh
[Mon 23 Apr 17:15:14 AEST 2018] ACME_DIRECTORY='https://acme-v01.api.letsencrypt.org/directory'
[Mon 23 Apr 17:15:14 AEST 2018] _ACME_SERVER_HOST='acme-v01.api.letsencrypt.org'
[Mon 23 Apr 17:15:14 AEST 2018] _init api for server: https://acme-v01.api.letsencrypt.org/directory
[Mon 23 Apr 17:15:14 AEST 2018] GET
[Mon 23 Apr 17:15:14 AEST 2018] url='https://acme-v01.api.letsencrypt.org/directory'
[Mon 23 Apr 17:15:14 AEST 2018] timeout=
[Mon 23 Apr 17:15:14 AEST 2018] _CURL='curl -L --silent --dump-header /home/ssl/.acme.sh/http.header --trace-ascii /tmp/tmp.********** -g '
[Mon 23 Apr 17:15:14 AEST 2018] ret='0'
[Mon 23 Apr 17:15:14 AEST 2018] response='{
"**********": "https://community.letsencrypt.org/t/adding-random-entries-to-the-directory/33417",
"key-change": "https://acme-v01.api.letsencrypt.org/acme/key-change",
"meta": {
"caaIdentities": [
"letsencrypt.org"
],
"terms-of-service": "https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf",
"website": "https://letsencrypt.org"
},
"new-authz": "https://acme-v01.api.letsencrypt.org/acme/new-authz",
"new-cert": "https://acme-v01.api.letsencrypt.org/acme/new-cert",
"new-reg": "https://acme-v01.api.letsencrypt.org/acme/new-reg",
"revoke-cert": "https://acme-v01.api.letsencrypt.org/acme/revoke-cert"
}'
[Mon 23 Apr 17:15:14 AEST 2018] ACME_KEY_CHANGE='https://acme-v01.api.letsencrypt.org/acme/key-change'
[Mon 23 Apr 17:15:14 AEST 2018] ACME_NEW_AUTHZ='https://acme-v01.api.letsencrypt.org/acme/new-authz'
[Mon 23 Apr 17:15:14 AEST 2018] ACME_NEW_ORDER='https://acme-v01.api.letsencrypt.org/acme/new-cert'
[Mon 23 Apr 17:15:14 AEST 2018] ACME_NEW_ACCOUNT='https://acme-v01.api.letsencrypt.org/acme/new-reg'
[Mon 23 Apr 17:15:14 AEST 2018] ACME_REVOKE_CERT='https://acme-v01.api.letsencrypt.org/acme/revoke-cert'
[Mon 23 Apr 17:15:14 AEST 2018] ACME_AGREEMENT='https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf'
[Mon 23 Apr 17:15:14 AEST 2018] ACME_NEW_NONCE
[Mon 23 Apr 17:15:14 AEST 2018] ACME_VERSION
[Mon 23 Apr 17:15:14 AEST 2018] RSA key
[Mon 23 Apr 17:15:14 AEST 2018] Registering account
[Mon 23 Apr 17:15:14 AEST 2018] url='https://acme-v01.api.letsencrypt.org/acme/new-reg'
[Mon 23 Apr 17:15:14 AEST 2018] payload='{"resource": "new-reg", "contact": ["mailto: **********"], "terms-of-service-agreed": true, "agreement": "https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf"}'
[Mon 23 Apr 17:15:14 AEST 2018] Use cached jwk for file: /home/ssl/.acme.sh/ca/acme-v01.api.letsencrypt.org/account.key
[Mon 23 Apr 17:15:14 AEST 2018] Get nonce. ACME_DIRECTORY='https://acme-v01.api.letsencrypt.org/directory'
[Mon 23 Apr 17:15:14 AEST 2018] GET
[Mon 23 Apr 17:15:14 AEST 2018] url='https://acme-v01.api.letsencrypt.org/directory'
[Mon 23 Apr 17:15:14 AEST 2018] timeout=
[Mon 23 Apr 17:15:14 AEST 2018] _CURL='curl -L --silent --dump-header /home/ssl/.acme.sh/http.header --trace-ascii /tmp/tmp.********** -g '
[Mon 23 Apr 17:15:15 AEST 2018] ret='0'
[Mon 23 Apr 17:15:15 AEST 2018] _headers='HTTP/1.1 200 OK
Server: nginx
Content-Type: application/json
Content-Length: 658
Replay-Nonce: **********
X-Frame-Options: DENY
Strict-Transport-Security: max-age=604800
Expires: Mon, 23 Apr 2018 07:15:15 GMT
Cache-Control: max-age=0, no-cache, no-store
Pragma: no-cache
Date: Mon, 23 Apr 2018 07:15:15 GMT
Connection: keep-alive
'
[Mon 23 Apr 17:15:15 AEST 2018] _CACHED_NONCE='**********'
[Mon 23 Apr 17:15:15 AEST 2018] nonce='**********'
[Mon 23 Apr 17:15:15 AEST 2018] POST
[Mon 23 Apr 17:15:15 AEST 2018] _post_url='https://acme-v01.api.letsencrypt.org/acme/new-reg'
[Mon 23 Apr 17:15:15 AEST 2018] body='{"header": {"alg": "RS256", "jwk": {"e": "AQAB", "kty": "RSA", "n": "**********"}}, "protected": "**********", "payload": "**********", "signature": "**********"}'
[Mon 23 Apr 17:15:15 AEST 2018] _postContentType
[Mon 23 Apr 17:15:15 AEST 2018] _CURL='curl -L --silent --dump-header /home/ssl/.acme.sh/http.header --trace-ascii /tmp/tmp.********** -g '
[Mon 23 Apr 17:15:16 AEST 2018] _ret='0'
[Mon 23 Apr 17:15:16 AEST 2018] original='{
"type": "urn:acme:error:malformed",
"detail": "Registration key is already in use",
"status": 409
}'
[Mon 23 Apr 17:15:16 AEST 2018] responseHeaders='HTTP/1.1 100 Continue
Expires: Mon, 23 Apr 2018 07:15:15 GMT
Cache-Control: max-age=0, no-cache, no-store
Pragma: no-cache
HTTP/1.1 409 Conflict
Server: nginx
Content-Type: application/problem+json
Content-Length: 107
Boulder-Requester: 19734681
Location: https://acme-v01.api.letsencrypt.org/acme/reg/**********
Replay-Nonce: **********
Expires: Mon, 23 Apr 2018 07:15:16 GMT
Cache-Control: max-age=0, no-cache, no-store
Pragma: no-cache
Date: Mon, 23 Apr 2018 07:15:16 GMT
Connection: close
'
[Mon 23 Apr 17:15:16 AEST 2018] response='{"type":"urn:acme:error:malformed","detail":"Registration key is already in use","status": 409}'
[Mon 23 Apr 17:15:16 AEST 2018] code='409'
[Mon 23 Apr 17:15:16 AEST 2018] Already registered
[Mon 23 Apr 17:15:16 AEST 2018] responseHeaders='HTTP/1.1 100 Continue
Expires: Mon, 23 Apr 2018 07:15:15 GMT
Cache-Control: max-age=0, no-cache, no-store
Pragma: no-cache
HTTP/1.1 409 Conflict
Server: nginx
Content-Type: application/problem+json
Content-Length: 107
Boulder-Requester: 19734681
Location: https://acme-v01.api.letsencrypt.org/acme/reg/**********
Replay-Nonce: **********
Expires: Mon, 23 Apr 2018 07:15:16 GMT
Cache-Control: max-age=0, no-cache, no-store
Pragma: no-cache
Date: Mon, 23 Apr 2018 07:15:16 GMT
Connection: close
'
[Mon 23 Apr 17:15:16 AEST 2018] _accUri='https://acme-v01.api.letsencrypt.org/acme/reg/**********'
[Mon 23 Apr 17:15:16 AEST 2018] Calc CA_KEY_HASH='**********'
[Mon 23 Apr 17:15:16 AEST 2018] ACCOUNT_THUMBPRINT='**********'```
Im having the same issue on v2.7.9
any update of this issue ? contact still null on v2.7.9
"contact":[]
I ended up reinstalling and specifying the email address..
I don't now if that works as designed or if it's a bug.
Updating the email address of an account seems to work (see debug log). But when I verify account.json file, the contact field is still empty.
Steps to reproduce
acme.sh --update-account --accountemail my@domain.com
Debug log
[Tue Oct 17 03:21:17 CEST 2017] response='{"id": 123456789,"key":{"kty":"RSA","n":"foo","e":"bar"},"contact":["mailto: my@domain.com"],"agreement":"https://letsencrypt.org/documents/LE-SA-v1.1.1-August-1-2016.pdf","initialIp":"x.x.x.x","createdAt":"2016-10-20T21:44:44Z","Status":"valid"}'
Verify account.json
{"id": 123456789,"key":{"kty":"RSA","n":"foo","e":"bar"},"contact":[],"initialIp":"x.x.x.x","createdAt":"2016-05-20T21:22:44.942609064Z","Status":""}