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

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
- Nginx und MySQL installieren
- PHP‑FPM 7.0 und Erweiterungen installieren
- Datenbank und Benutzer anlegen
- Nginx VirtualHost für OsTicket erstellen
- OsTicket herunterladen und Berechtigungen setzen
- Webinstallation durchführen
- 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.
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.
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).
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.
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:
Wenn Abhängigkeiten fehlen, werden diese rot angezeigt:
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).
Datenbankdetails gemäß Schritt 3 eingeben und Installation starten:
Nach erfolgreicher Installation sehen Sie die Bestätigung:
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: http://osticket.hakase-labs.com/
- Admin Login: http://osticket.hakase-labs.com/scp/
- Agent Panel: http://osticket.hakase-labs.com/scp/index.php
- Admin Einstellungen: http://osticket.hakase-labs.com/scp/settings.php
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:
- Konfigurationsänderung rückgängig machen (Backup verwenden)
- Dienste neu starten: systemctl restart php7.0-fpm && systemctl restart nginx
- 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
- Testumgebung einrichten und Installation vollständig durchlaufen
- Funktionstests (siehe Testfälle)
- Sicherheitscheckliste abarbeiten
- Backup‑ und Monitoring‑Pläne aktivieren
- 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
Ähnliche Materialien
Programme beim Windows-Start automatisch starten

Vorinstallierte Apps entfernen auf Android & iOS

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

PowerShell‑Version in Windows prüfen

Erweiterungen manuell in Edge installieren
