GLPI

Umfangreiches, ausgereiftes Ticketsystem mit vielen integrierten Modulen wie:

Installation

GLPI ist Open Source und kann kostenlos selbst gehostet werden. Außerdem bieten sie eine kostenpflichtige Cloud Version an.

Eine Liste mit allen verfügbaren Features kann auf der Homepage eingesehen werden: GLPI features

Es gibt jedoch eine gut gepflegte Docker Version von DiouxX welche auf GitHub und im Docker Hub  zu finden ist. Auf Basis dieses Images wird folgende Compose Konfiguration erstellt.

services:
  glpi-db:
    image: mariadb
    container_name: glpi-db
    volumes:
      - /etc/timezone:/etc/timezone:ro
      - /etc/localtime:/etc/localtime:ro
      - /root/Docker/glpi/data:/var/lib/mysql
    environment:
      - MARIADB_ROOT_PASSWORD=EinPasswortFürDenRoot712
      - MARIADB_DATABASE=glpidb
      - MARIADB_USER=glpi_user
      - MARIADB_PASSWORD=Ein861PasswortFürDenUser
    restart: unless-stopped

  glpi:
    image: diouxx/glpi
    container_name: glpi
    volumes:
      - /etc/timezone:/etc/timezone:ro
      - /etc/localtime:/etc/localtime:ro
      - /pfad/zu/glpi/glpi:/var/www/html/glpi
    environment:
      - TIMEZONE=Europe/Berlin
    restart: unless-stopped
    depends_on:
      - glpi-db
    ports:
      - 80:80

GLPI benötigt als Backend eine MariaDB Datenbank, welche der Konfiguration hinzugefügt wurde.

Es sollten auf jeden Fall die Passwörter und die Volumes angepasst werden.

Um die Docker Compose Konfiguration auszuführen, kann am besten in das Verzeichnis der YAML Datei gewechselt werden. Danach wird je nach nach gewählter Installation sudo docker-compose up -d oder sudo docker compose up -d (keine Bindestrich zwischen docker und compose) eingegeben, um die Standard Konfiguration docker-compose.yml zu starten. Compose erstellt dann die gewünschten Container mit den angegeben Optionen. Sollten die Container bereits mit dieser Compose Konfiguration erstellt worden sein, so werden die Container in dieser neu erstellt, dessen Konfiguration geändert wurde.

Anschließend kann GLPI eingerichtet werden: http://localhost/ 

Einrichtung

Wird die Seite aufgerufen, öffnet sich automatisch das Setup. In einem Dialog werden alle notwendigen Daten abgefragt.

Zuerst wird die Sprache ausgewählt.

grafik.png

Danach sind die Lizenzbedingungen zu prüfen und zu akzeptieren.

grafik.png

Nun wird sicherheitshalber abgefragt, ob es sich um eine Neuinstallation oder ein Upgrade handelt. In diesem Fall ist es eine neue Installation also wird Installieren ausgewählt.

grafik.png

GLPI prüft nun die Kompatibilität und zeigt an, ob alle Anforderungen erfüllt sind. Nachdem diese geprüft wurden, wird das Setup mit einem Klick auf Weiter fortgesetzt.

grafik.png

Anschließend folgt die Konfiguration der Datenbank, hier werden nun die Daten aus der Compose Konfiguration hinterlegt:

Die Datenbankverbindung wird dann mit Weiter bestätigt.

grafik.png

Da bereits bei der Erstellung der Container in der Compose Datei eine Datenbank angegeben wurde, kann diese im nächsten Schritt einfach ausgewählt werden. Alternativ könnte auch eine neue Datenbank erstellt werden, sofern der ausgewählte Benutzer über die notwendigen Rechte verfügt. Es wird aber dringend davon abgeraten einen Admin zu hinterlegen, da dies nicht erforderlich ist und unnötige Risiken birgt. Stattdessen sollte manuell eine Datenbank erstellt, ein passender Benutzer angelegt und Vollzugriff auf die Datenbank erhalten.

In diesem Beispiel wird die bereits vorhandene Datenbank ausgewählt und das Setup mit Weiter fortgesetzt.

grafik.png

Jetzt wird die eigentliche Installation ausgeführt und die Datenbank eingerichtet. Dies kann einige Zeit dauern.

grafik.png

Danach sollte eine Erfolgsmeldung ausgegeben werden.

grafik.png

Nach einem Klick auf Weiter wird noch ein Formular für die Option zum anonymen Daten sammeln angezeigt.

grafik.png

 Anschließend wird dann noch kurz darauf hingewiesen, dass auch ein kostenpflichtiger Support abonniert werden kann.

grafik.png

Zum Schluss (na endlich) wird eine Übersicht mit allen Standard Benutzern angezeigt, welche automatisch angelegt wurden.

