Merge branch '19175-doc-refactor-multi-host-installation'
[arvados.git] / doc / _includes / _ssl_config_multi.liquid
1 {% comment %}
2 Copyright (C) The Arvados Authors. All rights reserved.
3
4 SPDX-License-Identifier: CC-BY-SA-3.0
5 {% endcomment %}
6
7 h2(#certificates). Choose the SSL configuration (SSL_MODE)
8
9 Arvados requires an SSL certificate to work correctly. This installer supports these options:
10
11 * @self-signed@: let the installer create self-signed certificates
12 * @lets-encrypt@: automatically obtain and install an SSL certificates for your hostnames
13 * @bring-your-own@: supply your own certificates in the `certs` directory
14
15 h3(#self-signed). Using self-signed certificates
16
17 To make the installer use self-signed certificates, change the configuration like this:
18
19 <notextile>
20 <pre><code>SSL_MODE="self-signed"
21 </code></pre>
22 </notextile>
23
24 When connecting to the Arvados web interface for the first time, you will need to accept the self-signed certificates as trusted to bypass the browser warnings. This can be a little tricky to do. Alternatively, you can also install the self-signed root certificate in your browser, see <a href="#ca_root_certificate">below</a>.
25
26 h3(#lets-encrypt). Using a Let's Encrypt certificate
27
28 In the default configuration, this installer gets a valid certificate via Let's Encrypt. If you have the <b>CLUSTER.DOMAIN</b> domain in a route53 zone, you can set <b>USE_LETSENCRYPT_ROUTE53</b> to <b>YES</b> and supply appropriate credentials so that Let's Encrypt can use dns-01 validation to get the appropriate certificates.
29
30 <notextile>
31 <pre><code>SSL_MODE="lets-encrypt"
32 USE_LETSENCRYPT_ROUTE53="yes"
33 LE_AWS_REGION="us-east-1"
34 LE_AWS_ACCESS_KEY_ID="AKIABCDEFGHIJKLMNOPQ"
35 LE_AWS_SECRET_ACCESS_KEY="thisistherandomstringthatisyoursecretkey"
36 </code></pre>
37 </notextile>
38
39 Please note that when using AWS, EC2 instances can have a default hostname that ends with <i>amazonaws.com</i>. Let's Encrypt has a blacklist of domain names for which it will not issue certificates, and that blacklist includes the <i>amazonaws.com</i> domain, which means the default hostname can not be used to get a certificate from Let's Encrypt.
40
41 h3(#bring-your-own). Bring your own certificates
42
43 To supply your own certificates, change the configuration like this:
44
45 <notextile>
46 <pre><code>SSL_MODE="bring-your-own"
47 </code></pre>
48 </notextile>
49
50 {% include 'multi_host_install_custom_certificates' %}
51
52 All certificate files will be used by nginx. You may need to include intermediate certificates in your certificate files. See "the nginx documentation":http://nginx.org/en/docs/http/configuring_https_servers.html#chains for more details.