diff --git a/How-to-issue-a-cert.md b/How-to-issue-a-cert.md index 2acaddb..31ecded 100644 --- a/How-to-issue-a-cert.md +++ b/How-to-issue-a-cert.md @@ -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) 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 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: -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. ```sh @@ -43,13 +46,11 @@ Yes, if your nameservice provider has an api, we can use the api to automaticall Cloudflare api: ```sh export CF_Token="sdfsdfsdfljlbjkljlkjsdfoiwje" - export CF_Email="xxxx@sss.com" - 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: @@ -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. -``` +```sh 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 ``` You can also specify the website conf: -``` +```sh 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: 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 ``` #### 2) Standalone mode: -``` +```sh acme.sh --issue -d example.com --standalone -d www.example.com ``` #### 3) Dns api mode: -Cloud flare api: -``` +Cloudflare API: +```sh export CF_Token="sdfsdfsdfljlbjkljlkjsdfoiwje" - export CF_Email="xxxx@example.com" - acme.sh --issue -d example.com --dns dns_cf -d www.example.com ``` #### 4) Dns manual mode: -``` +```sh 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. -``` +```sh acme.sh --issue \ -d aa.com -w /home/wwwroot/aa.com \ -d bb.com --dns dns_cf \ @@ -131,10 +130,9 @@ acme.sh --issue \ -d dd.com -w /home/wwwroot/dd.com ``` -``` +```sh acme.sh --issue \ -d aa.com --dns dns_dp \ -d bb.com --dns dns_cf \ -d cc.com --dns dns_ns ``` -