mirror of
https://github.com/plantroon/acme.sh.git
synced 2024-12-25 06:31:42 +00:00
Support revoke cert
This commit is contained in:
parent
de9fd54e76
commit
6cb415f57e
@ -78,7 +78,7 @@ Show help message:
|
|||||||
```
|
```
|
||||||
root@v1:~# le.sh
|
root@v1:~# le.sh
|
||||||
https://github.com/Neilpang/le
|
https://github.com/Neilpang/le
|
||||||
v1.2.2
|
v1.2.3
|
||||||
Usage: le.sh [command] ...[args]....
|
Usage: le.sh [command] ...[args]....
|
||||||
Available commands:
|
Available commands:
|
||||||
|
|
||||||
@ -94,6 +94,8 @@ renewAll:
|
|||||||
Renew all the certs.
|
Renew all the certs.
|
||||||
uninstall:
|
uninstall:
|
||||||
Uninstall le.sh, and uninstall the cron job.
|
Uninstall le.sh, and uninstall the cron job.
|
||||||
|
revoke:
|
||||||
|
Revoke a cert.
|
||||||
version:
|
version:
|
||||||
Show version info.
|
Show version info.
|
||||||
installcronjob:
|
installcronjob:
|
||||||
@ -111,6 +113,7 @@ createCSR:
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
root@v1:~/le# le issue
|
root@v1:~/le# le issue
|
||||||
Usage: le issue webroot|no|apache|dns a.com [www.a.com,b.com,c.com]|no [key-length]|no
|
Usage: le issue webroot|no|apache|dns a.com [www.a.com,b.com,c.com]|no [key-length]|no
|
||||||
|
|
||||||
|
58
le.sh
58
le.sh
@ -1,5 +1,5 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
VER=1.2.2
|
VER=1.2.3
|
||||||
PROJECT="https://github.com/Neilpang/le"
|
PROJECT="https://github.com/Neilpang/le"
|
||||||
|
|
||||||
DEFAULT_CA="https://acme-v01.api.letsencrypt.org"
|
DEFAULT_CA="https://acme-v01.api.letsencrypt.org"
|
||||||
@ -1474,6 +1474,60 @@ uninstallcronjob() {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
revoke() {
|
||||||
|
Le_Domain="$1"
|
||||||
|
if [ -z "$Le_Domain" ] ; then
|
||||||
|
_err "Usage: revoke domain.com"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
_initpath $Le_Domain
|
||||||
|
if [ ! -f "$DOMAIN_CONF" ] ; then
|
||||||
|
_err "$Le_Domain is not a issued domain, skip."
|
||||||
|
return 1;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -f "$CERT_PATH" ] ; then
|
||||||
|
_err "Cert for $Le_Domain $CERT_PATH is not found, skip."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
cert="$(_getfile "${CERT_PATH}" "${BEGIN_CERT}" "${END_CERT}"| tr -d "\r\n" | _urlencode)"
|
||||||
|
|
||||||
|
if [ -z "$cert" ] ; then
|
||||||
|
_err "Cert for $Le_Domain is empty found, skip."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
data="{\"resource\": \"revoke-cert\", \"certificate\": \"$cert\"}"
|
||||||
|
uri="$API/acme/revoke-cert"
|
||||||
|
|
||||||
|
_info "Try domain key first."
|
||||||
|
if _send_signed_request $uri "$data" "" "$CERT_KEY_PATH"; then
|
||||||
|
if [ -z "$response" ] ; then
|
||||||
|
_info "Revoke success."
|
||||||
|
rm -f $CERT_PATH
|
||||||
|
return 0
|
||||||
|
else
|
||||||
|
_err "Revoke error by domain key."
|
||||||
|
_err "$resource"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
_info "Then try account key."
|
||||||
|
|
||||||
|
if _send_signed_request $uri "$data" "" "$ACCOUNT_KEY_PATH" ; then
|
||||||
|
if [ -z "$response" ] ; then
|
||||||
|
_info "Revoke success."
|
||||||
|
rm -f $CERT_PATH
|
||||||
|
return 0
|
||||||
|
else
|
||||||
|
_err "Revoke error."
|
||||||
|
_debug "$resource"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
# Detect profile file if not specified as environment variable
|
# Detect profile file if not specified as environment variable
|
||||||
_detect_profile() {
|
_detect_profile() {
|
||||||
@ -1690,6 +1744,8 @@ renewAll:
|
|||||||
Renew all the certs.
|
Renew all the certs.
|
||||||
uninstall:
|
uninstall:
|
||||||
Uninstall le.sh, and uninstall the cron job.
|
Uninstall le.sh, and uninstall the cron job.
|
||||||
|
revoke:
|
||||||
|
Revoke a cert.
|
||||||
version:
|
version:
|
||||||
Show version info.
|
Show version info.
|
||||||
installcronjob:
|
installcronjob:
|
||||||
|
Loading…
Reference in New Issue
Block a user