Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ruanhaishen
Acme.Sh
Commits
2ce145f3
Unverified
Commit
2ce145f3
authored
Jan 09, 2022
by
Felix Matouschek
Committed by
GitHub
Jan 09, 2022
Browse files
Refactoring amcedns api (second try) (#3231)
parent
7e7291ac
Changes
1
Hide whitespace changes
Inline
Side-by-side
dnsapi/dns_acmedns.sh
100644 → 100755
View file @
2ce145f3
#!/usr/bin/env sh
#!/usr/bin/env sh
#
#
#Author: Wolfgang Ebner
#Author: Wolfgang Ebner
#Report Bugs here: https://github.com/webner/acme.sh
#Author: Sven Neubuaer
#Report Bugs here: https://github.com/dampfklon/acme.sh
#
# Usage:
# export ACMEDNS_BASE_URL="https://auth.acme-dns.io"
#
# You can optionally define an already existing account:
#
# export ACMEDNS_USERNAME="<username>"
# export ACMEDNS_PASSWORD="<password>"
# export ACMEDNS_SUBDOMAIN="<subdomain>"
#
#
######## Public functions #####################
######## Public functions #####################
#Usage: dns_acmedns_add _acme-challenge.www.domain.com "XKrxpRBosdIKFzxW_CT3KLZNf6q0HG9i01zxXp5CPBs"
#Usage: dns_acmedns_add _acme-challenge.www.domain.com "XKrxpRBosdIKFzxW_CT3KLZNf6q0HG9i01zxXp5CPBs"
# Used to add txt record
dns_acmedns_add
()
{
dns_acmedns_add
()
{
fulldomain
=
$1
fulldomain
=
$1
txtvalue
=
$2
txtvalue
=
$2
_info
"Using acme-dns"
_info
"Using acme-dns"
_debug fulldomain
"
$fulldomain
"
_debug
"
fulldomain
$fulldomain
"
_debug txtvalue
"
$txtvalue
"
_debug
"
txtvalue
$txtvalue
"
ACMEDNS_UPDATE_URL
=
"
${
ACMEDNS_UPDATE_URL
:-
$(
_read
accountconf
_mutable ACMEDNS_UPDATE_URL
)
}
"
#for compatiblity from
account
conf
ACMEDNS_USERNAME
=
"
${
ACMEDNS_USERNAME
:-
$(
_readaccountconf_mutable ACMEDNS_USERNAME
)
}
"
ACMEDNS_USERNAME
=
"
${
ACMEDNS_USERNAME
:-
$(
_readaccountconf_mutable ACMEDNS_USERNAME
)
}
"
_clearaccountconf_mutable ACMEDNS_USERNAME
ACMEDNS_PASSWORD
=
"
${
ACMEDNS_PASSWORD
:-
$(
_readaccountconf_mutable ACMEDNS_PASSWORD
)
}
"
ACMEDNS_PASSWORD
=
"
${
ACMEDNS_PASSWORD
:-
$(
_readaccountconf_mutable ACMEDNS_PASSWORD
)
}
"
_clearaccountconf_mutable ACMEDNS_PASSWORD
ACMEDNS_SUBDOMAIN
=
"
${
ACMEDNS_SUBDOMAIN
:-
$(
_readaccountconf_mutable ACMEDNS_SUBDOMAIN
)
}
"
ACMEDNS_SUBDOMAIN
=
"
${
ACMEDNS_SUBDOMAIN
:-
$(
_readaccountconf_mutable ACMEDNS_SUBDOMAIN
)
}
"
_clearaccountconf_mutable ACMEDNS_SUBDOMAIN
ACMEDNS_BASE_URL
=
"
${
ACMEDNS_BASE_URL
:-
$(
_readdomainconf ACMEDNS_BASE_URL
)
}
"
ACMEDNS_USERNAME
=
"
${
ACMEDNS_USERNAME
:-
$(
_readdomainconf ACMEDNS_USERNAME
)
}
"
ACMEDNS_PASSWORD
=
"
${
ACMEDNS_PASSWORD
:-
$(
_readdomainconf ACMEDNS_PASSWORD
)
}
"
ACMEDNS_SUBDOMAIN
=
"
${
ACMEDNS_SUBDOMAIN
:-
$(
_readdomainconf ACMEDNS_SUBDOMAIN
)
}
"
if
[
"
$ACMEDNS_BASE_URL
"
=
""
]
;
then
ACMEDNS_BASE_URL
=
"https://auth.acme-dns.io"
fi
ACMEDNS_UPDATE_URL
=
"
$ACMEDNS_BASE_URL
/update"
ACMEDNS_REGISTER_URL
=
"
$ACMEDNS_BASE_URL
/register"
if
[
"
$ACMEDNS_UPDATE_URL
"
=
""
]
;
then
if
[
-z
"
$ACMEDNS_USERNAME
"
]
||
[
-z
"
$ACMEDNS_PASSWORD
"
]
;
then
ACMEDNS_UPDATE_URL
=
"https://auth.acme-dns.io/update"
response
=
"
$(
_post
""
"
$ACMEDNS_REGISTER_URL
"
""
"POST"
)
"
_debug response
"
$response
"
ACMEDNS_USERNAME
=
$(
echo
"
$response
"
|
sed
-n
's/^{.*\"username\":[ ]*\"\([^\"]*\)\".*}/\1/p'
)
_debug
"received username:
$ACMEDNS_USERNAME
"
ACMEDNS_PASSWORD
=
$(
echo
"
$response
"
|
sed
-n
's/^{.*\"password\":[ ]*\"\([^\"]*\)\".*}/\1/p'
)
_debug
"received password:
$ACMEDNS_PASSWORD
"
ACMEDNS_SUBDOMAIN
=
$(
echo
"
$response
"
|
sed
-n
's/^{.*\"subdomain\":[ ]*\"\([^\"]*\)\".*}/\1/p'
)
_debug
"received subdomain:
$ACMEDNS_SUBDOMAIN
"
ACMEDNS_FULLDOMAIN
=
$(
echo
"
$response
"
|
sed
-n
's/^{.*\"fulldomain\":[ ]*\"\([^\"]*\)\".*}/\1/p'
)
_info
"##########################################################"
_info
"# Create
$fulldomain
CNAME
$ACMEDNS_FULLDOMAIN
DNS entry #"
_info
"##########################################################"
_info
"Press enter to continue... "
read
-r
_
fi
fi
_save
accountconf_mutable
ACMEDNS_
UPDAT
E_URL
"
$ACMEDNS_
UPDAT
E_URL
"
_save
domainconf
ACMEDNS_
BAS
E_URL
"
$ACMEDNS_
BAS
E_URL
"
_save
accountconf_mutable
ACMEDNS_USERNAME
"
$ACMEDNS_USERNAME
"
_save
domainconf
ACMEDNS_USERNAME
"
$ACMEDNS_USERNAME
"
_save
accountconf_mutable
ACMEDNS_PASSWORD
"
$ACMEDNS_PASSWORD
"
_save
domainconf
ACMEDNS_PASSWORD
"
$ACMEDNS_PASSWORD
"
_save
accountconf_mutable
ACMEDNS_SUBDOMAIN
"
$ACMEDNS_SUBDOMAIN
"
_save
domainconf
ACMEDNS_SUBDOMAIN
"
$ACMEDNS_SUBDOMAIN
"
export
_H1
=
"X-Api-User:
$ACMEDNS_USERNAME
"
export
_H1
=
"X-Api-User:
$ACMEDNS_USERNAME
"
export
_H2
=
"X-Api-Key:
$ACMEDNS_PASSWORD
"
export
_H2
=
"X-Api-Key:
$ACMEDNS_PASSWORD
"
...
@@ -48,8 +87,8 @@ dns_acmedns_rm() {
...
@@ -48,8 +87,8 @@ dns_acmedns_rm() {
fulldomain
=
$1
fulldomain
=
$1
txtvalue
=
$2
txtvalue
=
$2
_info
"Using acme-dns"
_info
"Using acme-dns"
_debug fulldomain
"
$fulldomain
"
_debug
"
fulldomain
$fulldomain
"
_debug txtvalue
"
$txtvalue
"
_debug
"
txtvalue
$txtvalue
"
}
}
#################### Private functions below ##################################
#################### Private functions below ##################################
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment