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
f897ab4e
Unverified
Commit
f897ab4e
authored
May 31, 2022
by
neil
Committed by
GitHub
May 31, 2022
Browse files
Merge pull request #4114 from acmesh-official/dev
sync
parents
2133897b
993c187e
Changes
6
Hide whitespace changes
Inline
Side-by-side
dnsapi/dns_aws.sh
View file @
f897ab4e
...
@@ -152,7 +152,7 @@ dns_aws_rm() {
...
@@ -152,7 +152,7 @@ dns_aws_rm() {
_get_root
()
{
_get_root
()
{
domain
=
$1
domain
=
$1
i
=
2
i
=
1
p
=
1
p
=
1
if
aws_rest GET
"2013-04-01/hostedzone"
;
then
if
aws_rest GET
"2013-04-01/hostedzone"
;
then
...
...
dnsapi/dns_edgedns.sh
View file @
f897ab4e
...
@@ -176,6 +176,7 @@ _EDGEDNS_credentials() {
...
@@ -176,6 +176,7 @@ _EDGEDNS_credentials() {
_debug
"GettingEdge DNS credentials"
_debug
"GettingEdge DNS credentials"
_log
"
$(
printf
"ACME DNSAPI Edge DNS version %s"
${
ACME_EDGEDNS_VERSION
}
)
"
_log
"
$(
printf
"ACME DNSAPI Edge DNS version %s"
${
ACME_EDGEDNS_VERSION
}
)
"
args_missing
=
0
args_missing
=
0
AKAMAI_ACCESS_TOKEN
=
"
${
AKAMAI_ACCESS_TOKEN
:-
$(
_readaccountconf_mutable AKAMAI_ACCESS_TOKEN
)
}
"
if
[
-z
"
$AKAMAI_ACCESS_TOKEN
"
]
;
then
if
[
-z
"
$AKAMAI_ACCESS_TOKEN
"
]
;
then
AKAMAI_ACCESS_TOKEN
=
""
AKAMAI_ACCESS_TOKEN
=
""
AKAMAI_CLIENT_TOKEN
=
""
AKAMAI_CLIENT_TOKEN
=
""
...
@@ -184,6 +185,7 @@ _EDGEDNS_credentials() {
...
@@ -184,6 +185,7 @@ _EDGEDNS_credentials() {
_err
"AKAMAI_ACCESS_TOKEN is missing"
_err
"AKAMAI_ACCESS_TOKEN is missing"
args_missing
=
1
args_missing
=
1
fi
fi
AKAMAI_CLIENT_TOKEN
=
"
${
AKAMAI_CLIENT_TOKEN
:-
$(
_readaccountconf_mutable AKAMAI_CLIENT_TOKEN
)
}
"
if
[
-z
"
$AKAMAI_CLIENT_TOKEN
"
]
;
then
if
[
-z
"
$AKAMAI_CLIENT_TOKEN
"
]
;
then
AKAMAI_ACCESS_TOKEN
=
""
AKAMAI_ACCESS_TOKEN
=
""
AKAMAI_CLIENT_TOKEN
=
""
AKAMAI_CLIENT_TOKEN
=
""
...
@@ -192,6 +194,7 @@ _EDGEDNS_credentials() {
...
@@ -192,6 +194,7 @@ _EDGEDNS_credentials() {
_err
"AKAMAI_CLIENT_TOKEN is missing"
_err
"AKAMAI_CLIENT_TOKEN is missing"
args_missing
=
1
args_missing
=
1
fi
fi
AKAMAI_HOST
=
"
${
AKAMAI_HOST
:-
$(
_readaccountconf_mutable AKAMAI_HOST
)
}
"
if
[
-z
"
$AKAMAI_HOST
"
]
;
then
if
[
-z
"
$AKAMAI_HOST
"
]
;
then
AKAMAI_ACCESS_TOKEN
=
""
AKAMAI_ACCESS_TOKEN
=
""
AKAMAI_CLIENT_TOKEN
=
""
AKAMAI_CLIENT_TOKEN
=
""
...
@@ -200,6 +203,7 @@ _EDGEDNS_credentials() {
...
@@ -200,6 +203,7 @@ _EDGEDNS_credentials() {
_err
"AKAMAI_HOST is missing"
_err
"AKAMAI_HOST is missing"
args_missing
=
1
args_missing
=
1
fi
fi
AKAMAI_CLIENT_SECRET
=
"
${
AKAMAI_CLIENT_SECRET
:-
$(
_readaccountconf_mutable AKAMAI_CLIENT_SECRET
)
}
"
if
[
-z
"
$AKAMAI_CLIENT_SECRET
"
]
;
then
if
[
-z
"
$AKAMAI_CLIENT_SECRET
"
]
;
then
AKAMAI_ACCESS_TOKEN
=
""
AKAMAI_ACCESS_TOKEN
=
""
AKAMAI_CLIENT_TOKEN
=
""
AKAMAI_CLIENT_TOKEN
=
""
...
...
dnsapi/dns_ionos.sh
View file @
f897ab4e
#!/usr/bin/env sh
#!/usr/bin/env sh
# Supports IONOS DNS API
Beta
v1.0.
0
# Supports IONOS DNS API v1.0.
1
#
#
# Usage:
# Usage:
# Export IONOS_PREFIX and IONOS_SECRET before calling acme.sh:
# Export IONOS_PREFIX and IONOS_SECRET before calling acme.sh:
...
@@ -26,7 +26,7 @@ dns_ionos_add() {
...
@@ -26,7 +26,7 @@ dns_ionos_add() {
_body
=
"[{
\"
name
\"
:
\"
$_sub_domain
.
$_domain
\"
,
\"
type
\"
:
\"
TXT
\"
,
\"
content
\"
:
\"
$txtvalue
\"
,
\"
ttl
\"
:
$IONOS_TXT_TTL
,
\"
prio
\"
:
$IONOS_TXT_PRIO
,
\"
disabled
\"
:false}]"
_body
=
"[{
\"
name
\"
:
\"
$_sub_domain
.
$_domain
\"
,
\"
type
\"
:
\"
TXT
\"
,
\"
content
\"
:
\"
$txtvalue
\"
,
\"
ttl
\"
:
$IONOS_TXT_TTL
,
\"
prio
\"
:
$IONOS_TXT_PRIO
,
\"
disabled
\"
:false}]"
if
_ionos_rest POST
"
$IONOS_ROUTE_ZONES
/
$_zone_id
/records"
"
$_body
"
&&
[
-z
"
$response
"
]
;
then
if
_ionos_rest POST
"
$IONOS_ROUTE_ZONES
/
$_zone_id
/records"
"
$_body
"
&&
[
"
$_code
"
=
"201
"
]
;
then
_info
"TXT record has been created successfully."
_info
"TXT record has been created successfully."
return
0
return
0
fi
fi
...
@@ -47,7 +47,7 @@ dns_ionos_rm() {
...
@@ -47,7 +47,7 @@ dns_ionos_rm() {
return
1
return
1
fi
fi
if
_ionos_rest DELETE
"
$IONOS_ROUTE_ZONES
/
$_zone_id
/records/
$_record_id
"
&&
[
-z
"
$response
"
]
;
then
if
_ionos_rest DELETE
"
$IONOS_ROUTE_ZONES
/
$_zone_id
/records/
$_record_id
"
&&
[
"
$_code
"
=
"200
"
]
;
then
_info
"TXT record has been deleted successfully."
_info
"TXT record has been deleted successfully."
return
0
return
0
fi
fi
...
@@ -85,7 +85,7 @@ _get_root() {
...
@@ -85,7 +85,7 @@ _get_root() {
p
=
1
p
=
1
if
_ionos_rest GET
"
$IONOS_ROUTE_ZONES
"
;
then
if
_ionos_rest GET
"
$IONOS_ROUTE_ZONES
"
;
then
response
=
"
$(
echo
"
$response
"
|
tr
-d
"
\n
"
)
"
_
response
=
"
$(
echo
"
$
_
response
"
|
tr
-d
"
\n
"
)
"
while
true
;
do
while
true
;
do
h
=
$(
printf
"%s"
"
$domain
"
|
cut
-d
.
-f
$i
-100
)
h
=
$(
printf
"%s"
"
$domain
"
|
cut
-d
.
-f
$i
-100
)
...
@@ -93,7 +93,7 @@ _get_root() {
...
@@ -93,7 +93,7 @@ _get_root() {
return
1
return
1
fi
fi
_zone
=
"
$(
echo
"
$response
"
| _egrep_o
"
\"
name
\"
:
\"
$h
\"
.*
\}
"
)
"
_zone
=
"
$(
echo
"
$
_
response
"
| _egrep_o
"
\"
name
\"
:
\"
$h
\"
.*
\}
"
)
"
if
[
"
$_zone
"
]
;
then
if
[
"
$_zone
"
]
;
then
_zone_id
=
$(
printf
"%s
\n
"
"
$_zone
"
| _egrep_o
"
\"
id
\"
:
\"
[a-fA-F0-9
\-
]*
\"
"
| _head_n 1 |
cut
-d
:
-f
2 |
tr
-d
'\"'
)
_zone_id
=
$(
printf
"%s
\n
"
"
$_zone
"
| _egrep_o
"
\"
id
\"
:
\"
[a-fA-F0-9
\-
]*
\"
"
| _head_n 1 |
cut
-d
:
-f
2 |
tr
-d
'\"'
)
if
[
"
$_zone_id
"
]
;
then
if
[
"
$_zone_id
"
]
;
then
...
@@ -120,9 +120,9 @@ _ionos_get_record() {
...
@@ -120,9 +120,9 @@ _ionos_get_record() {
txtrecord
=
$3
txtrecord
=
$3
if
_ionos_rest GET
"
$IONOS_ROUTE_ZONES
/
$zone_id
?recordName=
$fulldomain
&recordType=TXT"
;
then
if
_ionos_rest GET
"
$IONOS_ROUTE_ZONES
/
$zone_id
?recordName=
$fulldomain
&recordType=TXT"
;
then
response
=
"
$(
echo
"
$response
"
|
tr
-d
"
\n
"
)
"
_
response
=
"
$(
echo
"
$
_
response
"
|
tr
-d
"
\n
"
)
"
_record
=
"
$(
echo
"
$response
"
| _egrep_o
"
\"
name
\"
:
\"
$fulldomain
\"
[^
\}
]*
\"
type
\"
:
\"
TXT
\"
[^
\}
]*
\"
content
\"
:
\"\\\\\"
$txtrecord
\\\\\"\"
.*
\}
"
)
"
_record
=
"
$(
echo
"
$
_
response
"
| _egrep_o
"
\"
name
\"
:
\"
$fulldomain
\"
[^
\}
]*
\"
type
\"
:
\"
TXT
\"
[^
\}
]*
\"
content
\"
:
\"\\\\\"
$txtrecord
\\\\\"\"
.*
\}
"
)
"
if
[
"
$_record
"
]
;
then
if
[
"
$_record
"
]
;
then
_record_id
=
$(
printf
"%s
\n
"
"
$_record
"
| _egrep_o
"
\"
id
\"
:
\"
[a-fA-F0-9
\-
]*
\"
"
| _head_n 1 |
cut
-d
:
-f
2 |
tr
-d
'\"'
)
_record_id
=
$(
printf
"%s
\n
"
"
$_record
"
| _egrep_o
"
\"
id
\"
:
\"
[a-fA-F0-9
\-
]*
\"
"
| _head_n 1 |
cut
-d
:
-f
2 |
tr
-d
'\"'
)
...
@@ -142,22 +142,30 @@ _ionos_rest() {
...
@@ -142,22 +142,30 @@ _ionos_rest() {
export
_H1
=
"X-API-Key:
$IONOS_API_KEY
"
export
_H1
=
"X-API-Key:
$IONOS_API_KEY
"
# clear headers
:
>
"
$HTTP_HEADER
"
if
[
"
$method
"
!=
"GET"
]
;
then
if
[
"
$method
"
!=
"GET"
]
;
then
export
_H2
=
"Accept: application/json"
export
_H2
=
"Accept: application/json"
export
_H3
=
"Content-Type: application/json"
export
_H3
=
"Content-Type: application/json"
response
=
"
$(
_post
"
$data
"
"
$IONOS_API$route
"
""
"
$method
"
"application/json"
)
"
_
response
=
"
$(
_post
"
$data
"
"
$IONOS_API$route
"
""
"
$method
"
"application/json"
)
"
else
else
export
_H2
=
"Accept: */*"
export
_H2
=
"Accept: */*"
export
_H3
=
export
_H3
=
response
=
"
$(
_get
"
$IONOS_API$route
"
)
"
_response
=
"
$(
_get
"
$IONOS_API$route
"
)
"
fi
fi
_code
=
"
$(
grep
"^HTTP"
"
$HTTP_HEADER
"
| _tail_n 1 |
cut
-d
" "
-f
2 |
tr
-d
"
\\
r
\\
n"
)
"
if
[
"
$?
"
!=
"0"
]
;
then
if
[
"
$?
"
!=
"0"
]
;
then
_err
"Error
$route
:
$response
"
_err
"Error
$route
:
$
_
response
"
return
1
return
1
fi
fi
_debug2
"response"
"
$response
"
_debug2
"_response"
"
$_response
"
_debug2
"_code"
"
$_code
"
return
0
return
0
}
}
dnsapi/dns_nederhost.sh
View file @
f897ab4e
#!/usr/bin/env sh
#!/usr/bin/env sh
#NederHost_Key="sdfgikogfdfghjklkjhgfcdcfghj
k
"
#NederHost_Key="sdfgikogfdfghjklkjhgfcdcfghj"
NederHost_Api
=
"https://api.nederhost.nl/dns/v1"
NederHost_Api
=
"https://api.nederhost.nl/dns/v1"
...
@@ -112,12 +112,8 @@ _nederhost_rest() {
...
@@ -112,12 +112,8 @@ _nederhost_rest() {
export
_H1
=
"Authorization: Bearer
$NederHost_Key
"
export
_H1
=
"Authorization: Bearer
$NederHost_Key
"
export
_H2
=
"Content-Type: application/json"
export
_H2
=
"Content-Type: application/json"
if
[
"
$m
"
!=
"GET"
]
;
then
_debug data
"
$data
"
_debug data
"
$data
"
response
=
"
$(
_post
"
$data
"
"
$NederHost_Api
/
$ep
"
""
"
$m
"
)
"
response
=
"
$(
_post
"
$data
"
"
$NederHost_Api
/
$ep
"
""
"
$m
"
)
"
else
response
=
"
$(
_get
"
$NederHost_Api
/
$ep
"
)
"
fi
_code
=
"
$(
grep
"^HTTP"
"
$HTTP_HEADER
"
| _tail_n 1 |
cut
-d
" "
-f
2 |
tr
-d
"
\\
r
\\
n"
)
"
_code
=
"
$(
grep
"^HTTP"
"
$HTTP_HEADER
"
| _tail_n 1 |
cut
-d
" "
-f
2 |
tr
-d
"
\\
r
\\
n"
)
"
_debug
"http response code
$_code
"
_debug
"http response code
$_code
"
...
...
dnsapi/dns_oci.sh
View file @
f897ab4e
...
@@ -159,7 +159,7 @@ _oci_config() {
...
@@ -159,7 +159,7 @@ _oci_config() {
fi
fi
if
[
"
$(
printf
"%s
\n
"
"
$OCI_CLI_KEY
"
|
wc
-l
)
"
-eq
1
]
;
then
if
[
"
$(
printf
"%s
\n
"
"
$OCI_CLI_KEY
"
|
wc
-l
)
"
-eq
1
]
;
then
OCI_CLI_KEY
=
$(
printf
"%s"
"
$OCI_CLI_KEY
"
| _dbase64
multiline
)
OCI_CLI_KEY
=
$(
printf
"%s"
"
$OCI_CLI_KEY
"
| _dbase64
)
fi
fi
return
0
return
0
...
...
dnsapi/dns_selectel.sh
View file @
f897ab4e
...
@@ -76,7 +76,7 @@ dns_selectel_rm() {
...
@@ -76,7 +76,7 @@ dns_selectel_rm() {
return
1
return
1
fi
fi
_record_seg
=
"
$(
echo
"
$response
"
| _egrep_o
"
\"
content
\"
*: *
\"
$txtvalue
\"
[^}]*}"
)
"
_record_seg
=
"
$(
echo
"
$response
"
| _egrep_o
"
[^{]*
\"
content
\"
*: *
\"
$txtvalue
\"
[^}]*}"
)
"
_debug2
"_record_seg"
"
$_record_seg
"
_debug2
"_record_seg"
"
$_record_seg
"
if
[
-z
"
$_record_seg
"
]
;
then
if
[
-z
"
$_record_seg
"
]
;
then
_err
"can not find _record_seg"
_err
"can not find _record_seg"
...
@@ -120,7 +120,7 @@ _get_root() {
...
@@ -120,7 +120,7 @@ _get_root() {
return
1
return
1
fi
fi
if
_contains
"
$response
"
"
\"
name
\"
:
\"
$h
\"
,"
;
then
if
_contains
"
$response
"
"
\"
name
\"
*
:
*
\"
$h
\"
,"
;
then
_sub_domain
=
$(
printf
"%s"
"
$domain
"
|
cut
-d
.
-f
1-
$p
)
_sub_domain
=
$(
printf
"%s"
"
$domain
"
|
cut
-d
.
-f
1-
$p
)
_domain
=
$h
_domain
=
$h
_debug
"Getting domain id for
$h
"
_debug
"Getting domain id for
$h
"
...
...
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