2017-02-11 05:24:00 +00:00
# Using deploy api
2017-02-23 11:04:08 +00:00
Before you can deploy your cert, you must [issue the cert first ](https://github.com/Neilpang/acme.sh/wiki/How-to-issue-a-cert ).
2017-02-11 05:24:00 +00:00
Here are the scripts to deploy the certs/key to the server/services.
2017-10-02 13:04:02 +00:00
## 1. Deploy the certs to your cpanel host
2017-02-11 05:24:00 +00:00
2017-09-03 09:35:20 +00:00
If you want to deploy using cpanel UAPI see 7.
2017-02-11 05:24:00 +00:00
(cpanel deploy hook is not finished yet, this is just an example.)
2017-02-23 11:04:08 +00:00
2017-02-11 05:24:00 +00:00
Then you can deploy now:
```sh
export DEPLOY_CPANEL_USER=myusername
export DEPLOY_CPANEL_PASSWORD=PASSWORD
2017-02-23 11:01:48 +00:00
acme.sh --deploy -d example.com --deploy-hook cpanel
2017-02-11 05:24:00 +00:00
```
2017-10-02 13:04:02 +00:00
## 2. Deploy ssl cert on kong proxy engine based on api
2017-02-11 05:24:00 +00:00
Before you can deploy your cert, you must [issue the cert first ](https://github.com/Neilpang/acme.sh/wiki/How-to-issue-a-cert ).
2017-04-27 12:06:47 +00:00
Currently supports Kong-v0.10.x.
2017-02-11 05:24:00 +00:00
2017-04-27 12:06:47 +00:00
```sh
acme.sh --deploy -d ftp.example.com --deploy-hook kong
```
2017-02-11 05:24:00 +00:00
2017-10-02 13:04:02 +00:00
## 3. Deploy the cert to remote server through SSH access
2017-02-11 05:24:00 +00:00
(TODO)
2017-10-02 13:04:02 +00:00
## 4. Deploy the cert to local vsftpd server
2017-02-11 05:24:00 +00:00
2017-02-21 15:18:11 +00:00
```sh
acme.sh --deploy -d ftp.example.com --deploy-hook vsftpd
```
The default vsftpd conf file is `/etc/vsftpd.conf` , if your vsftpd conf is not in the default location, you can specify one:
```sh
export DEPLOY_VSFTPD_CONF="/etc/vsftpd.conf"
acme.sh --deploy -d ftp.example.com --deploy-hook vsftpd
```
The default command to restart vsftpd server is `service vsftpd restart` , if it doesn't work, you can specify one:
```sh
export DEPLOY_VSFTPD_RELOAD="/etc/init.d/vsftpd restart"
acme.sh --deploy -d ftp.example.com --deploy-hook vsftpd
```
2017-02-11 05:24:00 +00:00
2017-10-02 13:04:02 +00:00
## 5. Deploy the cert to local exim4 server
2017-02-23 12:03:03 +00:00
```sh
acme.sh --deploy -d ftp.example.com --deploy-hook exim4
```
The default exim4 conf file is `/etc/exim/exim.conf` , if your exim4 conf is not in the default location, you can specify one:
```sh
export DEPLOY_EXIM4_CONF="/etc/exim4/exim4.conf.template"
acme.sh --deploy -d ftp.example.com --deploy-hook exim4
```
The default command to restart exim4 server is `service exim4 restart` , if it doesn't work, you can specify one:
```sh
export DEPLOY_EXIM4_RELOAD="/etc/init.d/exim4 restart"
acme.sh --deploy -d ftp.example.com --deploy-hook exim4
```
2017-03-07 23:00:17 +00:00
## 6. Deploy the cert to OSX Keychain
```sh
acme.sh --deploy -d ftp.example.com --deploy-hook keychain
```
2017-08-25 12:51:31 +00:00
2017-09-03 09:35:20 +00:00
## 7. Deploy to cpanel host using UAPI
2017-08-25 12:51:31 +00:00
2017-09-03 09:35:20 +00:00
This hook is using UAPI and works in cPanel & WHM version 56 or newer.
2017-08-25 12:51:31 +00:00
```
acme.sh --deploy -d example.com --deploy-hook cpanel_uapi
```
2017-09-03 09:35:20 +00:00
DEPLOY_CPANEL_USER is required only if you run the script as root and it should contain cpanel username.
2017-08-25 12:51:31 +00:00
```sh
export DEPLOY_CPANEL_USER=username
acme.sh --deploy -d example.com --deploy-hook cpanel_uapi
```
2017-09-05 13:42:17 +00:00
Please note, that the cpanel_uapi hook will deploy only the first domain when your certificate will automatically renew. Therefore you should issue a separete certificate for each domain.
2017-08-25 12:51:31 +00:00
2017-08-29 22:45:03 +00:00
## 8. Deploy the cert to your FRITZ!Box router
2017-08-25 12:51:31 +00:00
2017-08-29 22:45:03 +00:00
You must specify the credentials that have administrative privileges on the FRITZ!Box in order to deploy the certificate, plus the URL of your FRITZ!Box, through the following environment variables:
```sh
$ export DEPLOY_FRITZBOX_USERNAME=my_username
$ export DEPLOY_FRITZBOX_PASSWORD=the_password
$ export DEPLOY_FRITZBOX_URL=https://fritzbox.example.com
```
2017-08-25 12:51:31 +00:00
2017-08-29 22:45:03 +00:00
After the first deployment, these values will be stored in your $HOME/.acme.sh/account.conf. You may now deploy the certificate like this:
2017-08-25 12:51:31 +00:00
2017-08-29 22:45:03 +00:00
```sh
2017-09-12 09:35:21 +00:00
acme.sh --deploy -d fritzbox.example.com --deploy-hook fritzbox
2017-08-29 22:45:03 +00:00
```
2017-08-25 12:51:31 +00:00
2017-10-01 23:39:55 +00:00
## 9. Deploy the cert to strongswan
2017-08-25 12:51:31 +00:00
2017-10-01 23:39:55 +00:00
```sh
acme.sh --deploy -d ftp.example.com --deploy-hook strongswan
```