Unbedingt die hier angezeigten Benutzer ändern, da diese Daten für alle frischen GLPI Instanzen gleich sind und somit ein enormes Risiko bergen, vor allem der Benutzer glpi, welcher der Administrator ist.

grafik.png

Jetzt kann auf GLPI benutzen geklickt werden, um auf die Anmeldeseite weitergeleitet zu werden. Dort am besten mit dem Admin-Login: glpi und Passwort glpi anmelden.

Daraufhin wird das Dashboard von GLPI angezeigt und direkt auf die Standard-Passwörter sowie das Löschen des Installationsverzeichnisses hingewiesen. Diese Schritte sollten sofort durchgeführt werden.

grafik.png

Update

Um bei der Docker Instanz ein Update einzuspielen, reicht es nicht nur die Images mit docker compose pull zu aktualisieren. Sondern da der www-data Ordner von GLPI als Volume eingehängt wird, müssen die Daten für GLPI manuell aktualisiert werden.

  1. Mit docker compose pull die Images aktualisieren
  2. Die aktuelle Version von der GLPI Seite herunterladen: GLPI Downloads
  3. Den Download entpacken
  4. In dem neuen Ordner den Unterordner config löschen
  5. Mit docker compose down GLPI ordentlich ausschalten
  6. Alle Dateien und Unterordner in den Ordner kopieren, welcher in dem Volume des GLPI Containers angegeben ist
  7. Mit docker compose up -d GLPI wieder starten
  8. Die Webseite aufrufen, es startet automatisch ein Upgrade Dialog, diesen einfach durchlaufen und abschließen

Benutzer verwalten

Bei einer frischen Installation einfach mit dem Administrator glpi anmelden.

Dann im linken Menüband auf Administration und dann auf Benutzer klicken.

Wenn noch keine Benutzer gelöscht oder hinzugefügt wurden, sieht die bisherige Liste wie folgt aus.

grafik.png

Hier können nun die Standardbenutzer gelöscht und neue Benutzer hinzugefügt werden.

Benutzer hinzufügen

Dazu oben mittig auf Hinzufügen klicken. Anschließend wird folgendes Formular angezeigt. In diesem werden die Benutzerinformationen eingetragen sowie Berechtigungen, Login usw.

grafik.png

Die Berechtigungen werden hierbei nicht für jeden Benutzer einzeln eingestellt, sondern es werden sog. Profile erstellt, in denen hinterlegt ist, was die Benutzer dürfen. Somit wird hier nur ein Profil zugewiesen.

Einzelnen Benutzer bearbeiten

Um einen einzelnen Benutzer anzupassen, diesen einfach in der Liste mit allen Benutzern anklicken.

Daraufhin öffnet sich eine deutlich umfangreichere Ansicht als noch beim Erstellen. Es gibt nun die Möglichkeit den Benutzer z. B. mit Geräten zu verbinden oder Tickets für diesen zu erstellen usw. Zusätzlich gibt es rechts oben noch die Schaltfläche Aktionen. Wird diese angeklickt, werden noch mehr Optionen für den dargestellten Benutzer angeboten.

grafik.png

Mehrere Benutzer bearbeiten

Falls für mehrere Benutzer z. B. die Profile geändert werden sollen, so können in der Übersicht mit allen Benutzern die gewünschten Benutzer ausgewählt werden. Anschließend wird auf Aktionen über der Liste geklickt und nun kann in einem Pop-Up die Massenaktion ausgewählt werden. Bei einigen Aktionen, wie z. B. Kommentar hinzufügen, werden direkt noch weitere Felder abgefragt, wie der Kommentar in einem Textfeld.

grafik.png

Profile

Mit Hilfe von sog. Profilen werden die Berechtigungen der Benutzer gesteuert.

Standardmäßig sind die folgenden Profile vorhanden.

grafik.png

Diese Profile können beliebig angepasst und auch entfernt werden. Außerdem lassen sich noch beliebig viele weitere Profile hinzufügen.

Neues Profil

Um ein neues Profil zu erstellen, wird oben mittig auf Hinzufügen geklickt. Daraufhin wird ein neues Formular geöffnet, indem einige grundlegende Einstellungen zum Profil ausgefüllt werden.

grafik.png

Nach einem Klick auf hinzufügen wird das Profil erstellt. Es bleibt standardmäßig noch das Formular zum Erstellen offen und wird nur geleert. Um weitere Einstellungen am Profil vornehmen zu können, am besten wieder in die Übersicht wechseln und das Profil bearbeiten.

Profil bearbeiten

In der Übersicht kann ein Profil einfach ausgewählt werden, um dieses zu bearbeiten. Auch dieses Menü ist wie bei den Benutzern deutlich umfangreicher als das Formular zum Erstellen.

grafik.png

