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
19c43451
Commit
19c43451
authored
Aug 17, 2020
by
neil
Browse files
fix shfmt
parent
d5d38b33
Changes
28
Expand all
Hide whitespace changes
Inline
Side-by-side
acme.sh
View file @
19c43451
This diff is collapsed.
Click to expand it.
deploy/exim4.sh
View file @
19c43451
...
@@ -69,8 +69,8 @@ exim4_deploy() {
...
@@ -69,8 +69,8 @@ exim4_deploy() {
cp
"
$_exim4_conf
"
"
$_backup_conf
"
cp
"
$_exim4_conf
"
"
$_backup_conf
"
_info
"Modify exim4 conf:
$_exim4_conf
"
_info
"Modify exim4 conf:
$_exim4_conf
"
if
_setopt
"
$_exim4_conf
"
"tls_certificate"
"="
"
$_real_fullchain
"
\
if
_setopt
"
$_exim4_conf
"
"tls_certificate"
"="
"
$_real_fullchain
"
&&
&&
_setopt
"
$_exim4_conf
"
"tls_privatekey"
"="
"
$_real_key
"
;
then
_setopt
"
$_exim4_conf
"
"tls_privatekey"
"="
"
$_real_key
"
;
then
_info
"Set config success!"
_info
"Set config success!"
else
else
_err
"Config exim4 server error, please report bug to us."
_err
"Config exim4 server error, please report bug to us."
...
...
deploy/ssh.sh
View file @
19c43451
...
@@ -195,8 +195,8 @@ then rm -rf \"\$fn\"; echo \"Backup \$fn deleted as older than 180 days\"; fi; d
...
@@ -195,8 +195,8 @@ then rm -rf \"\$fn\"; echo \"Backup \$fn deleted as older than 180 days\"; fi; d
fi
fi
if
[
-n
"
$Le_Deploy_ssh_cafile
"
]
;
then
if
[
-n
"
$Le_Deploy_ssh_cafile
"
]
;
then
_pipe
=
">"
_pipe
=
">"
if
[
"
$Le_Deploy_ssh_cafile
"
=
"
$Le_Deploy_ssh_keyfile
"
]
\
if
[
"
$Le_Deploy_ssh_cafile
"
=
"
$Le_Deploy_ssh_keyfile
"
]
||
||
[
"
$Le_Deploy_ssh_cafile
"
=
"
$Le_Deploy_ssh_certfile
"
]
;
then
[
"
$Le_Deploy_ssh_cafile
"
=
"
$Le_Deploy_ssh_certfile
"
]
;
then
# if filename is same as previous file then append.
# if filename is same as previous file then append.
_pipe
=
">>"
_pipe
=
">>"
elif
[
"
$Le_Deploy_ssh_backup
"
=
"yes"
]
;
then
elif
[
"
$Le_Deploy_ssh_backup
"
=
"yes"
]
;
then
...
@@ -222,9 +222,9 @@ then rm -rf \"\$fn\"; echo \"Backup \$fn deleted as older than 180 days\"; fi; d
...
@@ -222,9 +222,9 @@ then rm -rf \"\$fn\"; echo \"Backup \$fn deleted as older than 180 days\"; fi; d
fi
fi
if
[
-n
"
$Le_Deploy_ssh_fullchain
"
]
;
then
if
[
-n
"
$Le_Deploy_ssh_fullchain
"
]
;
then
_pipe
=
">"
_pipe
=
">"
if
[
"
$Le_Deploy_ssh_fullchain
"
=
"
$Le_Deploy_ssh_keyfile
"
]
\
if
[
"
$Le_Deploy_ssh_fullchain
"
=
"
$Le_Deploy_ssh_keyfile
"
]
||
||
[
"
$Le_Deploy_ssh_fullchain
"
=
"
$Le_Deploy_ssh_certfile
"
]
\
[
"
$Le_Deploy_ssh_fullchain
"
=
"
$Le_Deploy_ssh_certfile
"
]
||
||
[
"
$Le_Deploy_ssh_fullchain
"
=
"
$Le_Deploy_ssh_cafile
"
]
;
then
[
"
$Le_Deploy_ssh_fullchain
"
=
"
$Le_Deploy_ssh_cafile
"
]
;
then
# if filename is same as previous file then append.
# if filename is same as previous file then append.
_pipe
=
">>"
_pipe
=
">>"
elif
[
"
$Le_Deploy_ssh_backup
"
=
"yes"
]
;
then
elif
[
"
$Le_Deploy_ssh_backup
"
=
"yes"
]
;
then
...
...
deploy/vsftpd.sh
View file @
19c43451
...
@@ -65,9 +65,9 @@ vsftpd_deploy() {
...
@@ -65,9 +65,9 @@ vsftpd_deploy() {
cp
"
$_vsftpd_conf
"
"
$_backup_conf
"
cp
"
$_vsftpd_conf
"
"
$_backup_conf
"
_info
"Modify vsftpd conf:
$_vsftpd_conf
"
_info
"Modify vsftpd conf:
$_vsftpd_conf
"
if
_setopt
"
$_vsftpd_conf
"
"rsa_cert_file"
"="
"
$_real_fullchain
"
\
if
_setopt
"
$_vsftpd_conf
"
"rsa_cert_file"
"="
"
$_real_fullchain
"
&&
&&
_setopt
"
$_vsftpd_conf
"
"rsa_private_key_file"
"="
"
$_real_key
"
\
_setopt
"
$_vsftpd_conf
"
"rsa_private_key_file"
"="
"
$_real_key
"
&&
&&
_setopt
"
$_vsftpd_conf
"
"ssl_enable"
"="
"YES"
;
then
_setopt
"
$_vsftpd_conf
"
"ssl_enable"
"="
"YES"
;
then
_info
"Set config success!"
_info
"Set config success!"
else
else
_err
"Config vsftpd server error, please report bug to us."
_err
"Config vsftpd server error, please report bug to us."
...
...
dnsapi/dns_arvan.sh
View file @
19c43451
...
@@ -5,7 +5,7 @@
...
@@ -5,7 +5,7 @@
ARVAN_API_URL
=
"https://napi.arvancloud.com/cdn/4.0/domains"
ARVAN_API_URL
=
"https://napi.arvancloud.com/cdn/4.0/domains"
#Author: Ehsan Aliakbar
#Author: Ehsan Aliakbar
#Report Bugs here: https://github.com/Neilpang/acme.sh
#Report Bugs here: https://github.com/Neilpang/acme.sh
#
#
######## Public functions #####################
######## Public functions #####################
...
...
dnsapi/dns_aws.sh
View file @
19c43451
...
@@ -222,21 +222,21 @@ _use_instance_role() {
...
@@ -222,21 +222,21 @@ _use_instance_role() {
_use_metadata
()
{
_use_metadata
()
{
_aws_creds
=
"
$(
_aws_creds
=
"
$(
_get
"
$1
"
""
1
\
_get
"
$1
"
""
1
|
|
_normalizeJson
\
_normalizeJson
|
|
tr
'{,}'
'\n'
\
tr
'{,}'
'\n'
|
|
while
read
-r
_line
;
do
while
read
-r
_line
;
do
_key
=
"
$(
echo
"
${
_line
%%
:
*
}
"
|
tr
-d
'"'
)
"
_key
=
"
$(
echo
"
${
_line
%%
:
*
}
"
|
tr
-d
'"'
)
"
_value
=
"
${
_line
#*
:
}
"
_value
=
"
${
_line
#*
:
}
"
_debug3
"_key"
"
$_key
"
_debug3
"_key"
"
$_key
"
_secure_debug3
"_value"
"
$_value
"
_secure_debug3
"_value"
"
$_value
"
case
"
$_key
"
in
case
"
$_key
"
in
AccessKeyId
)
echo
"AWS_ACCESS_KEY_ID=
$_value
"
;;
AccessKeyId
)
echo
"AWS_ACCESS_KEY_ID=
$_value
"
;;
SecretAccessKey
)
echo
"AWS_SECRET_ACCESS_KEY=
$_value
"
;;
SecretAccessKey
)
echo
"AWS_SECRET_ACCESS_KEY=
$_value
"
;;
Token
)
echo
"AWS_SESSION_TOKEN=
$_value
"
;;
Token
)
echo
"AWS_SESSION_TOKEN=
$_value
"
;;
esac
esac
done
\
done
|
|
paste
-sd
' '
-
paste
-sd
' '
-
)
"
)
"
_secure_debug
"_aws_creds"
"
$_aws_creds
"
_secure_debug
"_aws_creds"
"
$_aws_creds
"
...
...
dnsapi/dns_azure.sh
View file @
19c43451
...
@@ -220,7 +220,7 @@ _azure_rest() {
...
@@ -220,7 +220,7 @@ _azure_rest() {
export
_H2
=
"accept: application/json"
export
_H2
=
"accept: application/json"
export
_H3
=
"Content-Type: application/json"
export
_H3
=
"Content-Type: application/json"
# clear headers from previous request to avoid getting wrong http code on timeouts
# clear headers from previous request to avoid getting wrong http code on timeouts
:>
"
$HTTP_HEADER
"
:
>
"
$HTTP_HEADER
"
_debug
"
$ep
"
_debug
"
$ep
"
if
[
"
$m
"
!=
"GET"
]
;
then
if
[
"
$m
"
!=
"GET"
]
;
then
_secure_debug2
"data
$data
"
_secure_debug2
"data
$data
"
...
...
dnsapi/dns_conoha.sh
View file @
19c43451
...
@@ -115,9 +115,9 @@ dns_conoha_rm() {
...
@@ -115,9 +115,9 @@ dns_conoha_rm() {
return
1
return
1
fi
fi
record_id
=
$(
printf
"%s"
"
$response
"
| _egrep_o
'{[^}]*}'
\
record_id
=
$(
printf
"%s"
"
$response
"
| _egrep_o
'{[^}]*}'
|
|
grep
'"type":"TXT"'
|
grep
"
\"
data
\"
:
\"
$txtvalue
\"
"
| _egrep_o
"
\"
id
\"
:
\"
[^
\"
]*
\"
"
\
grep
'"type":"TXT"'
|
grep
"
\"
data
\"
:
\"
$txtvalue
\"
"
| _egrep_o
"
\"
id
\"
:
\"
[^
\"
]*
\"
"
|
|
_head_n 1 |
cut
-d
:
-f
2 |
tr
-d
\"
)
_head_n 1 |
cut
-d
:
-f
2 |
tr
-d
\"
)
if
[
-z
"
$record_id
"
]
;
then
if
[
-z
"
$record_id
"
]
;
then
_err
"Can not get record id to remove."
_err
"Can not get record id to remove."
return
1
return
1
...
...
dnsapi/dns_cyon.sh
View file @
19c43451
...
@@ -18,23 +18,23 @@
...
@@ -18,23 +18,23 @@
########
########
dns_cyon_add
()
{
dns_cyon_add
()
{
_cyon_load_credentials
\
_cyon_load_credentials
&&
&&
_cyon_load_parameters
"
$@
"
\
_cyon_load_parameters
"
$@
"
&&
&&
_cyon_print_header
"add"
\
_cyon_print_header
"add"
&&
&&
_cyon_login
\
_cyon_login
&&
&&
_cyon_change_domain_env
\
_cyon_change_domain_env
&&
&&
_cyon_add_txt
\
_cyon_add_txt
&&
&&
_cyon_logout
_cyon_logout
}
}
dns_cyon_rm
()
{
dns_cyon_rm
()
{
_cyon_load_credentials
\
_cyon_load_credentials
&&
&&
_cyon_load_parameters
"
$@
"
\
_cyon_load_parameters
"
$@
"
&&
&&
_cyon_print_header
"delete"
\
_cyon_print_header
"delete"
&&
&&
_cyon_login
\
_cyon_login
&&
&&
_cyon_change_domain_env
\
_cyon_change_domain_env
&&
&&
_cyon_delete_txt
\
_cyon_delete_txt
&&
&&
_cyon_logout
_cyon_logout
}
}
#########################
#########################
...
...
dnsapi/dns_da.sh
View file @
19c43451
...
@@ -115,23 +115,23 @@ _da_api() {
...
@@ -115,23 +115,23 @@ _da_api() {
_debug response
"
$response
"
_debug response
"
$response
"
case
"
${
cmd
}
"
in
case
"
${
cmd
}
"
in
CMD_API_DNS_CONTROL
)
CMD_API_DNS_CONTROL
)
# Parse the result in general
# Parse the result in general
# error=0&text=Records Deleted&details=
# error=0&text=Records Deleted&details=
# error=1&text=Cannot View Dns Record&details=No domain provided
# error=1&text=Cannot View Dns Record&details=No domain provided
err_field
=
"
$(
_getfield
"
$response
"
1
'&'
)
"
err_field
=
"
$(
_getfield
"
$response
"
1
'&'
)
"
txt_field
=
"
$(
_getfield
"
$response
"
2
'&'
)
"
txt_field
=
"
$(
_getfield
"
$response
"
2
'&'
)
"
details_field
=
"
$(
_getfield
"
$response
"
3
'&'
)
"
details_field
=
"
$(
_getfield
"
$response
"
3
'&'
)
"
error
=
"
$(
_getfield
"
$err_field
"
2
'='
)
"
error
=
"
$(
_getfield
"
$err_field
"
2
'='
)
"
text
=
"
$(
_getfield
"
$txt_field
"
2
'='
)
"
text
=
"
$(
_getfield
"
$txt_field
"
2
'='
)
"
details
=
"
$(
_getfield
"
$details_field
"
2
'='
)
"
details
=
"
$(
_getfield
"
$details_field
"
2
'='
)
"
_debug
"error:
${
error
}
, text:
${
text
}
, details:
${
details
}
"
_debug
"error:
${
error
}
, text:
${
text
}
, details:
${
details
}
"
if
[
"
$error
"
!=
"0"
]
;
then
if
[
"
$error
"
!=
"0"
]
;
then
_err
"error
$response
"
_err
"error
$response
"
return
1
return
1
fi
fi
;;
;;
CMD_API_SHOW_DOMAINS
)
;;
CMD_API_SHOW_DOMAINS
)
;;
esac
esac
return
0
return
0
}
}
...
...
dnsapi/dns_do.sh
View file @
19c43451
...
@@ -67,14 +67,14 @@ _dns_do_list_rrs() {
...
@@ -67,14 +67,14 @@ _dns_do_list_rrs() {
_err
"getRRList origin
${
_domain
}
failed"
_err
"getRRList origin
${
_domain
}
failed"
return
1
return
1
fi
fi
_rr_list
=
"
$(
echo
"
${
response
}
"
\
_rr_list
=
"
$(
echo
"
${
response
}
"
|
|
tr
-d
"
\n\r\t
"
\
tr
-d
"
\n\r\t
"
|
|
sed
-e
's/<item xsi:type="ns2:Map">/\n/g'
\
sed
-e
's/<item xsi:type="ns2:Map">/\n/g'
|
|
grep
">
$(
_regexcape
"
$fulldomain
"
)
</value>"
\
grep
">
$(
_regexcape
"
$fulldomain
"
)
</value>"
|
|
sed
-e
's/<\/item>/\n/g'
\
sed
-e
's/<\/item>/\n/g'
|
|
grep
'>id</key><value'
\
grep
'>id</key><value'
|
|
_egrep_o
'>[0-9]{1,16}<'
\
_egrep_o
'>[0-9]{1,16}<'
|
|
tr
-d
'><'
)
"
tr
-d
'><'
)
"
[
"
${
_rr_list
}
"
]
[
"
${
_rr_list
}
"
]
}
}
...
@@ -120,10 +120,10 @@ _get_root() {
...
@@ -120,10 +120,10 @@ _get_root() {
i
=
1
i
=
1
_dns_do_soap getDomainList
_dns_do_soap getDomainList
_all_domains
=
"
$(
echo
"
${
response
}
"
\
_all_domains
=
"
$(
echo
"
${
response
}
"
|
|
tr
-d
"
\n\r\t
"
\
tr
-d
"
\n\r\t
"
|
|
_egrep_o
'domain</key><value[^>]+>[^<]+'
\
_egrep_o
'domain</key><value[^>]+>[^<]+'
|
|
sed
-e
's/^domain<\/key><value[^>]*>//g'
)
"
sed
-e
's/^domain<\/key><value[^>]*>//g'
)
"
while
true
;
do
while
true
;
do
h
=
$(
printf
"%s"
"
$domain
"
|
cut
-d
.
-f
$i
-100
)
h
=
$(
printf
"%s"
"
$domain
"
|
cut
-d
.
-f
$i
-100
)
...
...
dnsapi/dns_easydns.sh
View file @
19c43451
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
#######################################################
#######################################################
#
#
# easyDNS REST API for acme.sh by Neilpang based on dns_cf.sh
# easyDNS REST API for acme.sh by Neilpang based on dns_cf.sh
#
#
# API Documentation: https://sandbox.rest.easydns.net:3001/
# API Documentation: https://sandbox.rest.easydns.net:3001/
#
#
# Author: wurzelpanzer [wurzelpanzer@maximolider.net]
# Author: wurzelpanzer [wurzelpanzer@maximolider.net]
...
...
dnsapi/dns_freedns.sh
View file @
19c43451
...
@@ -303,10 +303,10 @@ _freedns_domain_id() {
...
@@ -303,10 +303,10 @@ _freedns_domain_id() {
return
1
return
1
fi
fi
domain_id
=
"
$(
echo
"
$htmlpage
"
|
tr
-d
"
\t\r\n\v\f
"
|
sed
's/<tr>/@<tr>/g'
|
tr
'@'
'\n'
\
domain_id
=
"
$(
echo
"
$htmlpage
"
|
tr
-d
"
\t\r\n\v\f
"
|
sed
's/<tr>/@<tr>/g'
|
tr
'@'
'\n'
|
|
grep
"<td>
$search_domain
</td>
\|
<td>
$search_domain
(.*)</td>"
\
grep
"<td>
$search_domain
</td>
\|
<td>
$search_domain
(.*)</td>"
|
|
sed
-n
's/.*\(edit\.php?edit_domain_id=[0-9a-zA-Z]*\).*/\1/p'
\
sed
-n
's/.*\(edit\.php?edit_domain_id=[0-9a-zA-Z]*\).*/\1/p'
|
|
cut
-d
=
-f
2
)
"
cut
-d
=
-f
2
)
"
# The above beauty extracts domain ID from the html page...
# The above beauty extracts domain ID from the html page...
# strip out all blank space and new lines. Then insert newlines
# strip out all blank space and new lines. Then insert newlines
# before each table row <tr>
# before each table row <tr>
...
@@ -349,11 +349,11 @@ _freedns_data_id() {
...
@@ -349,11 +349,11 @@ _freedns_data_id() {
return
1
return
1
fi
fi
data_id
=
"
$(
echo
"
$htmlpage
"
|
tr
-d
"
\t\r\n\v\f
"
|
sed
's/<tr>/@<tr>/g'
|
tr
'@'
'\n'
\
data_id
=
"
$(
echo
"
$htmlpage
"
|
tr
-d
"
\t\r\n\v\f
"
|
sed
's/<tr>/@<tr>/g'
|
tr
'@'
'\n'
|
|
grep
"<td[a-zA-Z=#]*>
$record_type
</td>"
\
grep
"<td[a-zA-Z=#]*>
$record_type
</td>"
|
|
grep
"<ahref.*>
$search_domain
</a>"
\
grep
"<ahref.*>
$search_domain
</a>"
|
|
sed
-n
's/.*\(edit\.php?data_id=[0-9a-zA-Z]*\).*/\1/p'
\
sed
-n
's/.*\(edit\.php?data_id=[0-9a-zA-Z]*\).*/\1/p'
|
|
cut
-d
=
-f
2
)
"
cut
-d
=
-f
2
)
"
# The above beauty extracts data ID from the html page...
# The above beauty extracts data ID from the html page...
# strip out all blank space and new lines. Then insert newlines
# strip out all blank space and new lines. Then insert newlines
# before each table row <tr>
# before each table row <tr>
...
...
dnsapi/dns_gandi_livedns.sh
View file @
19c43451
...
@@ -69,9 +69,9 @@ dns_gandi_livedns_rm() {
...
@@ -69,9 +69,9 @@ dns_gandi_livedns_rm() {
_gandi_livedns_rest PUT
\
_gandi_livedns_rest PUT
\
"domains/
$_domain
/records/
$_sub_domain
/TXT"
\
"domains/
$_domain
/records/
$_sub_domain
/TXT"
\
"{
\"
rrset_ttl
\"
: 300,
\"
rrset_values
\"
:
$_new_rrset_values
}"
\
"{
\"
rrset_ttl
\"
: 300,
\"
rrset_values
\"
:
$_new_rrset_values
}"
&&
&&
_contains
"
$response
"
'{"message": "DNS Record Created"}'
\
_contains
"
$response
"
'{"message": "DNS Record Created"}'
&&
&&
_info
"Removing record
$(
__green
"success"
)
"
_info
"Removing record
$(
__green
"success"
)
"
}
}
#################### Private functions below ##################################
#################### Private functions below ##################################
...
@@ -125,9 +125,9 @@ _dns_gandi_append_record() {
...
@@ -125,9 +125,9 @@ _dns_gandi_append_record() {
fi
fi
_debug new_rrset_values
"
$_rrset_values
"
_debug new_rrset_values
"
$_rrset_values
"
_gandi_livedns_rest PUT
"domains/
$_domain
/records/
$sub_domain
/TXT"
\
_gandi_livedns_rest PUT
"domains/
$_domain
/records/
$sub_domain
/TXT"
\
"{
\"
rrset_ttl
\"
: 300,
\"
rrset_values
\"
:
$_rrset_values
}"
\
"{
\"
rrset_ttl
\"
: 300,
\"
rrset_values
\"
:
$_rrset_values
}"
&&
&&
_contains
"
$response
"
'{"message": "DNS Record Created"}'
\
_contains
"
$response
"
'{"message": "DNS Record Created"}'
&&
&&
_info
"Adding record
$(
__green
"success"
)
"
_info
"Adding record
$(
__green
"success"
)
"
}
}
_dns_gandi_existing_rrset_values
()
{
_dns_gandi_existing_rrset_values
()
{
...
@@ -145,8 +145,8 @@ _dns_gandi_existing_rrset_values() {
...
@@ -145,8 +145,8 @@ _dns_gandi_existing_rrset_values() {
return
1
return
1
fi
fi
_debug
"Already has TXT record."
_debug
"Already has TXT record."
_rrset_values
=
$(
echo
"
$response
"
| _egrep_o
'rrset_values.*\[.*\]'
\
_rrset_values
=
$(
echo
"
$response
"
| _egrep_o
'rrset_values.*\[.*\]'
|
|
_egrep_o
'\[".*\"]'
)
_egrep_o
'\[".*\"]'
)
return
0
return
0
}
}
...
...
dnsapi/dns_gcloud.sh
View file @
19c43451
...
@@ -78,8 +78,8 @@ _dns_gcloud_execute_tr() {
...
@@ -78,8 +78,8 @@ _dns_gcloud_execute_tr() {
for
i
in
$(
seq
1 120
)
;
do
for
i
in
$(
seq
1 120
)
;
do
if
gcloud dns record-sets changes list
\
if
gcloud dns record-sets changes list
\
--zone
=
"
$managedZone
"
\
--zone
=
"
$managedZone
"
\
--filter
=
'status != done'
\
--filter
=
'status != done'
|
|
grep
-q
'^.*'
;
then
grep
-q
'^.*'
;
then
_info
"_dns_gcloud_execute_tr: waiting for transaction to be comitted (
$i
/120)..."
_info
"_dns_gcloud_execute_tr: waiting for transaction to be comitted (
$i
/120)..."
sleep
5
sleep
5
else
else
...
@@ -137,11 +137,11 @@ _dns_gcloud_find_zone() {
...
@@ -137,11 +137,11 @@ _dns_gcloud_find_zone() {
# List domains and find the zone with the deepest sub-domain (in case of some levels of delegation)
# List domains and find the zone with the deepest sub-domain (in case of some levels of delegation)
if
!
match
=
$(
gcloud dns managed-zones list
\
if
!
match
=
$(
gcloud dns managed-zones list
\
--format
=
"value(name, dnsName)"
\
--format
=
"value(name, dnsName)"
\
--filter
=
"
$filter
"
\
--filter
=
"
$filter
"
|
|
while
read
-r
dnsName name
;
do
while
read
-r
dnsName name
;
do
printf
"%s
\t
%s
\t
%s
\n
"
"
$(
echo
"
$name
"
|
awk
-F
"."
'{print NF-1}'
)
"
"
$dnsName
"
"
$name
"
printf
"%s
\t
%s
\t
%s
\n
"
"
$(
echo
"
$name
"
|
awk
-F
"."
'{print NF-1}'
)
"
"
$dnsName
"
"
$name
"
done
\
done
|
|
sort
-n
-r
| _head_n 1 |
cut
-f2
,3 |
grep
'^.*'
)
;
then
sort
-n
-r
| _head_n 1 |
cut
-f2
,3 |
grep
'^.*'
)
;
then
_err
"_dns_gcloud_find_zone: Can't find a matching managed zone! Perhaps wrong project or gcloud credentials?"
_err
"_dns_gcloud_find_zone: Can't find a matching managed zone! Perhaps wrong project or gcloud credentials?"
return
1
return
1
fi
fi
...
...
dnsapi/dns_he.sh
View file @
19c43451
...
@@ -101,8 +101,8 @@ dns_he_rm() {
...
@@ -101,8 +101,8 @@ dns_he_rm() {
body
=
"
$body
&hosted_dns_editzone=1"
body
=
"
$body
&hosted_dns_editzone=1"
body
=
"
$body
&hosted_dns_delrecord=1"
body
=
"
$body
&hosted_dns_delrecord=1"
body
=
"
$body
&hosted_dns_delconfirm=delete"
body
=
"
$body
&hosted_dns_delconfirm=delete"
_post
"
$body
"
"https://dns.he.net/"
\
_post
"
$body
"
"https://dns.he.net/"
|
|
grep
'<div id="dns_status" onClick="hideThis(this);">Successfully removed record.</div>'
\
grep
'<div id="dns_status" onClick="hideThis(this);">Successfully removed record.</div>'
\
>
/dev/null
>
/dev/null
exit_code
=
"
$?
"
exit_code
=
"
$?
"
if
[
"
$exit_code
"
-eq
0
]
;
then
if
[
"
$exit_code
"
-eq
0
]
;
then
...
...
dnsapi/dns_hetzner.sh
View file @
19c43451
...
@@ -123,10 +123,10 @@ _find_record() {
...
@@ -123,10 +123,10 @@ _find_record() {
return
1
return
1
else
else
_record_id
=
$(
_record_id
=
$(
echo
"
$response
"
\
echo
"
$response
"
|
|
grep
-o
"{[^
\{\}
]*
\"
name
\"
:
\"
$_record_name
\"
[^
\}
]*}"
\
grep
-o
"{[^
\{\}
]*
\"
name
\"
:
\"
$_record_name
\"
[^
\}
]*}"
|
|
grep
"
\"
value
\"
:
\"
$_record_value
\"
"
\
grep
"
\"
value
\"
:
\"
$_record_value
\"
"
|
|
while
read
-r
record
;
do
while
read
-r
record
;
do
# test for type and
# test for type and
if
[
-n
"
$(
echo
"
$record
"
| _egrep_o
'"type":"TXT"'
)
"
]
;
then
if
[
-n
"
$(
echo
"
$record
"
| _egrep_o
'"type":"TXT"'
)
"
]
;
then
echo
"
$record
"
| _egrep_o
'"id":"[^"]*"'
|
cut
-d
:
-f
2 |
tr
-d
\"
echo
"
$record
"
| _egrep_o
'"id":"[^"]*"'
|
cut
-d
:
-f
2 |
tr
-d
\"
...
...
dnsapi/dns_ispconfig.sh
View file @
19c43451
...
@@ -95,29 +95,29 @@ _ISPC_getZoneInfo() {
...
@@ -95,29 +95,29 @@ _ISPC_getZoneInfo() {
server_id
=
$(
echo
"
${
curResult
}
"
| _egrep_o
"server_id.*"
|
cut
-d
':'
-f
2 |
cut
-d
'"'
-f
2
)
server_id
=
$(
echo
"
${
curResult
}
"
| _egrep_o
"server_id.*"
|
cut
-d
':'
-f
2 |
cut
-d
'"'
-f
2
)
_debug
"Server ID: '
${
server_id
}
'"
_debug
"Server ID: '
${
server_id
}
'"
case
"
${
server_id
}
"
in
case
"
${
server_id
}
"
in
''
|
*
[!
0-9]
*
)
''
|
*
[!
0-9]
*
)
_err
"Server ID is not numeric."
_err
"Server ID is not numeric."
return
1
return
1
;;
;;
*
)
_info
"Retrieved Server ID"
;;
*
)
_info
"Retrieved Server ID"
;;
esac
esac
zone
=
$(
echo
"
${
curResult
}
"
| _egrep_o
"
\"
id.*"
|
cut
-d
':'
-f
2 |
cut
-d
'"'
-f
2
)
zone
=
$(
echo
"
${
curResult
}
"
| _egrep_o
"
\"
id.*"
|
cut
-d
':'
-f
2 |
cut
-d
'"'
-f
2
)
_debug
"Zone: '
${
zone
}
'"
_debug
"Zone: '
${
zone
}
'"
case
"
${
zone
}
"
in
case
"
${
zone
}
"
in
''
|
*
[!
0-9]
*
)
''
|
*
[!
0-9]
*
)
_err
"Zone ID is not numeric."
_err
"Zone ID is not numeric."
return
1
return
1
;;
;;
*
)
_info
"Retrieved Zone ID"
;;
*
)
_info
"Retrieved Zone ID"
;;
esac
esac
client_id
=
$(
echo
"
${
curResult
}
"
| _egrep_o
"sys_userid.*"
|
cut
-d
':'
-f
2 |
cut
-d
'"'
-f
2
)
client_id
=
$(
echo
"
${
curResult
}
"
| _egrep_o
"sys_userid.*"
|
cut
-d
':'
-f
2 |
cut
-d
'"'
-f
2
)
_debug
"Client ID: '
${
client_id
}
'"
_debug
"Client ID: '
${
client_id
}
'"
case
"
${
client_id
}
"
in
case
"
${
client_id
}
"
in
''
|
*
[!
0-9]
*
)
''
|
*
[!
0-9]
*
)
_err
"Client ID is not numeric."
_err
"Client ID is not numeric."
return
1
return
1
;;
;;
*
)
_info
"Retrieved Client ID."
;;
*
)
_info
"Retrieved Client ID."
;;
esac
esac
zoneFound
=
""
zoneFound
=
""
zoneEnd
=
""
zoneEnd
=
""
...
@@ -135,11 +135,11 @@ _ISPC_addTxt() {
...
@@ -135,11 +135,11 @@ _ISPC_addTxt() {
record_id
=
$(
echo
"
${
curResult
}
"
| _egrep_o
"
\"
response.*"
|
cut
-d
':'
-f
2 |
cut
-d
'"'
-f
2
)
record_id
=
$(
echo
"
${
curResult
}
"
| _egrep_o
"
\"
response.*"
|
cut
-d
':'
-f
2 |
cut
-d
'"'
-f
2
)
_debug
"Record ID: '
${
record_id
}
'"
_debug
"Record ID: '
${
record_id
}
'"
case
"
${
record_id
}
"
in
case
"
${
record_id
}
"
in
''
|
*
[!
0-9]
*
)
''
|
*
[!
0-9]
*
)
_err
"Couldn't add ACME Challenge TXT record to zone."
_err
"Couldn't add ACME Challenge TXT record to zone."
return
1
return
1
;;
;;
*
)
_info
"Added ACME Challenge TXT record to zone."
;;
*
)
_info
"Added ACME Challenge TXT record to zone."
;;
esac
esac
}
}
...
@@ -153,24 +153,24 @@ _ISPC_rmTxt() {
...
@@ -153,24 +153,24 @@ _ISPC_rmTxt() {
record_id
=
$(
echo
"
${
curResult
}
"
| _egrep_o
"
\"
id.*"
|
cut
-d
':'
-f
2 |
cut
-d
'"'
-f
2
)
record_id
=
$(
echo
"
${
curResult
}
"
| _egrep_o
"
\"
id.*"
|
cut
-d
':'
-f
2 |
cut
-d
'"'
-f
2
)
_debug
"Record ID: '
${
record_id
}
'"
_debug
"Record ID: '
${
record_id
}
'"
case
"
${
record_id
}
"
in
case
"
${
record_id
}
"
in
''
|
*
[!
0-9]
*
)
''
|
*
[!
0-9]
*
)
_err
"Record ID is not numeric."
_err
"Record ID is not numeric."
return
1
;;
*
)
unset
IFS
_info
"Retrieved Record ID."
curData
=
"{
\"
session_id
\"
:
\"
${
sessionID
}
\"
,
\"
primary_id
\"
:
\"
${
record_id
}
\"
,
\"
update_serial
\"
:true}"
curResult
=
"
$(
_post
"
${
curData
}
"
"
${
ISPC_Api
}
?dns_txt_delete"
)
"
_debug
"Calling _ISPC_rmTxt: '
${
curData
}
' '
${
ISPC_Api
}
?dns_txt_delete'"
_debug
"Result of _ISPC_rmTxt: '
$curResult
'"
if
_contains
"
${
curResult
}
"
'"code":"ok"'
;
then
_info
"Removed ACME Challenge TXT record from zone."
else
_err
"Couldn't remove ACME Challenge TXT record from zone."
return
1
return
1
;;
fi
*
)
;;
unset
IFS
_info
"Retrieved Record ID."
curData
=
"{
\"
session_id
\"
:
\"
${
sessionID
}
\"
,
\"
primary_id
\"
:
\"
${
record_id
}
\"
,
\"
update_serial
\"
:true}"
curResult
=
"
$(
_post
"
${
curData
}
"
"
${
ISPC_Api
}
?dns_txt_delete"
)
"
_debug
"Calling _ISPC_rmTxt: '
${
curData
}
' '
${
ISPC_Api
}
?dns_txt_delete'"
_debug
"Result of _ISPC_rmTxt: '
$curResult
'"
if
_contains
"
${
curResult
}
"
'"code":"ok"'
;
then
_info
"Removed ACME Challenge TXT record from zone."
else
_err
"Couldn't remove ACME Challenge TXT record from zone."
return
1
fi
;;
esac
esac
fi
fi
}
}
dnsapi/dns_joker.sh
View file @
19c43451
...
@@ -100,7 +100,7 @@ _get_root() {
...
@@ -100,7 +100,7 @@ _get_root() {
fi
fi
# Try to remove a test record. With correct root domain, username and password this will return "OK: ..." regardless
# Try to remove a test record. With correct root domain, username and password this will return "OK: ..." regardless
# of record in question existing or not.
# of record in question existing or not.
if
_joker_rest
"username=
$JOKER_USERNAME
&password=
$JOKER_PASSWORD
&zone=
$h
&label=jokerTXTUpdateTest&type=TXT&value="
;
then
if
_joker_rest
"username=
$JOKER_USERNAME
&password=
$JOKER_PASSWORD
&zone=
$h
&label=jokerTXTUpdateTest&type=TXT&value="
;
then
if
_startswith
"
$response
"
"OK"
;
then
if
_startswith
"
$response
"
"OK"
;
then
_sub_domain
=
"
$(
echo
"
$fulldomain
"
|
sed
"s/
\\
.
$h
\$
//"
)
"
_sub_domain
=
"
$(
echo
"
$fulldomain
"
|
sed
"s/
\\
.
$h
\$
//"
)
"
...
...
dnsapi/dns_kappernet.sh
View file @
19c43451
...
@@ -5,12 +5,12 @@
...
@@ -5,12 +5,12 @@
# please report issues here: https://github.com/acmesh-official/acme.sh/issues/2977
# please report issues here: https://github.com/acmesh-official/acme.sh/issues/2977
#KAPPERNETDNS_Key="yourKAPPERNETapikey"
#KAPPERNETDNS_Key="yourKAPPERNETapikey"
#KAPPERNETDNS_Secret="yourKAPPERNETapisecret"
#KAPPERNETDNS_Secret="yourKAPPERNETapisecret"
KAPPERNETDNS_Api
=
"https://dnspanel.kapper.net/API/1.2?APIKey=
$KAPPERNETDNS_Key
&APISecret=
$KAPPERNETDNS_Secret
"
KAPPERNETDNS_Api
=
"https://dnspanel.kapper.net/API/1.2?APIKey=
$KAPPERNETDNS_Key
&APISecret=
$KAPPERNETDNS_Secret
"
###############################################################################
###############################################################################
# called with
# called with
# fullhostname: something.example.com
# fullhostname: something.example.com
# txtvalue: someacmegenerated string
# txtvalue: someacmegenerated string
dns_kappernet_add
()
{
dns_kappernet_add
()
{
...
@@ -97,7 +97,7 @@ dns_kappernet_rm() {
...
@@ -97,7 +97,7 @@ dns_kappernet_rm() {
#################### Private functions below ##################################
#################### Private functions below ##################################
# called with hostname
# called with hostname
# e.g._acme-challenge.www.domain.com returns
# e.g._acme-challenge.www.domain.com returns
# _sub_domain=_acme-challenge.www
# _sub_domain=_acme-challenge.www
# _domain=domain.com
# _domain=domain.com
_get_root
()
{
_get_root
()
{
domain
=
$1
domain
=
$1
...
@@ -127,7 +127,7 @@ _get_root() {
...
@@ -127,7 +127,7 @@ _get_root() {
################################################################################
################################################################################
# calls the kapper.net DNS Panel API
# calls the kapper.net DNS Panel API
# with
# with
# method
# method
# param
# param
_kappernet_api
()
{
_kappernet_api
()
{
...
...
Prev
1
2
Next
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