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
Keycloak is a self-hostable OpenID Connect provider.
6
+
7
+
> Ensure your matrix .well-known values are being served correctly before beginning. Such as with [matrixtest](../troubleshooting.md#matrixrtc-testing-tools)
- Web Origins = `https://<your.matrix.example.com>`
16
+
2. Navigate to the Client Credentials tab, note the value of `client secret`
17
+
3. Note the `realm` you are creating the client in.
18
+
19
+
### Tuwunel configuration
20
+
21
+
Add the following identity provider section to you tuwunel.toml config file. Replace the `< placeholders>` with the values noted in your keycloak `client`.
Copy [tuwunel.container](tuwunel.container) to ~/.config/containers/systemd/tuwunel.container.
4
-
Reload daemon:
3
+
For a rootless setup, we can use quadlets and systemd to manage the container lifecycle.
4
+
5
+
> If this is the first container managed with quadlets for your user, ensure that linger is enabled so your containers are not killed after logging out.
6
+
>
7
+
> `sudo loginctl enable-linger <username>`
8
+
9
+
## Installation
10
+
1. Copy quadlet files to `~/.config/containers/systemd/tuwunel`
- Modify [tuwenel.toml](generic.md#creating-the-tuwunel-configuration-file) to desired values. This can be saved in your user home directory if desired.
55
+
56
+
3. Reload daemon to generate our systemd unit files:
Caddy can serve `.well-known/matrix/client` and `.well-known/matrix/server` instead of `tuwunel`. This can be done by using the `respond` directive in your caddyfile.
48
+
49
+
Useful if you want to delegate a domain such as `example.com` -> `matrix.example.com`.
50
+
51
+
> [!info] Note the use of \` (backtic) in the respond directive to escape JSON that contains \" (double quotes).
52
+
53
+
```caddyfile
54
+
your.server.name, your.server.name:8848 {
55
+
56
+
@matrix path /.well-known/matrix/*
57
+
#Recommended CORS headers (https://spec.matrix.org/v1.17/client-server-api/#well-known-uris)
58
+
header @matrix {
59
+
Access-Control-Allow-Origin: *
60
+
Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS
0 commit comments