From aab211ea3bb9f8a98809165900ac27eb0144746e Mon Sep 17 00:00:00 2001 From: Christoph Date: Mon, 10 Aug 2026 00:00:53 +0200 Subject: [PATCH] Readme for adding users --- README.add-user | 139 +++++++++++++++++++++++++++++++++++++++++++++ README.add-user.md | 131 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 270 insertions(+) create mode 100644 README.add-user create mode 100644 README.add-user.md diff --git a/README.add-user b/README.add-user new file mode 100644 index 0000000..99c385f --- /dev/null +++ b/README.add-user @@ -0,0 +1,139 @@ +# Mattermost CLI (mmctl) – Anmeldung & Admin-Nutzerverwaltung + +Diese Anleitung beschreibt, wie du `mmctl` per **Login-Modus** (Variante 2) nutzt, statt über den Local-Socket-Modus. Damit brauchst du kein `sudo` und keine Serverkonfiguration anzupassen. + +--- + +## Voraussetzungen + +- Mattermost läuft und ist unter einer URL erreichbar (lokal z. B. `http://localhost:8065`) +- Du hast bereits einen bestehenden System-Admin-Account (Username + Passwort) +- `mmctl` ist installiert (z. B. unter `/opt/mattermost/bin/mmctl`) + +--- + +## 1. Bei mmctl anmelden + +/opt/mattermost/bin/mmctl auth login http://localhost:8065 \ + --name local-admin \ + --username \ + --password + +# alternativ: zunächst das passwort in einer Datei speichern und dies dann bei der +# Authentifizierung einlesen: +# +cat << EOF > /tmp/.mm-admin-nd.auth +9-ULw6j-RRZsF./p +EOF + +/opt/mattermost/bin/mmctl auth login http://localhost:8065 \ + --name local-admin \ + --username admin-nd \ + --password-file /tmp/.mm-admin-nd.auth + + +**Parameter-Erklärung:** + +| Parameter | Bedeutung +|-------------------------|----------- +| `http://localhost:8065` | URL deines Mattermost-Servers +| `--name local-admin` | Frei wählbarer Name für dieses Login-Profil (wird lokal gespeichert) +| `--username` | Dein bestehender Admin-Benutzername +| `--password` | Dein bestehendes Admin-Passwort + +Nach erfolgreichem Login speichert `mmctl` die Session lokal (unter `~/.config/mmctl/`), sodass du dich nicht bei jedem Befehl neu anmelden musst. + +**Kein `sudo` nötig** - die Authentifizierung läuft über die normale API, nicht über den geschützten Unix-Socket. + +--- + +## 2. Login prüfen (optional) + +/opt/mattermost/bin/mmctl auth list + +Zeigt alle gespeicherten Login-Profile. Das aktive Profil ist markiert. + +Falls du mehrere Profile hast und wechseln willst: + +/opt/mattermost/bin/mmctl auth set local-admin + +--- + +## 3. Neuen System-Admin-Nutzer anlegen + +/opt/mattermost/bin/mmctl user create \ + --email "l.nienhaus@nd-online.de" \ + --username "admin-nd" \ + --password "EinSicheresPasswort123!" \ + --system-admin + +**Parameter-Erklärung:** + +| Parameter | Bedeutung +|------------------|---------- +| `--email` | E-Mail-Adresse des neuen Nutzers +| `--username` | Gewünschter Benutzername +| `--password` | Startpasswort (sollte sicher sein, Nutzer kann es später ändern) +| `--system-admin` | Vergibt sofort die System-Admin-Rolle + +--- + +## 4. Bestehenden Nutzer nachträglich zum Admin machen + +Falls der Nutzer schon existiert und nur die Rolle fehlt: + +/opt/mattermost/bin/mmctl roles system_admin + +--- + +## 5. Kontrolle: Nutzerliste anzeigen + +/opt/mattermost/bin/mmctl user list + +Zeigt alle registrierten Nutzer inkl. E-Mail und Rollen. + +--- + +## 6. Abmelden (optional, für saubere Sessions) + +/opt/mattermost/bin/mmctl auth clean + +Löscht alle gespeicherten Login-Profile. + +--- + +## Troubleshooting + +| Fehler | Ursache | Lösung | +|------------------------------------------------- | ------------------------- |--------------------------- +| `socket file "/var/tmp/mattermost_local.socket" | mmctl versucht Local Mode | Erst `mmctl auth login` +| doesn't exist` | statt Login-Modus | ausführen (siehe Schritt 1) +------------------------------------------------------------------------------------------------------------ +| `Error: You are not logged in` | Session abgelaufen oder | Schritt 1 wiederholen +| | nicht angemeldet | +------------------------------------------------------------------------------------------------------------ +| `command not found: mmctl` | mmctl nicht im PATH | Vollen Pfad nutzen, z. B. +| | |`/opt/mattermost/bin/mmctl` +------------------------------------------------------------------------------------------------------------ +| Verbindung schlägt fehl (`connection refused`) | Falsche URL oder Server | URL/Port prüfen, +| | läuft nicht | `systemctl status mattermost` +------------------------------------------------------------------------------------------------------------ + +--- + +## Kurzreferenz (Cheat Sheet) + +# Anmelden +/opt/mattermost/bin/mmctl auth login http://localhost:8065 --name local-admin --username --password + +# Neuen Admin anlegen +/opt/mattermost/bin/mmctl user create --email "" --username "" --password "" --system-admin + +# Bestehenden Nutzer zum Admin machen +/opt/mattermost/bin/mmctl roles system_admin + +# Nutzerliste anzeigen +/opt/mattermost/bin/mmctl user list + +# Abmelden / Session löschen +/opt/mattermost/bin/mmctl auth clean diff --git a/README.add-user.md b/README.add-user.md new file mode 100644 index 0000000..0dae27d --- /dev/null +++ b/README.add-user.md @@ -0,0 +1,131 @@ +# Mattermost CLI (mmctl) – Anmeldung & Admin-Nutzerverwaltung + +Diese Anleitung beschreibt, wie du `mmctl` per **Login-Modus** (Variante 2) nutzt, statt über den Local-Socket-Modus. Damit brauchst du kein `sudo` und keine Serverkonfiguration anzupassen. + +--- + +## Voraussetzungen + +- Mattermost läuft und ist unter einer URL erreichbar (lokal z. B. `http://localhost:8065`) +- Du hast bereits einen bestehenden System-Admin-Account (Username + Passwort) +- `mmctl` ist installiert (z. B. unter `/opt/mattermost/bin/mmctl`) + +--- + +## 1. Bei mmctl anmelden + +```bash +mmctl auth login http://localhost:8065 --name local-admin --username --password +``` + +**Parameter-Erklärung:** + +| Parameter | Bedeutung | +|---|---| +| `http://localhost:8065` | URL deines Mattermost-Servers | +| `--name local-admin` | Frei wählbarer Name für dieses Login-Profil (wird lokal gespeichert) | +| `--username` | Dein bestehender Admin-Benutzername | +| `--password` | Dein bestehendes Admin-Passwort | + +Nach erfolgreichem Login speichert `mmctl` die Session lokal (unter `~/.config/mmctl/`), sodass du dich nicht bei jedem Befehl neu anmelden musst. + +**Kein `sudo` nötig** – die Authentifizierung läuft über die normale API, nicht über den geschützten Unix-Socket. + +--- + +## 2. Login prüfen (optional) + +```bash +mmctl auth list +``` + +Zeigt alle gespeicherten Login-Profile. Das aktive Profil ist markiert. + +Falls du mehrere Profile hast und wechseln willst: + +```bash +mmctl auth set local-admin +``` + +--- + +## 3. Neuen System-Admin-Nutzer anlegen + +```bash +mmctl user create \ + --email "l.nienhaus@nd-online.de" \ + --username "admin-nd" \ + --password "EinSicheresPasswort123!" \ + --system-admin +``` + +**Parameter-Erklärung:** + +| Parameter | Bedeutung | +|---|---| +| `--email` | E-Mail-Adresse des neuen Nutzers | +| `--username` | Gewünschter Benutzername | +| `--password` | Startpasswort (sollte sicher sein, Nutzer kann es später ändern) | +| `--system-admin` | Vergibt sofort die System-Admin-Rolle | + +--- + +## 4. Bestehenden Nutzer nachträglich zum Admin machen + +Falls der Nutzer schon existiert und nur die Rolle fehlt: + +```bash +mmctl roles system_admin +``` + +--- + +## 5. Kontrolle: Nutzerliste anzeigen + +```bash +mmctl user list +``` + +Zeigt alle registrierten Nutzer inkl. E-Mail und Rollen. + +--- + +## 6. Abmelden (optional, für saubere Sessions) + +```bash +mmctl auth clean +``` + +Löscht alle gespeicherten Login-Profile. + +--- + +## Troubleshooting + +| Fehler | Ursache | Lösung | +|---|---|---| +| `socket file "/var/tmp/mattermost_local.socket" doesn't exist` | mmctl versucht Local Mode statt Login-Modus | Erst `mmctl auth login` ausführen (siehe Schritt 1) | +| `Error: You are not logged in` | Session abgelaufen oder nicht angemeldet | Schritt 1 wiederholen | +| `command not found: mmctl` | mmctl nicht im PATH | Vollen Pfad nutzen, z. B. `/opt/mattermost/bin/mmctl` | +| Verbindung schlägt fehl (`connection refused`) | Falsche URL oder Server läuft nicht | URL/Port prüfen, `systemctl status mattermost` | + +--- + +## Kurzreferenz (Cheat Sheet) + +```bash +# Anmelden +mmctl auth login http://localhost:8065 --name local-admin --username --password + +# Neuen Admin anlegen +mmctl user create --email "" --username "" --password "" --system-admin + +# Bestehenden Nutzer zum Admin machen +mmctl roles system_admin + +# Nutzerliste anzeigen +mmctl user list + +# Abmelden / Session löschen +mmctl auth clean +```