mirror of
https://github.com/acmesh-official/acme.sh.git
synced 2026-01-16 05:12:08 +08:00
Link to Challenge Types
@@ -1,7 +1,10 @@
|
|||||||
|
## Challenge types
|
||||||
|
First, see [Challenge Types](https://letsencrypt.org/docs/challenge-types/) to understand the difference between methods of domain validation over HTTP, DNS or TLS ALPN.
|
||||||
|
|
||||||
### 1. Single domain:
|
### 1. Single domain:
|
||||||
|
|
||||||
#### 1) Webroot mode:
|
#### 1) Webroot mode:
|
||||||
If you already have a web server running, you should use webroot mode. you only need write access to the web root folder.
|
If you already have a web server running, you should use webroot mode. You only need write access to the web root folder.
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
acme.sh --issue -d example.com -w /home/wwwroot/example.com
|
acme.sh --issue -d example.com -w /home/wwwroot/example.com
|
||||||
@@ -9,7 +12,7 @@ acme.sh --issue -d example.com -w /home/wwwroot/example.com
|
|||||||
|
|
||||||
#### 2) Standalone mode:
|
#### 2) Standalone mode:
|
||||||
|
|
||||||
If you don't have a web server, maybe you are on a smtp or ftp server, the 80 port is free. you can use standalone mode.
|
If you don't have a web server, maybe you are on a SMPT or FTP server, the 80 port is free. You can use the standalone mode.
|
||||||
acme.sh has a builtin standalone webserver, it can listen at 80 port to issue the cert.
|
acme.sh has a builtin standalone webserver, it can listen at 80 port to issue the cert.
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
@@ -43,13 +46,11 @@ Yes, if your nameservice provider has an api, we can use the api to automaticall
|
|||||||
Cloudflare api:
|
Cloudflare api:
|
||||||
```sh
|
```sh
|
||||||
export CF_Token="sdfsdfsdfljlbjkljlkjsdfoiwje"
|
export CF_Token="sdfsdfsdfljlbjkljlkjsdfoiwje"
|
||||||
|
|
||||||
export CF_Email="xxxx@sss.com"
|
export CF_Email="xxxx@sss.com"
|
||||||
|
|
||||||
acme.sh --issue -d example.com --dns dns_cf
|
acme.sh --issue -d example.com --dns dns_cf
|
||||||
```
|
```
|
||||||
|
|
||||||
How to use dns api: https://github.com/acmesh-official/acme.sh/wiki/dnsapi
|
How to use dns api: https://github.com/acmesh-official/acme.sh/wiki/dnsapi
|
||||||
|
|
||||||
#### 5) DNS manual mode:
|
#### 5) DNS manual mode:
|
||||||
|
|
||||||
@@ -71,19 +72,19 @@ acme.sh --issue -d example.com --apache
|
|||||||
|
|
||||||
If your website is running nginx server, acme.sh can use nginx server to issue cert. And acme.sh will restore your nginx conf after the cert is issued, don't worry.
|
If your website is running nginx server, acme.sh can use nginx server to issue cert. And acme.sh will restore your nginx conf after the cert is issued, don't worry.
|
||||||
|
|
||||||
```
|
```sh
|
||||||
acme.sh --issue -d example.com --nginx
|
acme.sh --issue -d example.com --nginx
|
||||||
```
|
```
|
||||||
|
|
||||||
Sometimes, nginx conf file can not be found automatically, you can specify one:
|
Sometimes, Nginx conf file can not be found automatically, you can specify one:
|
||||||
|
|
||||||
```
|
```sh
|
||||||
acme.sh --issue -d example.com --nginx /etc/nginx/nginx.conf
|
acme.sh --issue -d example.com --nginx /etc/nginx/nginx.conf
|
||||||
```
|
```
|
||||||
|
|
||||||
You can also specify the website conf:
|
You can also specify the website conf:
|
||||||
|
|
||||||
```
|
```sh
|
||||||
acme.sh --issue -d example.com --nginx /etc/nginx/conf.d/example.com.conf
|
acme.sh --issue -d example.com --nginx /etc/nginx/conf.d/example.com.conf
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -94,27 +95,25 @@ Issue a single cert including multiple domains. All the domains use the same va
|
|||||||
|
|
||||||
#### 1) Webroot mode:
|
#### 1) Webroot mode:
|
||||||
You must point `example.com` and `www.example.com` to the same web root folder `/home/wwwroot/example.com`
|
You must point `example.com` and `www.example.com` to the same web root folder `/home/wwwroot/example.com`
|
||||||
```
|
```sh
|
||||||
acme.sh --issue -d example.com -w /home/wwwroot/example.com -d www.example.com
|
acme.sh --issue -d example.com -w /home/wwwroot/example.com -d www.example.com
|
||||||
```
|
```
|
||||||
|
|
||||||
#### 2) Standalone mode:
|
#### 2) Standalone mode:
|
||||||
```
|
```sh
|
||||||
acme.sh --issue -d example.com --standalone -d www.example.com
|
acme.sh --issue -d example.com --standalone -d www.example.com
|
||||||
```
|
```
|
||||||
|
|
||||||
#### 3) Dns api mode:
|
#### 3) Dns api mode:
|
||||||
Cloud flare api:
|
Cloudflare API:
|
||||||
```
|
```sh
|
||||||
export CF_Token="sdfsdfsdfljlbjkljlkjsdfoiwje"
|
export CF_Token="sdfsdfsdfljlbjkljlkjsdfoiwje"
|
||||||
|
|
||||||
export CF_Email="xxxx@example.com"
|
export CF_Email="xxxx@example.com"
|
||||||
|
|
||||||
acme.sh --issue -d example.com --dns dns_cf -d www.example.com
|
acme.sh --issue -d example.com --dns dns_cf -d www.example.com
|
||||||
```
|
```
|
||||||
|
|
||||||
#### 4) Dns manual mode:
|
#### 4) Dns manual mode:
|
||||||
```
|
```sh
|
||||||
acme.sh --issue -d example.com --dns -d www.example.com
|
acme.sh --issue -d example.com --dns -d www.example.com
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -123,7 +122,7 @@ acme.sh --issue -d example.com --dns -d www.example.com
|
|||||||
Issue a single cert including multiple domains. Each domain uses a different validation method.
|
Issue a single cert including multiple domains. Each domain uses a different validation method.
|
||||||
|
|
||||||
|
|
||||||
```
|
```sh
|
||||||
acme.sh --issue \
|
acme.sh --issue \
|
||||||
-d aa.com -w /home/wwwroot/aa.com \
|
-d aa.com -w /home/wwwroot/aa.com \
|
||||||
-d bb.com --dns dns_cf \
|
-d bb.com --dns dns_cf \
|
||||||
@@ -131,10 +130,9 @@ acme.sh --issue \
|
|||||||
-d dd.com -w /home/wwwroot/dd.com
|
-d dd.com -w /home/wwwroot/dd.com
|
||||||
```
|
```
|
||||||
|
|
||||||
```
|
```sh
|
||||||
acme.sh --issue \
|
acme.sh --issue \
|
||||||
-d aa.com --dns dns_dp \
|
-d aa.com --dns dns_dp \
|
||||||
-d bb.com --dns dns_cf \
|
-d bb.com --dns dns_cf \
|
||||||
-d cc.com --dns dns_ns
|
-d cc.com --dns dns_ns
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user