Technologieführer

OsTicket auf Ubuntu 16.04 mit Nginx, PHP‑FPM 7 und MySQL 5.7 installieren

6 min read Anleitung Aktualisiert 08 Oct 2025
OsTicket auf Ubuntu 16.04 mit Nginx & PHP‑FPM
OsTicket auf Ubuntu 16.04 mit Nginx & PHP‑FPM

TL;DR

OsTicket ist ein leichtgewichtiges Open‑Source‑Ticketsystem. Diese Anleitung zeigt schrittweise die Installation auf Ubuntu 16.04 mit Nginx, PHP‑FPM 7.0 und MySQL 5.7, inklusive Datenbank, Nginx‑VirtualHost, PHP‑Konfiguration, Berechtigungen und Tests. Am Ende finden Sie Checklisten, Sicherheitsmaßnahmen und ein Troubleshooting‑Runbook.

Wichtig: Diese Anleitung richtet sich an Systemadministratoren mit Rootzugang. Passen Sie Domainnamen, Passwörter und Pfade an Ihre Umgebung an.

Kurzbeschreibung und Varianten der Suche

Primäre Absicht: OsTicket installieren und konfigurieren Verwandte Suchbegriffe: osticket installation ubuntu, osticket nginx php7, osticket mysql 5.7, osticket php-fpm konfigurieren, osticket setup tutorial

Voraussetzungen

  • Ubuntu 16.04 (LTS)
  • Root‑ oder sudo‑Zugriff
  • Domain oder lokale DNS/hosts‑Eintrag für Ihre Testdomain
  • Grundkenntnisse von Nginx, MySQL und PHP

Übersicht der Schritte

  1. Nginx und MySQL installieren
  2. PHP‑FPM 7.0 und Erweiterungen installieren
  3. Datenbank und Benutzer anlegen
  4. Nginx VirtualHost für OsTicket erstellen
  5. OsTicket herunterladen und Berechtigungen setzen
  6. Webinstallation durchführen
  7. Tests, Härtung und Troubleshooting

Schritt 1 - Nginx und MySQL installieren

Loggen Sie sich per SSH auf dem Server ein:

ssh [email protected]

Repository aktualisieren:

sudo apt-get update

Nginx und MySQL installieren:

sudo apt-get install -y nginx mysql-server

Sie werden nach einem MySQL‑Root‑Passwort gefragt. Wählen Sie ein sicheres Passwort.

Dialog zur Eingabe des MySQL‑Root‑Passworts

Nginx und MySQL starten und zum Autostart hinzufügen:

systemctl restart nginx
systemctl restart mysql
systemctl enable nginx
systemctl enable mysql

Prüfen Sie offene Ports und laufende Dienste:

netstat -plntu

Sie sollten Port 80 (Nginx) und 3306 (MySQL) sehen.

Ausgabe von netstat mit Nginx und MySQL

Schritt 2 - PHP‑FPM 7 installieren und konfigurieren

OsTicket benötigt mehrere PHP‑Erweiterungen (gd, imap, xml, mbstring u. a.). Installieren Sie PHP 7.0 und alle benötigten Module:

sudo apt-get install -y php7.0-cli php7.0-mysql php7.0-cgi php7.0-fpm php7.0-gd php7.0-imap php7.0-xml php7.0-mbstring php7.0-intl php-apcu

Konfigurieren Sie php.ini für PHP‑FPM:

cd /etc/php/7.0/
vim fpm/php.ini

Suchen Sie die Zeile cgi.fix_pathinfo und setzen Sie sie auf 0:

cgi.fix_pathinfo=0

PHP‑FPM neu starten und aktivieren:

systemctl restart php7.0-fpm
systemctl enable php7.0-fpm

Nginx‑Default‑VirtualHost bearbeiten:

cd /etc/nginx/sites-available/
vim default

Stellen Sie sicher, dass der PHP‑Abschnitt auf php7.0‑fpm verweist (uncomment und anpassen):

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php7.0-fpm.sock;
    }

