You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+61-3Lines changed: 61 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -140,6 +140,66 @@ If you prefer not to run the `set_env.sh` script, you can configure the `.env` f
140
140
PORT=9090
141
141
```
142
142
143
+
Next, open a browser to `https://localhost:9090`
144
+
145
+
### <a name="using-https"></a>🔒 Using HTTPS and Trusting the Self-Signed Certificate
146
+
147
+
By default, Fasten On-Prem runs with HTTPS enabled to ensure your data is secure. It uses a self-signed **TLS** certificate, which offers the same level of encryption as a commercially issued certificate. The first time you connect, your browser will display a security warning because it doesn't yet trust the certificate's issuer. The steps below will guide you through the simple, one-time process of telling your browser to trust the certificate, ensuring a secure connection without future warnings. Please note that the generated certificates can be replaced at any time with your own valid TLS certificates.
148
+
149
+
#### How it Works: The Chain of Trust
150
+
151
+
To establish a secure connection, your browser needs to trust the server's TLS certificate. Here’s how the process works in Fasten On-Prem:
152
+
153
+
1. **Root Certificate Authority (CA):** When the application first starts, it generates its own self-contained Certificate Authority, called `"Fasten Health CA"`. Think of this as the highest level of trust. The public part of this CA is the `rootCA.pem` file.
154
+
2. **Server Certificate:** The application then uses the `"Fasten Health CA"` to issue and sign a specific certificate for the web server (e.g., for `localhost`).
155
+
3. **Browser Verification:** When you connect to the server, it presents the server certificate to your browser. Your browser checks who signed it and sees it was `"Fasten Health CA"`. The browser then asks, "Do I trust the 'Fasten Health CA'?"
156
+
157
+
Initially, the answer is no, which is why you see a security warning. By following the steps below to import the `rootCA.pem` file, you are telling your browser or operating system to trust our self-generated CA. Once the CA is trusted, any certificates it signs—including the server certificate—will also be trusted, and the connection will be secure without any warnings.
158
+
159
+
#### 1. Locate the Root CA Certificate
160
+
161
+
When you run the application using the production Docker Compose file (`docker-compose-prod.yml`), it automatically generates a `rootCA.pem` file. This file is located in the `certs` directory on your host machine.
162
+
163
+
- **Certificate Path:** `certs/rootCA.pem`
164
+
165
+
#### 2. Import the Certificate
166
+
167
+
You will need to import this certificate into your operating system's or browser's trust store. Here are general instructions for different platforms:
168
+
169
+
**macOS**
170
+
171
+
1. Open the **Keychain Access** application.
172
+
2. Select the **System** keychain.
173
+
3. Go to **File > Import Items** and select the `certs/rootCA.pem` file.
174
+
4. Find the "Fasten Health CA" certificate in the list, double-click it, and under the **Trust** section, set "When using this certificate" to **Always Trust**.
175
+
176
+
**Windows**
177
+
178
+
1. Double-click the `certs/rootCA.pem` file.
179
+
2. Click **Install Certificate...** and choose **Local Machine**.
180
+
3. Select **Place all certificates in the following store**, click **Browse**, and choose **Trusted Root Certification Authorities**.
181
+
4. Complete the wizard to finish the import process.
182
+
183
+
**Linux (Ubuntu/Debian)**
184
+
185
+
1. Copy the certificate to the trusted certificates directory:
0 commit comments