Wie installiere ich osTicket auf einem Ubuntu 24.04 Server?
osTicket ist eine in PHP geschriebene Open-Source-Helpdesk- und Ticketing-Lösung. Sie unterstützt mehrere Integrationsmöglichkeiten wie E-Mail. Telefonnummern und Webformulare. Außerdem kannst du benutzerdefinierte Felder, Filter, Themen, Aufgaben und Auto-Responder einrichten.
In dieser Anleitung erfährst du, wie du das Open-Source-Ticketing-System osTicket auf einem Ubuntu 24.04 Server installierst. Du installierst osTicket mit dem LAMP-Stack (Linux, Apache, MariaDB und PHP) und sicherst osTicket mit HTTPS über Certbot und Letsencrypt.
Voraussetzungen
Um diese Anleitung durchzuführen, musst du Folgendes haben:
- Einen Ubuntu 24.04 Server
- Einen Nicht-Root-Benutzer mit Administrator-Rechten
- Einen Domainnamen, der auf die IP-Adresse des Servers zeigt
Installieren der Abhängigkeiten
osTicket ist ein in PHP geschriebenes Open-Source-Ticketsystem. Um osTicket auf deinem Ubuntu-System zu installieren, musst du den LAMP-Stack (Linux, Apache, MariaDB und PHP) installieren. Zurzeit benötigst du PHP 8.2, also installierst du es über das Repository eines Drittanbieters.
Führe zunächst den folgenden Befehl aus, um grundlegende Pakete auf deinem Ubuntu-System zu installieren und füge das PPA-Repository für PHP hinzu. In diesem Fall verwendest du PHP 8.2 für die Installation von osTicket, das im PPA-Repository verfügbar ist.
sudo apt install ca-certificates apt-transport-https software-properties-common lsb-release -y sudo add-apt-repository ppa:ondrej/php -y
Führe nun den folgenden Befehl aus, um die LAMP-Stack-Abhängigkeiten auf deinem Ubuntu-System zu installieren. Gib„Y“ ein, um die Installation zu bestätigen.
sudo apt install apache2 mariadb-server php8.2 libapache2-mod-php8.2 php8.2-mysql php8.2-cgi php8.2-fpm php8.2-cli php8.2-curl php8.2-gd php8.2-imap php8.2-mbstring php-pear php8.2-intl php8.2-apcu php8.2-common php8.2-bcmath php8.2-xml php8.2-zip
Nachdem die Installation abgeschlossen ist, überprüfe den Status des Dienstes„apache2“ mit dem folgenden Befehl.
sudo systemctl is-enabled apache2 sudo systemctl status apache2
Wie du unten siehst, ist der Apache-Webserver aktiviert und läuft.
Als Nächstes überprüfst du den Status des MariaDB-Servers mit dem folgenden Befehl. Du siehst, dass der MariaDB-Server ebenfalls läuft und auf deinem Ubuntu-System aktiviert ist.
sudo systemctl is-enabled mariadb sudo systemctl status mariadb
Überprüfe schließlich mit dem folgenden Befehl die PHP-Version. Du wirst sehen, dass PHP 8.2 über das PPA-Repository auf deinem System installiert ist.
sudo php -v sudo php -m
PHP konfigurieren
In diesem Abschnitt wirst du PHP konfigurieren, indem du die Standarddatei „php.ini“ bearbeitest und den Apache-Webserver neu startest.
Öffne die Datei„/etc/php/8.2/apache2/php.ini“ mit dem Editor„nano„.
sudo nano /etc/php/8.2/apache2/php.ini
Ändere die Standardkonfiguration wie folgt. Achte darauf, dass du die Optionen„date.timezone“ und„memory_limit“ nach Bedarf anpasst.
date.timezone = Europe/Berlin memory_limit = 512M
Wenn du fertig bist, speichere die Datei und beende den Editor.
Zum Schluss führst du den Befehl„systemctl“ aus, um den Apache-Webserver neu zu starten und deine neuen PHP-Konfigurationen zu übernehmen.
sudo systemctl restart apache2
MariaDB-Server konfigurieren
Nachdem du PHP konfiguriert hast, musst du deine MariaDB-Serverinstallation sichern und eine neue Datenbank und einen neuen Benutzer für osTicket anlegen. Um den MariaDB-Server zu sichern, verwendest du das Dienstprogramm „mariadb-secure-installation“ und anschließend den Client „mariadb“.
Führe die folgende„mariadb-secure-installation“ aus, um deine MariaDB-Serverinstallation zu sichern.
sudo mariadb-secure-installation
Nun wirst du nach den folgenden Konfigurationen gefragt:
- Bei der Standard-MariaDB-Serverinstallation ohne Root-Passwort drückst du ENTER, wenn du nach dem Passwort gefragt wirst.
- Die lokale Authentifizierung für MariaDB-Root-Benutzer ist standardmäßig gesichert. Gib „n“ ein, wenn du die Authentifizierungsmethode auf„unix_socket“ ändern möchtest.
- Gib „Y“ ein, um ein neues MariaDB Root-Passwort zu erstellen. Gib dann das sichere Passwort für deinen MariaDB-Root-Benutzer ein und wiederhole den Vorgang.
- Wenn du gefragt wirst, ob du die Remote-Authentifizierung für den MariaDB-Root-Benutzer deaktivieren möchtest, gibst du„Y“ ein, um zuzustimmen.
- Die Standardinstallation des MariaDB-Servers enthält die Datenbank „test“ und erlaubt einem anonymen Benutzer den Zugriff auf diese Datenbank. Gib für beide Einstellungen„Y“ ein, um die Standarddatenbank „test“ zu entfernen und das anonyme Recht zu löschen.
- Gib abschließend„Y“ ein, um das Neuladen der Tabellenberechtigungen zu bestätigen.
Nachdem der MariaDB-Server konfiguriert und gesichert ist, musst du eine neue Datenbank und einen neuen Benutzer für die osTicket-Installation erstellen.
Melde dich mit dem unten stehenden Client-Befehl „mariadb“ am MariaDB-Server an. Gib dein MariaDB Root-Passwort ein, wenn du dazu aufgefordert wirst.
sudo mariadb -u root -p
Sobald du eingeloggt bist, führe die folgenden Abfragen aus, um eine neue Datenbank und den Benutzer„osticket“ mit dem Passwort „osticketpassword“ zu erstellen . Ändere die folgenden Angaben nach Bedarf.
CREATE DATABASE osticket; CREATE USER 'osticket'@'localhost' IDENTIFIED BY 'osticketpassword'; GRANT ALL PRIVILEGES ON osticket.* TO osticket@localhost IDENTIFIED BY "osticketpassword"; FLUSH PRIVILEGES;
Führe nun die folgende Abfrage aus, um sicherzustellen, dass der Benutzer„osticket“ auf die Datenbank „osticket“ zugreifen kann .
SHOW GRANTS FOR osticket@localhost;
In der folgenden Ausgabe kannst du sehen, dass der Benutzer „osticket“ Zugriff auf die Datenbank „osticket“ hat.
Zum Schluss gibst du„quit“ ein, um den MariaDB-Server zu verlassen.
Herunterladen von osTicket
Nachdem du den PHP- und MariaDB-Server konfiguriert hast, lädst du den osTicket-Quellcode herunter und richtest das Installationsverzeichnis ein.
Gehe in das Verzeichnis„/var/www/“ und lade den osTicket-Quellcode mit dem unten stehenden Befehl„wget“ herunter.
cd /var/www wget https://github.com/osTicket/osTicket/releases/download/v1.18.1/osTicket-v1.18.1.zip
Nach dem Download entpackst du den osTicket-Quellcode mit dem Befehl „unzip“ in das Verzeichnis„osTicket„. Das osTicket-Installationsverzeichnis befindet sich dann im Verzeichnis„/var/www/osTicket„.
unzip osTicket-v1.18.1.zip -d osTicket
Führe nun den folgenden Befehl aus, um den Eigentümer des Verzeichnisses„/var/www/osTicket“ auf den Benutzer„www-data“ zu ändern und die Standardberechtigung auf„0755“ zu ändern.
sudo chown -R www-data:www-data /var/www/osTicket sudo chmod 755 /var/www/osTicket
Führe abschließend den folgenden Befehl aus, um die osTicket-Konfiguration nach„/var/www/osTicket/upload/include/ost-config.php“ zu kopieren.
mv /var/www/osTicket/upload/include/ost-sampleconfig.php /var/www/osTicket/upload/include/ost-config.php
Einrichten des virtuellen Apache-Hosts
In diesem Abschnitt erstellst du eine neue Apache Virtual Host-Datei für osTicket. Stelle also sicher, dass dein Domainname auf eine Server-IP-Adresse zeigt.
Erstelle eine neue Apache Virtual Host Datei„/etc/apache2/sites-available/osticket.conf“ mit dem folgenden„nano„-Editor.
sudo nano /etc/apache2/sites-available/osticket.conf
Füge die folgende Konfiguration ein und achte darauf, dass du die Option„ServerName“ durch deinen Domainnamen ersetzt.
<VirtualHost *:80> ServerName ticket.howtoforge.local ServerAdmin admin@localhost DocumentRoot /var/www/osTicket/upload <Directory /var/www/osTicket/upload> Require all granted Options FollowSymlinks AllowOverride All </Directory> ErrorLog ${APACHE_LOG_DIR}/osticket.error.log CustomLog ${APACHE_LOG_DIR}/osticket.access.log combined </VirtualHost>
Wenn du fertig bist, speichere die Datei und beende den Editor.
Führe nun den folgenden Befehl aus, um die Datei„osticket.conf“ zu aktivieren und deine Apache-Syntax zu überprüfen. Wenn du eine korrekte Apache-Syntax hast, siehst du die Ausgabe„Syntax ist OK„.
sudo a2ensite osticket.conf sudo apachectl configtest
Zum Schluss führst du den Befehl„systemctl“ aus, um den Apache-Webserver neu zu starten und deine Änderungen zu übernehmen.
sudo systemctl restart apache2
Sicherung von osTicket mit HTTPS
In diesem Abschnitt wirst du die osTicket-Installation mit HTTPS sichern. Dazu installierst und verwendest du Certbot, um SSL/TLS-Zertifikate von letsencrypt zu erzeugen.
Installiere das Plugin „certbot“ und „python3-certbot-apache“ mit dem folgenden „apt“-Befehl.
sudo apt install certbot python3-certbot-apache -y
Nach der Installation führst du den Befehl „certbot“ aus, um SSL/TLS-Zertifikate zu erzeugen und osTicket mit HTTPS zu sichern. Achte darauf, dass du die folgende E-Mail-Adresse und den Domänennamen mit deinen Daten änderst.
sudo certbox --apache --agree-tos --redirect --hsts --staple-ocsp --email kyrie@howtoforge.local -d ticket.howtoforge.local
Wenn du fertig bist, sind deine SSL/TLS-Zertifikate im Verzeichnis „/etc/letsencrypt/live/domain.com“ verfügbar und deine osTicket-Installation sollte mit HTTPS gesichert sein.
Installation von osTicket
Öffne deinen Webbrowser und rufe deinen Domainnamen auf, z.B. https://tiket.howtoforge.local. Wenn alles gut geht, siehst du den osTicket-Installationsassistenten.
Stelle sicher, dass alle Abhängigkeiten für osTicket installiert sind und klicke auf Weiter.
Ändere die grundlegenden Systemeinstellungen, z. B. deinen Domänennamen, gib dann den neuen Admin-Benutzer für osTicket ein und gib die von dir erstellten Datenbankdaten ein.
Wenn die Installation abgeschlossen ist, siehst du die folgende Seite:
Gehe als Nächstes zurück zu deinem Serverterminal und führe den folgenden Befehl aus, um das Verzeichnis „setup“ aus deiner osTicket-Installation zu löschen.
sudo rm -rf /var/www/osTicket/upload/setup
Wenn du jetzt die osTicket-Homepage aufrufst, siehst du die Standardseite wie diese:
Melde dich mit deinem Admin-Benutzer und Passwort bei osTicket an.
Wenn du die richtigen Admin-Zugangsdaten hast, siehst du das folgende osTicket-Administrations-Dashboard.
Fazit
Herzlichen Glückwunsch! Du hast die Installation von osTicket auf dem Ubuntu 24.04 Server abgeschlossen. Du hast osTicket mit dem LAMP-Stack (Linux, Apache, MariaDB und PHP) zum Laufen gebracht und osTicket mit HTTPS über Certbot und let’s encrypt abgesichert.