|
|
@ -130,6 +130,7 @@ _b64() {
|
|
|
|
_send_signed_request() {
|
|
|
|
_send_signed_request() {
|
|
|
|
url=$1
|
|
|
|
url=$1
|
|
|
|
payload=$2
|
|
|
|
payload=$2
|
|
|
|
|
|
|
|
needbase64=$3
|
|
|
|
|
|
|
|
|
|
|
|
_debug url $url
|
|
|
|
_debug url $url
|
|
|
|
_debug payload "$payload"
|
|
|
|
_debug payload "$payload"
|
|
|
@ -160,7 +161,11 @@ _send_signed_request() {
|
|
|
|
body="{\"header\": $HEADER, \"protected\": \"$protected64\", \"payload\": \"$payload64\", \"signature\": \"$sig\"}"
|
|
|
|
body="{\"header\": $HEADER, \"protected\": \"$protected64\", \"payload\": \"$payload64\", \"signature\": \"$sig\"}"
|
|
|
|
_debug body "$body"
|
|
|
|
_debug body "$body"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if [ "$needbase64" ] ; then
|
|
|
|
|
|
|
|
response="$($CURL -X POST --data "$body" $url | base64)"
|
|
|
|
|
|
|
|
else
|
|
|
|
response="$($CURL -X POST --data "$body" $url)"
|
|
|
|
response="$($CURL -X POST --data "$body" $url)"
|
|
|
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
|
|
responseHeaders="$(cat $CURL_HEADER)"
|
|
|
|
responseHeaders="$(cat $CURL_HEADER)"
|
|
|
|
|
|
|
|
|
|
|
@ -383,7 +388,7 @@ issue() {
|
|
|
|
|
|
|
|
|
|
|
|
_info "Verify finished, start to sign."
|
|
|
|
_info "Verify finished, start to sign."
|
|
|
|
der="$(openssl req -in $CSR_PATH -outform DER | base64 | _b64)"
|
|
|
|
der="$(openssl req -in $CSR_PATH -outform DER | base64 | _b64)"
|
|
|
|
_send_signed_request "$API/acme/new-cert" "{\"resource\": \"new-cert\", \"csr\": \"$der\"}"
|
|
|
|
_send_signed_request "$API/acme/new-cert" "{\"resource\": \"new-cert\", \"csr\": \"$der\"}" "needbase64"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Le_LinkCert="$(grep -i -o '^Location.*' $CURL_HEADER |sed 's/\r//g'| cut -d " " -f 2)"
|
|
|
|
Le_LinkCert="$(grep -i -o '^Location.*' $CURL_HEADER |sed 's/\r//g'| cut -d " " -f 2)"
|
|
|
@ -405,6 +410,7 @@ issue() {
|
|
|
|
_setopt $DOMAIN_CONF "Le_Keylength" "=" "$Le_Keylength"
|
|
|
|
_setopt $DOMAIN_CONF "Le_Keylength" "=" "$Le_Keylength"
|
|
|
|
|
|
|
|
|
|
|
|
if [ -z "$Le_LinkCert" ] ; then
|
|
|
|
if [ -z "$Le_LinkCert" ] ; then
|
|
|
|
|
|
|
|
response="$(echo $response | base64 -d)"
|
|
|
|
_info "Sign failed: $(echo "$response" | grep -o '"detail":"[^"]*"')"
|
|
|
|
_info "Sign failed: $(echo "$response" | grep -o '"detail":"[^"]*"')"
|
|
|
|
return 1
|
|
|
|
return 1
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|