Hallo Uli,
wir haben es damals gemäß Matrix.org - Running your own secure communication service with Matrix and Jitsi auf einen LXC-Debian-Container installiert. Das Video mit Matthew Hodgson ist ganz nett.
Zusätzlich haben wir als Identity-Server noch den ma1sd (GitHub - ma1uta/ma1sd: Federated Matrix Identity Server (formerly fork of kamax/mxisd)) installiert (im gleichen Container).
Als Web-Oberfläche haben wir dann noch element-web (Release v1.7.3 · element-hq/element-web · GitHub) unter /var/www/element ausgepackt und das config-File angepasst und im nginx-Verfügbar gemacht. Wir greifen darauf mit einer eigenen Subdomain (messenger) zu.
Knackpunkte waren bei uns:
- der ./well-known/matrix - Eintrag
in der nginx-Config:
location /.well-known/matrix/server { access_log off; add_header Access-Control-Allow-Origin *; return 200 '{"m.server": "matrix.example.de:443"}'; } location /.well-known/matrix/client { access_log off; add_header Access-Control-Allow-Origin *; return 200 '{ "m.homeserver": { "base_url": "https://matrix.example.de" }, "m.identity_server": { "base_url": "https://matrix.example.de" }}'; }
-
Database: Am besten gleich mit einer echte postgresql beginnen.
-
Password_provider über den identity-Server:
password_providers:
- module: „rest_auth_provider.RestAuthProvider“
config:
endpoint: „http://localhost:8090“
- matrix-IDs sind kleingeschrieben. Unsere Login-Ids im Ldap sind allerdings Großgeschrieben. Das hat dazu geführt, dass wir Benutzer aus dem LDAP zwar finden konnten, diese allerdings mit groß geschriebenen Matrix-IDs angezeigt wurden. So wurden sie dann aber nicht mehr vom Synapse-Server erkannt.
Lösung: Wir haben unser LDAP-Usereintrag um ein Feld ergänzt (mxid), in dem die jeweilige Matrix-ID eingetragen ist (in Kleinbuchstaben). In der ldap-Section der ma1sd-Config haben wir dann:
attribute:
uid:
type: ‚mxid‘
value: ‚mxid‘
name: ‚fullName‘
threepid:
login.id:
- ‚uid‘
und mittels Rewrite-Rule checken wir dann auf die login.id (im LDAP die uid)
auth:
rewrite:
user:
rules:
- regex: ‚.[A-Z].‘
medium: ‚login.id‘
Mit diesem kleinen Trick können sich die User mit Groß- und Kleinschreibung in der Login-ID bei uns anmelden.
Wenn du Hilfe brauchst, dann melde dich einfach. Ich versuche dich gerne zu unterstützen.
Liebe Grüße
Raphael