Hier gibt es einen Fallstrick, denn standardmäßig wird nur eine einfache Ansicht dargestellt, welche gar nicht alle Einstellungen anzeigt. Um alle Optionen konfigurieren zu können,  ist die Ansicht von Einfache Ansicht auf Standard Ansicht zu ändern. Dies kann schon beim Erstellen angepasst werden, aber auch jederzeit später wieder geändert werden.

grafik.png

Nachdem das Feld gesetzt wurde, ist einmal auf Speichern zu klicken. Jetzt werden noch mehr Optionen angezeigt und es lassen sich detaillierte Einstellungen für das HelpDesk, Asstets, Werkzeuge, Verwaltung usw. vornehmen.

grafik.png

grafik.png

grafik.png

Plugin installieren

Auf der offiziellen Seite von GLPI werden einige Plugins verwiesen: GLPI plugins’s documentation

Marketplace

Alternativ lässt sich auch in der GLPI Instanz selbst der sog. Marketplace aktivieren, wofür eine (kostenlose) Registrierung notwendig ist.

grafik.png

Manuelle Installation

Neben der automatischen Marketplace Installation gibt es noch die manuelle Installation. Hierzu wird ein Plugin im Internet gesucht und heruntergeladen, z. B. GLPI Inventory Plugin von GitHub. Standardmäßig wird eine gepackte Datei angeboten, welche heruntergeladen und entpackt wird. In dem Ordner befindet sich dann ein Ordner mit dem Namen des Plugins.

Dieser Ordner wird nun einfach in den Ordner Plugins im Root-Verzeichnis von GLPI geschoben.

Nun die Seite in GLPI aktualisieren und das so eben hochgeladen Plugin wird direkt angezeigt und kann nun installiert werden.

grafik.png

Dazu einfach auf das Ordnersymbol rechts klicken. Woraufhin die Installation des Plugins startet.

grafik.png

Nach einigen Sekunden wird dann die Seite aktualisiert und das Plugin kann nun aktiviert werden, um es zu konfigurieren und einzusetzen. Hierfür einfach den roten Slider anklicken.

grafik.png

Nun ist das Modul aktiv und kann über den Schraubenschlüssel konfiguriert werden.

grafik.png

Verfügbare Geräte bei Ticketerstellung

Standardmäßig werden nur die eigenen Geräte des Benutzers angezeigt, welche diesem explizit zugewiesen sind. Das kann jedoch nervig sein, wenn es z. B. um Drucker geht, die von mehreren Benutzern genutzt werden und somit nicht automatisch zugewiesen werden. Hier bieten sich Gruppen an. Dann kann eine Gruppe einem Drucker zugewiesen werden und die Benutzer wiederum dieser Gruppe.

Damit die Benutzer dann die Geräte der Gruppe auswählen können, muss in der Rolle Self-Service unter dem Punkt Vereinigung der Punkt Hardware meiner Gruppen anzeigen angehakt werden, wie im folgenden Screenshot zu sehen.

grafik.png

Weiterhin besteht hier die Möglichkeit Geräte für die Verknüpfung bei der Ticketerstellung auszuwählen und allgemein die Gerätekategorien auszuwählen, die sich überhaupt verknüpfen lassen.

Wenn nun in einem Gerät eine Gruppe gesetzt wird, wie z. B. bei folgendem Drucker, dann kann der Benutzer diesen bei der Ticketerstellung auswählen.

grafik.png

Wenn der Benutzer nun im Formular für die Erstellung eines Tickets ein Element hinzufügen möchte, so wird dieser Drucker angezeigt, sofern der Benutzer auch Mitglied dieser Gruppe ist. In diesem Fall sind Drucker und Benutzer Mitglied der Gruppe Testgruppe.

grafik.png

Formular Ticket erstellen

Das Standard-Formular von GLPI enthält eine Reihe von Feldern, wovon einige ggf. mehr verwirren, als sie an Mehrwert bieten. Zum Glück haben die Entwickler die Möglichkeit geschaffen, eigene Formulare zu erstellen. Außerdem können die Formulare Profilen zugewiesen werden, sodass z. B. ein Techniker ein umfangreicheres Formulare haben kann, als der Self-Service.

Um zum Menü für die Vorlagen der Tickets zu gelangen, kann am besten die Menüsuche verwendet werden und nach Vorlagen gesucht werden, wie im folgenden Screenshot zu sehen.

grafik.png

Neues Formular erstellen

Nun wird eine Übersicht über alle bereits definierten Ticketvorlagen angezeigt. In diesem Fall wurde schon ein neues Formular mit dem Namen Reduziertes Formular angelegt, normalerweise ist dort nur Default zu sehen. Natürlich könnte einfach das Default Formular angepasst werden, jedoch empfiehlt es sich immer, dieses zu klonen und anzupassen, falls doch zum Standard zurückgegangen werden soll.

grafik.png

