Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
ruanhaishen
Acme.Sh
Commits
b7d573a4
Commit
b7d573a4
authored
Mar 28, 2018
by
Ivar Larsson
Browse files
Merge branch 'dev' of github.com:Neilpang/acme.sh
parents
696d9c6b
4a62385d
Changes
5
Hide whitespace changes
Inline
Side-by-side
README.md
View file @
b7d573a4
...
@@ -316,6 +316,7 @@ You don't have to do anything manually!
...
@@ -316,6 +316,7 @@ You don't have to do anything manually!
1.
DreamHost.com API
1.
DreamHost.com API
1.
DirectAdmin API
1.
DirectAdmin API
1.
KingHost (https://www.kinghost.com.br/)
1.
KingHost (https://www.kinghost.com.br/)
1.
Zilore (https://zilore.com)
1.
Loopia.se API
1.
Loopia.se API
And:
And:
...
...
deploy/vault_cli.sh
View file @
b7d573a4
...
@@ -51,6 +51,7 @@ vault_cli_deploy() {
...
@@ -51,6 +51,7 @@ vault_cli_deploy() {
$VAULT_CMD
write
"
${
VAULT_PREFIX
}
/
${
_cdomain
}
/cert.pem"
value
=
@
"
$_ccert
"
||
return
1
$VAULT_CMD
write
"
${
VAULT_PREFIX
}
/
${
_cdomain
}
/cert.pem"
value
=
@
"
$_ccert
"
||
return
1
$VAULT_CMD
write
"
${
VAULT_PREFIX
}
/
${
_cdomain
}
/cert.key"
value
=
@
"
$_ckey
"
||
return
1
$VAULT_CMD
write
"
${
VAULT_PREFIX
}
/
${
_cdomain
}
/cert.key"
value
=
@
"
$_ckey
"
||
return
1
$VAULT_CMD
write
"
${
VAULT_PREFIX
}
/
${
_cdomain
}
/chain.pem"
value
=
@
"
$_cca
"
||
return
1
$VAULT_CMD
write
"
${
VAULT_PREFIX
}
/
${
_cdomain
}
/fullchain.pem"
value
=
@
"
$_cfullchain
"
||
return
1
$VAULT_CMD
write
"
${
VAULT_PREFIX
}
/
${
_cdomain
}
/fullchain.pem"
value
=
@
"
$_cfullchain
"
||
return
1
}
}
dnsapi/README.md
View file @
b7d573a4
...
@@ -799,7 +799,22 @@ acme.sh --issue --dns dns_kinghost -d example.com -d *.example.com
...
@@ -799,7 +799,22 @@ acme.sh --issue --dns dns_kinghost -d example.com -d *.example.com
The
`KINGHOST_username`
and
`KINGHOST_Password`
will be saved in
`~/.acme.sh/account.conf`
and will be reused when needed.
The
`KINGHOST_username`
and
`KINGHOST_Password`
will be saved in
`~/.acme.sh/account.conf`
and will be reused when needed.
## 43. Use Loopia.se API
## 43. Use Zilore DNS API
First, get your API key at https://my.zilore.com/account/api
```
export Zilore_Key="5dcad3a2-36cb-50e8-cb92-000002f9"
```
Ok, let's issue a cert now:
```
acme.sh --issue --dns dns_zilore -d example.com -d *.example.com
```
The
`Zilore_Key`
will be saved in
`~/.acme.sh/account.conf`
and will be reused when needed.
## 44. Use Loopia.se API
User must provide login credentials to the Loopia API.
User must provide login credentials to the Loopia API.
The user needs the following permissions:
The user needs the following permissions:
...
...
dnsapi/dns_namecom.sh
View file @
b7d573a4
...
@@ -123,7 +123,7 @@ _namecom_login() {
...
@@ -123,7 +123,7 @@ _namecom_login() {
# Auth string
# Auth string
# Name.com API v4 uses http basic auth to authenticate
# Name.com API v4 uses http basic auth to authenticate
# need to convert the token for http auth
# need to convert the token for http auth
_namecom_auth
=
$(
printf
"%s:%s"
"
$Namecom_Username
"
"
$Namecom_Token
"
|
base64
)
_namecom_auth
=
$(
printf
"%s:%s"
"
$Namecom_Username
"
"
$Namecom_Token
"
|
_
base64
)
if
_namecom_rest GET
"hello"
;
then
if
_namecom_rest GET
"hello"
;
then
retcode
=
$(
printf
"%s
\n
"
"
$response
"
| _egrep_o
"
\"
username
\"\:\"
$Namecom_Username
\"
"
)
retcode
=
$(
printf
"%s
\n
"
"
$response
"
| _egrep_o
"
\"
username
\"\:\"
$Namecom_Username
\"
"
)
...
...
dnsapi/dns_zilore.sh
0 → 100644
View file @
b7d573a4
#!/usr/bin/env sh
Zilore_API
=
"https://api.zilore.com/dns/v1"
# Zilore_Key="YOUR-ZILORE-API-KEY"
######## Public functions #####################
dns_zilore_add
()
{
fulldomain
=
$1
txtvalue
=
$2
_info
"Using Zilore"
_debug fulldomain
"
$fulldomain
"
_debug txtvalue
"
$txtvalue
"
Zilore_Key
=
"
${
Zilore_Key
:-
$(
_readaccountconf_mutable Zilore_Key
)
}
"
if
[
-z
"
$Zilore_Key
"
]
;
then
Zilore_Key
=
""
_err
"Please define Zilore API key"
return
1
fi
_saveaccountconf_mutable Zilore_Key
"
$Zilore_Key
"
if
!
_get_root
"
$fulldomain
"
;
then
_err
"Unable to determine root domain"
return
1
else
_debug _domain
"
$_domain
"
fi
if
_zilore_rest POST
"domains/
$_domain
/records?record_type=TXT&record_ttl=600&record_name=
$fulldomain
&record_value=
\"
$txtvalue
\"
"
;
then
if
_contains
"
$response
"
'"added"'
>
/dev/null
;
then
_info
"Added TXT record, waiting for validation"
return
0
else
_debug response
"
$response
"
_err
"Error while adding DNS records"
return
1
fi
fi
return
1
}
dns_zilore_rm
()
{
fulldomain
=
$1
txtvalue
=
$2
_info
"Using Zilore"
_debug fulldomain
"
$fulldomain
"
_debug txtvalue
"
$txtvalue
"
Zilore_Key
=
"
${
Zilore_Key
:-
$(
_readaccountconf_mutable Zilore_Key
)
}
"
if
[
-z
"
$Zilore_Key
"
]
;
then
Zilore_Key
=
""
_err
"Please define Zilore API key"
return
1
fi
_saveaccountconf_mutable Zilore_Key
"
$Zilore_Key
"
if
!
_get_root
"
$fulldomain
"
;
then
_err
"Unable to determine root domain"
return
1
else
_debug _domain
"
$_domain
"
fi
_debug
"Getting TXT records"
_zilore_rest GET
"domains/
${
_domain
}
/records?search_text=
$txtvalue
&search_record_type=TXT"
_debug response
"
$response
"
if
!
_contains
"
$response
"
'"ok"'
>
/dev/null
;
then
_err
"Error while getting records list"
return
1
else
_record_id
=
$(
printf
"%s
\n
"
"
$response
"
| _egrep_o
"
\"
record_id
\"
:
\"
[^
\"
]+
\"
"
|
cut
-d
:
-f
2 |
tr
-d
\"
| _head_n 1
)
if
[
-z
"
$_record_id
"
]
;
then
_err
"Cannot determine _record_id"
return
1
else
_debug _record_id
"
$_record_id
"
fi
if
!
_zilore_rest DELETE
"domains/
${
_domain
}
/records?record_id=
$_record_id
"
;
then
_err
"Error while deleting chosen record"
return
1
fi
_contains
"
$response
"
'"ok"'
fi
}
#################### Private functions below ##################################
_get_root
()
{
domain
=
$1
i
=
2
while
true
;
do
h
=
$(
printf
"%s"
"
$domain
"
|
cut
-d
.
-f
$i
-100
)
_debug h
"
$h
"
if
[
-z
"
$h
"
]
;
then
#not valid
return
1
fi
if
!
_zilore_rest GET
"domains?search_text=
$h
"
;
then
return
1
fi
if
_contains
"
$response
"
"
\"
$h
\"
"
>
/dev/null
;
then
_domain
=
$h
return
0
else
_debug
"
$h
not found"
fi
i
=
$(
_math
"
$i
"
+ 1
)
done
return
1
}
_zilore_rest
()
{
method
=
$1
param
=
$2
data
=
$3
export
_H1
=
"X-Auth-Key:
$Zilore_Key
"
if
[
"
$method
"
!=
"GET"
]
;
then
response
=
"
$(
_post
"
$data
"
"
$Zilore_API
/
$param
"
""
"
$method
"
)
"
else
response
=
"
$(
_get
"
$Zilore_API
/
$param
"
)
"
fi
if
[
"
$?
"
!=
"0"
]
;
then
_err
"error
$param
"
return
1
fi
_debug2 response
"
$response
"
return
0
}
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