summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Cady <d@jerkface.net>2016-01-26 14:37:05 -0500
committerAndrew Cady <d@jerkface.net>2016-01-26 14:40:50 -0500
commit7ee27b689653d31cd89c3494623444a0dd68d406 (patch)
tree7f43d0a66294f7a20143ec5f8998babcf8791f6b
parent64e8a8ef7833fb7a9325372c09bcb9a682e1ed30 (diff)
Improve documentation
-rw-r--r--README.md40
1 files changed, 31 insertions, 9 deletions
diff --git a/README.md b/README.md
index b2d5422..d9d6437 100644
--- a/README.md
+++ b/README.md
@@ -31,7 +31,28 @@ This program can be used to obtain a certificate from the
31[Let's Encrypt](https://letsencrypt.org/) certificate authority, using their 31[Let's Encrypt](https://letsencrypt.org/) certificate authority, using their
32ACME protocol. 32ACME protocol.
33 33
34## Rate Limits 34Simplest usage is to specify only the mandatory options, along with an email
35address to register:
36
37```
38DOMAIN=yourdomain.com
39
40acme-certify --email webmaster@${DOMAIN} \
41 --key webmaster@${DOMAIN}.key \
42 --domain ${DOMAIN} \
43 --domain www.${DOMAIN} \
44 --challenge-dir /var/www/html/.well-known/acme-challenge
45
46ls -l ${DOMAIN}/cert.combined.pem ${DOMAIN}/cert.pem
47```
48
49You must have write permission to `/var/www/html/.well-known/acme-challenge` for
50that to work.
51
52(Of course, there also must be a web server hosting your domains from
53`/var/www/html`.)
54
55## Multiple Domains & Rate Limits
35 56
36This tool supports multiple domain names per certificate. Note that `Let's 57This tool supports multiple domain names per certificate. Note that `Let's
37Encrypt` will not sign a certificate with more than 100 names; nor will it allow 58Encrypt` will not sign a certificate with more than 100 names; nor will it allow
@@ -65,12 +86,13 @@ mkdir -p ${DOMAIN}
65openssl genrsa 4096 > ${DOMAIN}/rsa.key 86openssl genrsa 4096 > ${DOMAIN}/rsa.key
66``` 87```
67 88
68## Receive certificate 89## Generated certificate
69 90
70The signed certificate will be saved by this program in `./${DOMAIN}/cert.pem`. 91The signed certificate will be saved by this program in `./${DOMAIN}/cert.pem`.
71A combined certificate, containing the issuer certificate, the private key, and 92A combined certificate -- containing the issuer certificate, the private key,
72(possibly) DH parameters, will be saved in `./${DOMAIN}/cert.combined.pem`. You 93and (by default) DH parameters -- will be saved in
73can copy that file to the place your TLS server is configured to read it. 94`./${DOMAIN}/cert.combined.pem`. You can copy that file to the place your TLS
95server is configured to read it.
74 96
75You can also view the certificate like so: 97You can also view the certificate like so:
76 98
@@ -78,17 +100,17 @@ You can also view the certificate like so:
78openssl x509 -in ${DOMAIN}/cert.pem -noout -text | less 100openssl x509 -in ${DOMAIN}/cert.pem -noout -text | less
79``` 101```
80 102
81## Create a certificate for HAProxy 103## DH Params
82 104
83Vo Minh Thu, the original author of this program, suggests to include explicit 105Vo Minh Thu, the original author of this program, suggests to include explicit
84DH key exchange parameters to prevent the [Logjam attack](https://weakdh.org/). 106DH key exchange parameters to prevent the [Logjam attack](https://weakdh.org/).
85This is now automatically performed by default. 107This is now automatically performed by default.
86 108
87Note: generating DH params is CPU-intensive and takes a long time. For that 109Generating DH params is CPU-intensive and takes a long time. For that
88reason, it is done once per domain, and the result is saved in 110reason, it is done once per domain, and the result is saved in
89`${DOMAIN}/dhparams.pem`. 111`${DOMAIN}/dhparams.pem` for reuse.
90 112
91You can also disable DH generation it with `--skip-dhparams`. 113You can disable DH generation it with `--skip-dhparams`.
92 114
93The certificate is generated by this program equivalently to this: 115The certificate is generated by this program equivalently to this:
94 116