Nginx neu starten:

systemctl restart nginx

Testen Sie PHP mit einer phpinfo‑Datei:

cd /var/www/html/
echo '' > info.php

Öffnen Sie im Browser: http://192.168.33.14/info.php (ersetzen Sie die IP durch Ihre Serveradresse).

PHP‑Info Seite im Browser

Schritt 3 - Datenbank für OsTicket anlegen

Melden Sie sich an der MySQL‑Shell an:

mysql -u root -p
TYPE YOUR PASSWORD

Erstellen Sie Datenbank und Benutzer (passen Sie Passwort und Namen an):

create database osticket_db;
create user osticket@localhost identified by 'osticketpw@';
grant all privileges on osticket_db.* to osticket@localhost identified by 'osticketpw@';
flush privileges;

Datenbank und Benutzer sind nun vorhanden.

MySQL: OsTicket‑Datenbank und Benutzer angelegt

Schritt 4 - Nginx VirtualHost für OsTicket anlegen

Erstellen Sie eine neue VirtualHost‑Datei für OsTicket:

cd /etc/nginx/sites-available/
vim osticket

Fügen Sie die folgende Konfiguration ein (ersetzen Sie server_name und root entsprechend Ihrer Umgebung):

server {
  listen 80;
  server_name osticket.hakase-labs.com;

  root   /var/www/osticket/upload;

  access_log  /var/log/nginx/access.log;
  error_log  /var/log/nginx/error.log;

  index index.php;
  client_max_body_size 2000M;
  client_body_buffer_size 100M;
  client_header_buffer_size 10M;
  large_client_header_buffers 2 10M;

  client_body_timeout 12;
  client_header_timeout 12;
  keepalive_timeout 15;
  send_timeout 10;

  gzip             on;
  gzip_comp_level  2;
  gzip_min_length  1000;
  gzip_proxied     expired no-cache no-store private auth;
  gzip_types       text/plain application/x-javascript text/xml text/css application/xml;

  set $path_info "";

  location ~ /include {
      deny all;
      return 403;
  }

  if ($request_uri ~ "^/api(/[^\?]+)") {
      set $path_info $1;
  }

  location ~ ^/api/(?:tickets|tasks).*${" "} {
      try_files $uri $uri/ /api/http.php?$query_string;
  }

  if ($request_uri ~ "^/scp/.*\.php(/[^\?]+)") {
      set $path_info $1;
  }

  location ~ ^/scp/ajax.php/.*$ {
      try_files $uri $uri/ /scp/ajax.php?$query_string;
  }

  location / {
      try_files $uri $uri/ index.php;
  }

  location ~ \.php$ {
      fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
      include        fastcgi_params;
      include snippets/fastcgi-php.conf;
      fastcgi_pass unix:/run/php/php7.0-fpm.sock;
      fastcgi_param  PATH_INFO    $path_info;
  }
}

Wichtig: Ersetzen Sie osticket.hakase-labs.com mit Ihrer Domain und prüfen Sie root‑Pfad.

Aktivieren Sie den VirtualHost und testen Sie die Konfiguration:

ln -s /etc/nginx/sites-available/osticket /etc/nginx/sites-enabled/
nginx -t
systemctl restart nginx

Schritt 5 - OsTicket herunterladen und Dateien vorbereiten

Erstellen Sie das Web‑Verzeichnis und laden Sie OsTicket herunter:

mkdir -p /var/www/osticket/
cd /var/www/osticket/
wget http://osticket.com/sites/default/files/download/osTicket-v1.10.zip
unzip osTicket-v1.10.zip

Kopieren Sie die Beispielkonfiguration und setzen Sie die Berechtigungen:

cd upload/
cp include/ost-sampleconfig.php include/ost-config.php
cd /var/www/osticket/
chown -R www-data:www-data upload/

Schritt 6 - Webinstallation durchführen

