# 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