Öffnen wir nun das Default Formular. Dann klicken wir rechts oben auf Aktionen und dann auf Klonen. Daraufhin wird abgefragt, wie oft es geklont werden soll, hier belasse ich es auf 1.

grafik.png

Es wird leider nicht das neue Formular geöffnet, sondern das Original bleibt bestehen. Somit muss einmal manuell in das neue Formular gewechselt werden.

Nachdem nun also in den Klon gewechselt wurde, gilt es als erstes den Namen anzupassen. Wichtig dabei ist nach der Eingabe des Namens, auf Speichern zu klicken, sonst setzt sich der Name bei der nächsten Einstellung zurück, weil das Formular neu geladen wird, wenn die Felder angepasst werden.

grafik.png

Bevor wild drauf losgebastelt wird, empfiehlt es sich, unter Standard-Ansicht und Einfache Ansicht die bisherigen Formulare anzusehen. Wenn Felder geändert werden, können diese beiden Ansichten jederzeit wieder aufgerufen werden, um zu prüfen, wie sich das Formular geändert hat. Im Prinzip handelt es sich bei den beiden Menüs um eine Vorschau der Formulare.

ITIL Kategorien

Die sog. ITIL Kategorien bieten eine besondere Möglichkeit zur Steuerung der Formulare. Damit können Formulare nicht nur über User-Profile gesteuert werden, sondern zusätzlich über die ITIL Kategorie. Dabei entspricht die ITIL Kategorie der in einem Ticket auswählbaren Kategorie. Nehmen wir an es gibt eine Kategorie Hardware - Drucker. Dann könnte diese über ein eigenes Formulare verfügen, welches ein Gerät als Pflichtfeld abfragt.

Pflichtfelder

Wie der Name schon sagt, müssen diese Felder ausgefüllt werden. Im Default Formular ist nur die Beschreibung ein Pflichtfeld. Im ersten Moment ist es etwas verwirrend, dass keine weiteren Felder angezeigt werden. Diese müssen oben rechts über das Dropdown ausgewählt und über die Schaltfläche Hinzufügen mit aufgenommen werden.

Bitte den Hinweis in den Klammern beachten, denn einige Felder sind nur in der Standard-Ansicht verfügbar. Leider lässt sich dies nicht umstellen, sodass ein Standard-Formular entworfen werden muss, wenn diese Pflichtfelder auch vom Self-Services abgefragt werden sollen.

grafik.png

Im folgenden wurden die Felder Titel und Kategorie hinzugefügt, sodass diese nun angezeigt werden.

grafik.png

Vordefinierte Felder

Hier können Standardwerte für die Felder hinterlegt werden. Wie bereits bei den Pflichtfeldern müssen auch hier erst die Felder hinzugefügt werden, um dann die Standardwerte zu setzen. Es lassen sich alle Felder mit Standardwerten versehen, auch für versteckte Felder.

grafik.png

Versteckte Felder

Da GLPI standardmäßig selbst in den einfachen Formularen eine ganze Menge Infos abfragt oder auch nur anzeigt, empfiehlt es sich auf jeden Fall diese zu verstecken, um den Benutzer im Self-Service nicht zu überfordern.

Auch hier werden wie bei den Pflichtfeldern die Formulare ausgewählt, die auszublenden sind.

Leider wird hier nicht angezeigt, ob das Feld nur in den Standard-Ansichten oder auch in den einfachen Ansichten vorhanden ist. Deswegen am besten 2 komplett getrennte Formulare für den Self-Service und die Techniker erstellen.

grafik.png

Standard-Formular für Profil setzen

Das Standard-Formular kann in den Profileinstellungen unter HelpDesk angepasst werden.

grafik.png

Die Umschalten zwischen Einfacher Ansicht und Standard Ansicht kann ebenfalls für jede Rolle gesteuert werden, dies geschieht über den Reiter Profil und dann unter Ansicht.

grafik.png

Self-Service schließen eigener Tickets

Standardmäßig kann ein Benutzer mit dem Profil Self-Service seine eigenen Tickets nicht schließen. Nur in einem Fall, wenn eine Lösung vorgeschlagen wird, kann der Benutzer das Ticket selbst schließen.

Wenn dem Benutzer zu jederzeit die Berechtigung zum Schließen des Tickets erteilt werden soll, kann dies unter Administration - Profile für das Profil angepasst werden.

Im Reiter Lebenszyklen kann nun definiert, in welchem Status des Tickets ein Benutzer den Status setzen darf. Hierbei wird auch zwischen den Zielstatus unterschieden, sodass der Benutzer das Ticket nur schließen kann, aber beispielsweise nicht in Bearbeitung oder auf Neu setzen kann. Im folgenden Beispiel wurden die Rechte so angepasst, dass der Benutzer sein eigenes Ticket jederzeit selbst schließen kann.

grafik.png