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
39ba697e
Unverified
Commit
39ba697e
authored
May 08, 2018
by
neil
Committed by
GitHub
May 08, 2018
Browse files
Merge pull request #1584 from dwatrous/patch-1
Add HAProxy deploy implementation and documentation
parents
f7c3f528
c9818ea2
Changes
2
Hide whitespace changes
Inline
Side-by-side
deploy/README.md
View file @
39ba697e
...
@@ -255,3 +255,23 @@ acme.sh --deploy -d fritzbox.example.com --deploy-hook fritzbox
...
@@ -255,3 +255,23 @@ acme.sh --deploy -d fritzbox.example.com --deploy-hook fritzbox
```
sh
```
sh
acme.sh
--deploy
-d
ftp.example.com
--deploy-hook
strongswan
acme.sh
--deploy
-d
ftp.example.com
--deploy-hook
strongswan
```
```
## 10. Deploy the cert to HAProxy
You must specify the path where you want the concatenated key and certificate chain written.
```
sh
export
DEPLOY_HAPROXY_PEM_PATH
=
/etc/haproxy
```
You may optionally define the command to reload HAProxy. The value shown below will be used as the default if you don't set this environment variable.
```
sh
export
DEPLOY_HAPROXY_RELOAD
=
"/usr/sbin/service haproxy restart"
```
You can then deploy the certificate as follows
```
sh
acme.sh
--deploy
-d
haproxy.example.com
--deploy-hook
haproxy
```
The path for the PEM file will be stored with the domain configuration and will be available when renewing, so that deploy will happen automatically when renewed.
deploy/haproxy.sh
View file @
39ba697e
...
@@ -20,7 +20,39 @@ haproxy_deploy() {
...
@@ -20,7 +20,39 @@ haproxy_deploy() {
_debug _cca
"
$_cca
"
_debug _cca
"
$_cca
"
_debug _cfullchain
"
$_cfullchain
"
_debug _cfullchain
"
$_cfullchain
"
_err
"deploy cert to haproxy server, Not implemented yet"
# handle reload preference
return
1
DEFAULT_HAPROXY_RELOAD
=
"/usr/sbin/service haproxy restart"
if
[
-z
"
${
DEPLOY_HAPROXY_RELOAD
}
"
]
;
then
_reload
=
"
${
DEFAULT_HAPROXY_RELOAD
}
"
_cleardomainconf DEPLOY_HAPROXY_RELOAD
else
_reload
=
"
${
DEPLOY_HAPROXY_RELOAD
}
"
_savedomainconf DEPLOY_HAPROXY_RELOAD
"
$DEPLOY_HAPROXY_RELOAD
"
fi
_savedomainconf DEPLOY_HAPROXY_PEM_PATH
"
$DEPLOY_HAPROXY_PEM_PATH
"
# work out the path where the PEM file should go
_pem_path
=
"
${
DEPLOY_HAPROXY_PEM_PATH
}
"
if
[
-z
"
$_pem_path
"
]
;
then
_err
"Path to save PEM file not found. Please define DEPLOY_HAPROXY_PEM_PATH."
return
1
fi
_pem_full_path
=
"
$_pem_path
/
$_cdomain
.pem"
_info
"Full path to PEM
$_pem_full_path
"
# combine the key and fullchain into a single pem and install
cat
"
$_cfullchain
"
"
$_ckey
"
>
"
$_pem_full_path
"
chmod
600
"
$_pem_full_path
"
_info
"Certificate successfully deployed"
# restart HAProxy
_info
"Run reload:
$_reload
"
if
eval
"
$_reload
"
;
then
_info
"Reload success!"
return
0
else
_err
"Reload error"
return
1
fi
}
}
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