Öffnen Sie Ihren Browser und rufen Sie die Domain auf (z. B. http://osticket.hakase-labs.com). Folgen Sie dem Installationsassistenten.

Achten Sie darauf, dass alle erforderlichen Pakete grün markiert sind:

osTicket Systemanforderungen prüfen

Wenn Abhängigkeiten fehlen, werden diese rot angezeigt:

osTicket fehlende Abhängigkeiten

Geben Sie im Abschnitt System‑Einstellungen HelpDesk‑Name und Standard‑E‑Mail an. Legen Sie einen Admin‑Benutzer an (Admin‑E‑Mail darf nicht mit HelpDesk‑E‑Mail identisch sein).

osTicket Konfigurationsseite

Datenbankdetails gemäß Schritt 3 eingeben und Installation starten:

Datenbankeinstellungen im Installationsassistenten

Nach erfolgreicher Installation sehen Sie die Bestätigung:

Installation abgeschlossen

Sichern Sie die Installation, indem Sie das Setup‑Verzeichnis umbenennen und die Konfigurationsdatei absichern:

cd /var/www/osticket/upload/
mv setup/ setup-sh/
chmod 0644 include/ost-config.php

Schritt 7 - Tests nach der Installation

Startseiten und Pfade prüfen:

OsTicket Startseite

osTicket Admin Login

OsTicket Agentenseite

OsTicket Einstellungen


Abnahmekriterien

  • Die Startseite lädt ohne HTTP‑Fehler (200 OK).
  • Admin‑Login funktioniert und Admin‑Dashboard ist erreichbar.
  • Tickets lassen sich per E‑Mail empfangen und im SCP anlegen.
  • Datei‑ und Verzeichnisberechtigungen sind auf www‑data gesetzt.
  • Setup‑Ordner ist umbenannt oder entfernt.

Testfälle und Akzeptanzkriterien

  • Test: Login als Admin — Erwartet: Dashboard sichtbar.
  • Test: Ticket per E‑Mail senden — Erwartet: Ticket erscheint in der Warteschlange.
  • Test: Anhänge hochladen (kleine Datei) — Erwartet: Upload erfolgreich, ohne 403/500.
  • Test: PHP‑Info nicht öffentlich erreichbar (info.php entfernen) — Erwartet: 404/403.

Rollebasierte Checklisten

Admin (Helpdesk):

  • Admin‑Konto prüfen und Passwortrichtlinie durchsetzen
  • Standard‑E‑Mail konfigurieren
  • SLA‑ und Ticketkategorien definieren

Sysadmin:

  • SSL/TLS mit Let’s Encrypt einrichten
  • Firewall öffnen: nur 80/443, SSH auf gewählten Port
  • Backups von /var/www/osticket und Datenbank einrichten
  • Logrotation prüfen

Support Agent:

  • Agentenaccounts anlegen
  • E‑Mail‑Routing und Filter testen
  • Automatische Antworten und Makros konfigurieren

Sicherheits‑Härtungsempfehlungen

  • HTTPS erzwingen (Certbot / Let’s Encrypt)
  • PHP‑FPM und Nginx updaten und Sicherheitsupdates automatisieren
  • Dateiberechtigungen minimal halten (upload/ nur www‑data)
  • Entfernen oder Einschränken von info.php
  • Monitoring auf ungewöhnliche Login‑Versuche aktivieren
  • Mailserver/Relay mit Authentifizierung konfigurieren

Kurzer Beispielbefehl für Let’s Encrypt (Certbot):

sudo apt-get install certbot python-certbot-nginx
sudo certbot --nginx -d osticket.hakase-labs.com

Troubleshooting und Incident Runbook

Symptom: 502 Bad Gateway nach PHP‑Konfigurationsänderung

  • Prüfen, ob php7.0‑fpm läuft: systemctl status php7.0-fpm
  • Logs prüfen: journalctl -u php7.0-fpm und /var/log/nginx/error.log
  • Prüfen, ob fastcgi_pass korrekt auf unix:/run/php/php7.0-fpm.sock zeigt
  • Fallback: systemctl restart php7.0-fpm && systemctl restart nginx

Symptom: Fehler beim DB‑Connect

  • MySQL Credentials in include/ost-config.php prüfen
  • MySQL erreichbar? mysql -u osticket -p -h localhost
  • Prüfen Sie grants: SHOW GRANTS FOR ‘osticket’@’localhost’;

Rollback‑Schritte bei fehlerhafter Konfiguration:

  1. Konfigurationsänderung rückgängig machen (Backup verwenden)
  2. Dienste neu starten: systemctl restart php7.0-fpm && systemctl restart nginx
  3. Logs prüfen und bei Bedarf Konfiguration aus dem Backup wiederherstellen

Kompatibilität und Migrationshinweise

  • Diese Anleitung bezieht sich auf Ubuntu 16.04 und PHP 7.0. Neuere Ubuntu‑Versionen verwenden PHP 7.2/7.4 oder höher; prüfen Sie Kompatibilität der OsTicket‑Version.
  • Bei Migration auf MySQL 8 prüfen Sie Authentifizierungs‑Mechanismen und Kollationen.
  • Bei Upgrade von älteren OsTicket‑Versionen: Backup der Datenbank vor jedem Upgrade.

Mini‑Methodik für produktive Inbetriebnahme

  1. Testumgebung einrichten und Installation vollständig durchlaufen
  2. Funktionstests (siehe Testfälle)
  3. Sicherheitscheckliste abarbeiten
  4. Backup‑ und Monitoring‑Pläne aktivieren
  5. Produktivsetzung mit DNS‑Änderung oder Reverse‑Proxy

Entscheidungsbaum zur Auswahl einer Ticketlösung

flowchart TD
  A[Benötigen Sie ein lokales, selbstgehostetes Ticketsystem?] -->|Nein| B[Cloud/Gehostete Lösung]
  A -->|Ja| C[Wollen Sie PHP/MySQL nutzen?]
  C -->|Ja| D[OsTicket prüfen]
  C -->|Nein| E[Andere Open‑Source Lösungen prüfen]

Kurzglossar

  • PHP‑FPM: PHP als FastCGI Process Manager, effizient für Nginx
  • Nginx: Webserver und Reverse‑Proxy
  • MySQL: relationale Datenbank
  • LDAP/Active Directory: Verzeichnisdienste für Authentifizierung

Lokale Hinweise und Best Practices für DE‑Umgebungen

  • Achten Sie auf DSGVO‑konforme Verarbeitung von personenbezogenen Tickets (Zugriffsprotokolle, Aufbewahrungsfristen)
  • Mailserver‑Konfiguration prüfen (SPF, DKIM, DMARC) damit Benachrichtigungen nicht in den Spam gelangen

Zusammenfassung

OsTicket lässt sich zuverlässig auf Ubuntu 16.04 mit Nginx, PHP‑FPM 7.0 und MySQL 5.7 installieren. Folgen Sie den Schritten: Server vorbereiten, PHP‑FPM konfigurieren, Datenbank anlegen, VirtualHost erstellen, Dateien bereitstellen, Webinstallation durchführen und abschließend absichern und testen.

Wichtig: Testen Sie alle Funktionen in einer Staging‑Umgebung und automatisieren Sie Backups und Updates.

Weiterführende Links

Autor
Redaktion

Ähnliche Materialien

Programme beim Windows-Start automatisch starten
Windows Support

Programme beim Windows-Start automatisch starten

Vorinstallierte Apps entfernen auf Android & iOS
Mobile

Vorinstallierte Apps entfernen auf Android & iOS

Dev Error 6068 lösen – Warzone Fixes für Windows
Gaming

Dev Error 6068 lösen – Warzone Fixes für Windows

PowerShell‑Version in Windows prüfen
Windows

PowerShell‑Version in Windows prüfen

Erweiterungen manuell in Edge installieren
Browser

Erweiterungen manuell in Edge installieren

OsTicket auf Ubuntu 16.04 mit Nginx & PHP‑FPM
Anleitung

OsTicket auf Ubuntu 16.04 mit Nginx & PHP‑FPM