Installation von osTicket mit Nginx auf Ubuntu
osTicket ist ein in PHP geschriebenes Open-Source-Ticketing-System auf der Linux-Plattform. Es unterstützt verschiedene Arten von Datenbanken wie MySQL, PostgreSQL und kann mit LDAP/Active Directory zur zentralen Authentifizierung integriert werden.
Es ist eine einfache und leichtgewichtige webbasierte Anwendung. Mit OsTicket können Sie Ihre Supportanfrage verwalten, organisieren und archivieren. Es leitet Anfragen, die über E-Mail, Web-Formulare und Telefonanrufe erstellt wurden, nahtlos in eine einfache, benutzerfreundliche, webbasierte Mehrbenutzer-Plattform für den Kundensupport weiter.
In diesem Tutorial zeige ich Ihnen, wie Sie osTicket auf Ubuntu 18.04 installieren, wobei Nginx als Webserver, MySQL/MariaDB als Datenbankserver und PHP verwendet wird.
Voraussetzungen
- Ubuntu 18.04
- Ein sudo-Benutzer mit Root-Privilegien.
Schritt 1: Erste Schritte
Melden Sie sich zunächst mit sudo-Rechten an Ihrem Server an und aktualisieren Sie das System mit der neuesten stabilen Version mit dem folgenden Befehl:
sudo apt update && sudo apt upgrade -y
Schritt 2: LEMP-Server installieren
OsTicket setzt voraus, dass Webserver, PHP und Datenbankserver auf Ihrem Server installiert sind.
Nginx Webserver installieren
Sie können den Nginx Webserver mit folgendem Befehl installieren:
sudo apt install nginx -y
Nun überprüfen wir den Nginx-Dienst und Um den Dienst manuell zu starten, führen Sie die folgenden Befehle aus:
sudo systemctl status nginx sudo systemctl start nginx
Nun aktivieren Sie den nginx-Dienst, um zur Bootzeit zu starten, indem Sie den folgenden Befehl ausführen:
sudo systemctl enable nginx
PHP und PHP-FPM installieren
Als nächstes müssen Sie PHP, PHP-FPM und einige zusätzliche PHP-Module installieren, die für die korrekte Ausführung von OsTicket erforderlich sind:
sudo apt install php php-mysql php-cgi php-fpm php-cli php-curl php-gd php-imap php-mbstring php-xml-util php-intl php-apcu php-common php-gettext php-bcmath
Der obige Befehl installiert php-7.2
Nun editieren Sie die php.ini Datei, indem Sie folgenden Befehl im Terminal ausführen.
sudo vim /etc/php/7.2/fpm/php.ini
Die cgi.fix_pathinfo-Variable auskommentieren und ihren Wert auf 0 ändern.
cgi.fix_pathinfo=0
Nun speichern und schließen Sie die Datei.
Als nächstes starten Sie den php7.2-fpm-Dienst neu und aktivieren ihn beim Start mit dem folgenden Befehl:
sudo systemctl restart php7.2-fpm sudo systemctl enable php7.2-fpm
Installieren und Konfigurieren des MySQL Datenbankservers für OsTicket
Geben Sie von Ihrem Terminalfenster aus den folgenden Befehl ein, um den MySQL-Datenbankserver zu installieren.
sudo apt install mysql-server
Starten Sie nun den MySQL-Dienst und aktivieren Sie ihn, damit er zur Bootzeit startet, und überprüfen Sie den Status des MySQL-Dienstes mit folgendem Befehl:-
sudo systemctl start mysql sudo systemctl enable mysql sudo systemctl status mysql
Als n?chstes sichern Sie die MySQL-Installation mit dem folgenden Befehl:
sudo mysql_secure_installation
Beantworten Sie alle Fragen wie unten beschrieben:
Set root password? [Y/n] Y New password: Re-enter new password: Remove anonymous users? [Y/n] Y Disallow root login remotely? [Y/n] Y Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y
Als nächstes melden Sie sich an der MySQL-Konsole an, wie unten gezeigt:
sudo mysql -u root -p
Geben Sie hier Ihr Root-Passwort ein.
Nun müssen Sie die Datenbank für osTicket erstellen
run following command
mysql> create database osticket_db;
mysql> grant all privileges on osticket_db.* to osticket_user identified by ‚OsTicketPassw0rd@19‘;
mysql> flush privileges;
Es wurde eine Datenbank für osTicket erstellt.
Schritt 3: osTicket herunterladen und konfigurieren
Erstellen Sie ein neues Verzeichnis für osTicket und gehen Sie dann in dieses Verzeichnis.
sudo mkdir -p /var/www/osticket/ cd /var/www/osticket/
Als nächstes laden Sie das aktuelle osTicket-Setup mit wget herunter und extrahieren es mit folgendem Befehl:-
sudo apt-get install wget unzip sudo wget https://github.com/osTicket/osTicket/releases/download/v1.14.1/osTicket-v1.14.1.zip sudo unzip osTicket-v1.14.1.zip
Sie erhalten Skripte und Upload-Verzeichnis nach dem Entpacken.
Als nächstes erstellen Sie eine osTicket-Konfigurationsdatei aus der Datei ost-sampleconfig.php mit folgendem Befehl:
sudo su - cd upload/ cp ost-sampleconfig.php ost-config.php
Als nächstes müssen Sie den Besitzer des osTicket-Webverzeichnisses auf den Benutzer und die Gruppe ‚www-data‘ ändern.
sudo chown -R www-data:www-data /var/www/osticket/
Schritt 4 – OsTicket Virtual Host erstellen
Erstellen Sie nun eine neue virtuelle Host-Konfiguration für OsTicket, indem Sie folgenden Befehl ausführen:
sudo vim /etc/nginx/sites-available/osticket.conf
Fügen Sie die Konfiguration wie unten beschrieben ein:
server { listen 80; server_name 13.52.217.10; ## change server_name as per your domain name. root /var/www/osticket/upload;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
index index.php index.html index.htm;
# Enable gzip
gzip on;
gzip_min_length 1000;
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.2-fpm.sock;
}
}
Hier müssen Sie server_name 13.52.217.10 gemäß Ihrem Domainnamen ändern.
Speichern Sie die Nginx-Konfigurationsdatei und beenden Sie diese.
Aktivieren Sie nun den virtuellen Host und testen Sie die Konfiguration.
ln -s /etc/nginx/sites-available/osticket.conf /etc/nginx/sites-enabled/
nginx -t
Die Ausgabe wird wie folgt angezeigt
Jetzt den nginx-Dienst neu starten
sudo systemctl restart nginx
Schritt 5: osTicket installieren und konfigurieren
Nun geben wir Ihren Domainnamen ein, um osTicket UI in jedem Webbrowser zu erhalten, Sie sehen eine Seite wie unten:
Weiter Klicken Sie auf ‚Weiter‚ und Sie werden zur osTicket-Konfigurationsseite weitergeleitet.
Füllen Sie alle erforderlichen Informationen aus und klicken Sie auf die Schaltfläche „Jetzt installieren“.
In den Datenbankeinstellungen geben Sie Details wie dbname, Benutzername und Passwort ein, die Sie während der Einrichtung von mysql erstellt haben.
Klicken Sie schließlich auf die Schaltfläche Jetzt installieren, wenn die Installation abgeschlossen ist, wird ein Screenshot wie unten gezeigt:
Als nächstes ändern Sie die Berechtigung der ost-config.php, um den Schreibzugriff zu entfernen, indem Sie den folgenden Befehl ausführen:
cd /var/www/osticket/upload/ chmod 0644 include/ost-config.php
Geben Sie für den osTicket-Admin Ihre IP/Domain im Webbrowser ein:
Für Admin-Login/Agent-Panel/Admin-Panel-Konfigurationstyp wie folgt.
- osTicket Admin Anmeldung – http://yourdomainname/scp/
- osTicket-Agent-Panel – http://yourdomainname/scp/index.php
- osTicket Admin Panel Konfiguration – http://yourdomainname/scp/settings.php
Schließlich haben Sie osTicket erfolgreich auf dem Ubuntu 18.04 Server installiert.