mirror of
https://github.com/plantroon/acme.sh.git
synced 2024-12-22 13:11:41 +00:00
parent
3290208749
commit
772d970074
40
.github/auto-comment.yml
vendored
40
.github/auto-comment.yml
vendored
@ -1,40 +0,0 @@
|
|||||||
# Comment to a new issue.
|
|
||||||
issuesOpened: >
|
|
||||||
If this is a bug report, please upgrade to the latest code and try again:
|
|
||||||
|
|
||||||
如果有 bug, 请先更新到最新版试试:
|
|
||||||
|
|
||||||
```
|
|
||||||
acme.sh --upgrade
|
|
||||||
```
|
|
||||||
|
|
||||||
please also provide the log with `--debug 2`.
|
|
||||||
|
|
||||||
同时请提供调试输出 `--debug 2`
|
|
||||||
|
|
||||||
see: https://github.com/acmesh-official/acme.sh/wiki/How-to-debug-acme.sh
|
|
||||||
|
|
||||||
Without `--debug 2` log, your issue will NEVER get replied.
|
|
||||||
|
|
||||||
没有调试输出, 你的 issue 不会得到任何解答.
|
|
||||||
|
|
||||||
|
|
||||||
pullRequestOpened: >
|
|
||||||
First, NEVER send a PR to `master` branch, it will NEVER be accepted. Please send to the `dev` branch instead.
|
|
||||||
|
|
||||||
If this is a PR to support new DNS API or new notification API, please read this guide first:
|
|
||||||
https://github.com/acmesh-official/acme.sh/wiki/DNS-API-Dev-Guide
|
|
||||||
|
|
||||||
Please check the guide items one by one.
|
|
||||||
|
|
||||||
Then add your usage here:
|
|
||||||
https://github.com/acmesh-official/acme.sh/wiki/dnsapi
|
|
||||||
|
|
||||||
Or some other wiki pages:
|
|
||||||
|
|
||||||
https://github.com/acmesh-official/acme.sh/wiki/deployhooks
|
|
||||||
|
|
||||||
https://github.com/acmesh-official/acme.sh/wiki/notify
|
|
||||||
|
|
||||||
|
|
||||||
|
|
8
.github/workflows/FreeBSD.yml
vendored
8
.github/workflows/FreeBSD.yml
vendored
@ -20,18 +20,18 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
include:
|
include:
|
||||||
- TEST_ACME_Server: ""
|
- TEST_ACME_Server: "LetsEncrypt.org_test"
|
||||||
CA_ECDSA: ""
|
CA_ECDSA: ""
|
||||||
CA: ""
|
CA: ""
|
||||||
CA_EMAIL: ""
|
CA_EMAIL: ""
|
||||||
- TEST_ACME_Server: "https://acme.zerossl.com/v2/DV90"
|
- TEST_ACME_Server: "ZeroSSL.com"
|
||||||
CA_ECDSA: "ZeroSSL ECC Domain Secure Site CA"
|
CA_ECDSA: "ZeroSSL ECC Domain Secure Site CA"
|
||||||
CA: "ZeroSSL RSA Domain Secure Site CA"
|
CA: "ZeroSSL RSA Domain Secure Site CA"
|
||||||
CA_EMAIL: "githubtest@acme.sh"
|
CA_EMAIL: "githubtest@acme.sh"
|
||||||
runs-on: macos-latest
|
runs-on: macos-latest
|
||||||
env:
|
env:
|
||||||
TEST_LOCAL: 1
|
TEST_LOCAL: 1
|
||||||
ACME_DIRECTORY: ${{ matrix.TEST_ACME_Server }}
|
TEST_ACME_Server: ${{ matrix.TEST_ACME_Server }}
|
||||||
CA_ECDSA: ${{ matrix.CA_ECDSA }}
|
CA_ECDSA: ${{ matrix.CA_ECDSA }}
|
||||||
CA: ${{ matrix.CA }}
|
CA: ${{ matrix.CA }}
|
||||||
CA_EMAIL: ${{ matrix.CA_EMAIL }}
|
CA_EMAIL: ${{ matrix.CA_EMAIL }}
|
||||||
@ -48,7 +48,7 @@ jobs:
|
|||||||
run: cd .. && git clone https://github.com/acmesh-official/acmetest.git && cp -r acme.sh acmetest/
|
run: cd .. && git clone https://github.com/acmesh-official/acmetest.git && cp -r acme.sh acmetest/
|
||||||
- uses: vmactions/freebsd-vm@v0.1.4
|
- uses: vmactions/freebsd-vm@v0.1.4
|
||||||
with:
|
with:
|
||||||
envs: 'TEST_LOCAL TestingDomain ACME_DIRECTORY CA_ECDSA CA CA_EMAIL'
|
envs: 'TEST_LOCAL TestingDomain TEST_ACME_Server CA_ECDSA CA CA_EMAIL'
|
||||||
nat: |
|
nat: |
|
||||||
"8080": "80"
|
"8080": "80"
|
||||||
prepare: pkg install -y socat curl
|
prepare: pkg install -y socat curl
|
||||||
|
6
.github/workflows/MacOS.yml
vendored
6
.github/workflows/MacOS.yml
vendored
@ -20,18 +20,18 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
include:
|
include:
|
||||||
- TEST_ACME_Server: ""
|
- TEST_ACME_Server: "LetsEncrypt.org_test"
|
||||||
CA_ECDSA: ""
|
CA_ECDSA: ""
|
||||||
CA: ""
|
CA: ""
|
||||||
CA_EMAIL: ""
|
CA_EMAIL: ""
|
||||||
- TEST_ACME_Server: "https://acme.zerossl.com/v2/DV90"
|
- TEST_ACME_Server: "ZeroSSL.com"
|
||||||
CA_ECDSA: "ZeroSSL ECC Domain Secure Site CA"
|
CA_ECDSA: "ZeroSSL ECC Domain Secure Site CA"
|
||||||
CA: "ZeroSSL RSA Domain Secure Site CA"
|
CA: "ZeroSSL RSA Domain Secure Site CA"
|
||||||
CA_EMAIL: "githubtest@acme.sh"
|
CA_EMAIL: "githubtest@acme.sh"
|
||||||
runs-on: macos-latest
|
runs-on: macos-latest
|
||||||
env:
|
env:
|
||||||
TEST_LOCAL: 1
|
TEST_LOCAL: 1
|
||||||
ACME_DIRECTORY: ${{ matrix.TEST_ACME_Server }}
|
TEST_ACME_Server: ${{ matrix.TEST_ACME_Server }}
|
||||||
CA_ECDSA: ${{ matrix.CA_ECDSA }}
|
CA_ECDSA: ${{ matrix.CA_ECDSA }}
|
||||||
CA: ${{ matrix.CA }}
|
CA: ${{ matrix.CA }}
|
||||||
CA_EMAIL: ${{ matrix.CA_EMAIL }}
|
CA_EMAIL: ${{ matrix.CA_EMAIL }}
|
||||||
|
2
.github/workflows/PebbleStrict.yml
vendored
2
.github/workflows/PebbleStrict.yml
vendored
@ -19,7 +19,7 @@ jobs:
|
|||||||
env:
|
env:
|
||||||
TestingDomain: example.com
|
TestingDomain: example.com
|
||||||
TestingAltDomains: www.example.com
|
TestingAltDomains: www.example.com
|
||||||
ACME_DIRECTORY: https://localhost:14000/dir
|
TEST_ACME_Server: https://localhost:14000/dir
|
||||||
HTTPS_INSECURE: 1
|
HTTPS_INSECURE: 1
|
||||||
Le_HTTPPort: 5002
|
Le_HTTPPort: 5002
|
||||||
TEST_LOCAL: 1
|
TEST_LOCAL: 1
|
||||||
|
8
.github/workflows/Solaris.yml
vendored
8
.github/workflows/Solaris.yml
vendored
@ -20,18 +20,18 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
include:
|
include:
|
||||||
- TEST_ACME_Server: ""
|
- TEST_ACME_Server: "LetsEncrypt.org_test"
|
||||||
CA_ECDSA: ""
|
CA_ECDSA: ""
|
||||||
CA: ""
|
CA: ""
|
||||||
CA_EMAIL: ""
|
CA_EMAIL: ""
|
||||||
- TEST_ACME_Server: "https://acme.zerossl.com/v2/DV90"
|
- TEST_ACME_Server: "ZeroSSL.com"
|
||||||
CA_ECDSA: "ZeroSSL ECC Domain Secure Site CA"
|
CA_ECDSA: "ZeroSSL ECC Domain Secure Site CA"
|
||||||
CA: "ZeroSSL RSA Domain Secure Site CA"
|
CA: "ZeroSSL RSA Domain Secure Site CA"
|
||||||
CA_EMAIL: "githubtest@acme.sh"
|
CA_EMAIL: "githubtest@acme.sh"
|
||||||
runs-on: macos-latest
|
runs-on: macos-latest
|
||||||
env:
|
env:
|
||||||
TEST_LOCAL: 1
|
TEST_LOCAL: 1
|
||||||
ACME_DIRECTORY: ${{ matrix.TEST_ACME_Server }}
|
TEST_ACME_Server: ${{ matrix.TEST_ACME_Server }}
|
||||||
CA_ECDSA: ${{ matrix.CA_ECDSA }}
|
CA_ECDSA: ${{ matrix.CA_ECDSA }}
|
||||||
CA: ${{ matrix.CA }}
|
CA: ${{ matrix.CA }}
|
||||||
CA_EMAIL: ${{ matrix.CA_EMAIL }}
|
CA_EMAIL: ${{ matrix.CA_EMAIL }}
|
||||||
@ -48,7 +48,7 @@ jobs:
|
|||||||
run: cd .. && git clone https://github.com/acmesh-official/acmetest.git && cp -r acme.sh acmetest/
|
run: cd .. && git clone https://github.com/acmesh-official/acmetest.git && cp -r acme.sh acmetest/
|
||||||
- uses: vmactions/solaris-vm@v0.0.3
|
- uses: vmactions/solaris-vm@v0.0.3
|
||||||
with:
|
with:
|
||||||
envs: 'TEST_LOCAL TestingDomain ACME_DIRECTORY CA_ECDSA CA CA_EMAIL'
|
envs: 'TEST_LOCAL TestingDomain TEST_ACME_Server CA_ECDSA CA CA_EMAIL'
|
||||||
nat: |
|
nat: |
|
||||||
"8080": "80"
|
"8080": "80"
|
||||||
prepare: pkgutil -y -i socat curl
|
prepare: pkgutil -y -i socat curl
|
||||||
|
6
.github/workflows/Ubuntu.yml
vendored
6
.github/workflows/Ubuntu.yml
vendored
@ -20,11 +20,11 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
include:
|
include:
|
||||||
- TEST_ACME_Server: ""
|
- TEST_ACME_Server: "LetsEncrypt.org_test"
|
||||||
CA_ECDSA: ""
|
CA_ECDSA: ""
|
||||||
CA: ""
|
CA: ""
|
||||||
CA_EMAIL: ""
|
CA_EMAIL: ""
|
||||||
- TEST_ACME_Server: "https://acme.zerossl.com/v2/DV90"
|
- TEST_ACME_Server: "ZeroSSL.com"
|
||||||
CA_ECDSA: "ZeroSSL ECC Domain Secure Site CA"
|
CA_ECDSA: "ZeroSSL ECC Domain Secure Site CA"
|
||||||
CA: "ZeroSSL RSA Domain Secure Site CA"
|
CA: "ZeroSSL RSA Domain Secure Site CA"
|
||||||
CA_EMAIL: "githubtest@acme.sh"
|
CA_EMAIL: "githubtest@acme.sh"
|
||||||
@ -32,7 +32,7 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
env:
|
env:
|
||||||
TEST_LOCAL: 1
|
TEST_LOCAL: 1
|
||||||
ACME_DIRECTORY: ${{ matrix.TEST_ACME_Server }}
|
TEST_ACME_Server: ${{ matrix.TEST_ACME_Server }}
|
||||||
CA_ECDSA: ${{ matrix.CA_ECDSA }}
|
CA_ECDSA: ${{ matrix.CA_ECDSA }}
|
||||||
CA: ${{ matrix.CA }}
|
CA: ${{ matrix.CA }}
|
||||||
CA_EMAIL: ${{ matrix.CA_EMAIL }}
|
CA_EMAIL: ${{ matrix.CA_EMAIL }}
|
||||||
|
6
.github/workflows/Windows.yml
vendored
6
.github/workflows/Windows.yml
vendored
@ -20,17 +20,17 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
include:
|
include:
|
||||||
- TEST_ACME_Server: ""
|
- TEST_ACME_Server: "LetsEncrypt.org_test"
|
||||||
CA_ECDSA: ""
|
CA_ECDSA: ""
|
||||||
CA: ""
|
CA: ""
|
||||||
CA_EMAIL: ""
|
CA_EMAIL: ""
|
||||||
- TEST_ACME_Server: "https://acme.zerossl.com/v2/DV90"
|
- TEST_ACME_Server: "ZeroSSL.com"
|
||||||
CA_ECDSA: "ZeroSSL ECC Domain Secure Site CA"
|
CA_ECDSA: "ZeroSSL ECC Domain Secure Site CA"
|
||||||
CA: "ZeroSSL RSA Domain Secure Site CA"
|
CA: "ZeroSSL RSA Domain Secure Site CA"
|
||||||
CA_EMAIL: "githubtest@acme.sh"
|
CA_EMAIL: "githubtest@acme.sh"
|
||||||
runs-on: windows-latest
|
runs-on: windows-latest
|
||||||
env:
|
env:
|
||||||
ACME_DIRECTORY: ${{ matrix.TEST_ACME_Server }}
|
TEST_ACME_Server: ${{ matrix.TEST_ACME_Server }}
|
||||||
CA_ECDSA: ${{ matrix.CA_ECDSA }}
|
CA_ECDSA: ${{ matrix.CA_ECDSA }}
|
||||||
CA: ${{ matrix.CA }}
|
CA: ${{ matrix.CA }}
|
||||||
CA_EMAIL: ${{ matrix.CA_EMAIL }}
|
CA_EMAIL: ${{ matrix.CA_EMAIL }}
|
||||||
|
53
acme.sh
53
acme.sh
@ -2535,6 +2535,16 @@ __initHome() {
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_clearAPI() {
|
||||||
|
ACME_NEW_ACCOUNT=""
|
||||||
|
ACME_KEY_CHANGE=""
|
||||||
|
ACME_NEW_AUTHZ=""
|
||||||
|
ACME_NEW_ORDER=""
|
||||||
|
ACME_REVOKE_CERT=""
|
||||||
|
ACME_NEW_NONCE=""
|
||||||
|
ACME_AGREEMENT=""
|
||||||
|
}
|
||||||
|
|
||||||
#server
|
#server
|
||||||
_initAPI() {
|
_initAPI() {
|
||||||
_api_server="${1:-$ACME_DIRECTORY}"
|
_api_server="${1:-$ACME_DIRECTORY}"
|
||||||
@ -2590,6 +2600,9 @@ _initAPI() {
|
|||||||
_info "Sleep $_sleep_retry_sec and retry."
|
_info "Sleep $_sleep_retry_sec and retry."
|
||||||
_sleep "$_sleep_retry_sec"
|
_sleep "$_sleep_retry_sec"
|
||||||
done
|
done
|
||||||
|
if [ "$ACME_NEW_ACCOUNT" ] && [ "$ACME_NEW_ORDER" ]; then
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
_err "Can not init api, for $_api_server"
|
_err "Can not init api, for $_api_server"
|
||||||
return 1
|
return 1
|
||||||
}
|
}
|
||||||
@ -5032,6 +5045,9 @@ renew() {
|
|||||||
_debug Le_API "$Le_API"
|
_debug Le_API "$Le_API"
|
||||||
|
|
||||||
if [ "$Le_API" ]; then
|
if [ "$Le_API" ]; then
|
||||||
|
if [ "$Le_API" != "$ACME_DIRECTORY" ]; then
|
||||||
|
_clearAPI
|
||||||
|
fi
|
||||||
export ACME_DIRECTORY="$Le_API"
|
export ACME_DIRECTORY="$Le_API"
|
||||||
#reload ca configs
|
#reload ca configs
|
||||||
ACCOUNT_KEY_PATH=""
|
ACCOUNT_KEY_PATH=""
|
||||||
@ -5039,6 +5055,7 @@ renew() {
|
|||||||
CA_CONF=""
|
CA_CONF=""
|
||||||
_debug3 "initpath again."
|
_debug3 "initpath again."
|
||||||
_initpath "$Le_Domain" "$_isEcc"
|
_initpath "$Le_Domain" "$_isEcc"
|
||||||
|
_initAPI
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -z "$FORCE" ] && [ "$Le_NextRenewTime" ] && [ "$(_time)" -lt "$Le_NextRenewTime" ]; then
|
if [ -z "$FORCE" ] && [ "$Le_NextRenewTime" ] && [ "$(_time)" -lt "$Le_NextRenewTime" ]; then
|
||||||
@ -5696,6 +5713,23 @@ revoke() {
|
|||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
. "$DOMAIN_CONF"
|
||||||
|
_debug Le_API "$Le_API"
|
||||||
|
|
||||||
|
if [ "$Le_API" ]; then
|
||||||
|
if [ "$Le_API" != "$ACME_DIRECTORY" ]; then
|
||||||
|
_clearAPI
|
||||||
|
fi
|
||||||
|
export ACME_DIRECTORY="$Le_API"
|
||||||
|
#reload ca configs
|
||||||
|
ACCOUNT_KEY_PATH=""
|
||||||
|
ACCOUNT_JSON_PATH=""
|
||||||
|
CA_CONF=""
|
||||||
|
_debug3 "initpath again."
|
||||||
|
_initpath "$Le_Domain" "$_isEcc"
|
||||||
|
_initAPI
|
||||||
|
fi
|
||||||
|
|
||||||
cert="$(_getfile "${CERT_PATH}" "${BEGIN_CERT}" "${END_CERT}" | tr -d "\r\n" | _url_replace)"
|
cert="$(_getfile "${CERT_PATH}" "${BEGIN_CERT}" "${END_CERT}" | tr -d "\r\n" | _url_replace)"
|
||||||
|
|
||||||
if [ -z "$cert" ]; then
|
if [ -z "$cert" ]; then
|
||||||
@ -5775,7 +5809,24 @@ remove() {
|
|||||||
_deactivate() {
|
_deactivate() {
|
||||||
_d_domain="$1"
|
_d_domain="$1"
|
||||||
_d_type="$2"
|
_d_type="$2"
|
||||||
_initpath
|
_initpath "$_d_domain" "$_d_type"
|
||||||
|
|
||||||
|
. "$DOMAIN_CONF"
|
||||||
|
_debug Le_API "$Le_API"
|
||||||
|
|
||||||
|
if [ "$Le_API" ]; then
|
||||||
|
if [ "$Le_API" != "$ACME_DIRECTORY" ]; then
|
||||||
|
_clearAPI
|
||||||
|
fi
|
||||||
|
export ACME_DIRECTORY="$Le_API"
|
||||||
|
#reload ca configs
|
||||||
|
ACCOUNT_KEY_PATH=""
|
||||||
|
ACCOUNT_JSON_PATH=""
|
||||||
|
CA_CONF=""
|
||||||
|
_debug3 "initpath again."
|
||||||
|
_initpath "$Le_Domain" "$_d_type"
|
||||||
|
_initAPI
|
||||||
|
fi
|
||||||
|
|
||||||
_identifiers="{\"type\":\"dns\",\"value\":\"$_d_domain\"}"
|
_identifiers="{\"type\":\"dns\",\"value\":\"$_d_domain\"}"
|
||||||
if ! _send_signed_request "$ACME_NEW_ORDER" "{\"identifiers\": [$_identifiers]}"; then
|
if ! _send_signed_request "$ACME_NEW_ORDER" "{\"identifiers\": [$_identifiers]}"; then
|
||||||
|
Loading…
Reference in New Issue
Block a user