So richten Sie das Zammad Ticketing System unter Ubuntu 16.04 ein

Zammad ist ein Open-Source-Helpdesk-/Kundensupportsystem, das in Ruby geschrieben wurde. Es handelt sich um ein webbasiertes Ticketing-System mit vielen Funktionen, einschließlich der Unterstützung zur Verwaltung der Kundenkommunikation über mehrere Kanäle wie Facebook, Telegramm, Chat und E-Mails. Zammad wird unter der GNU AFFERO General Public License (AGPL) vertrieben und kann auf verschiedenen Plattformen wie Linux, AIX, FreeBSD, OpenBSD und MacOSX installiert werden. Es ist auf Github verfügbar und kann kostenlos auf dem eigenen Server installiert werden.

In diesem Tutorial zeigen wir Ihnen, wie Sie das Zammad Ticketing System mit dem Nginx Webserver und PostgreSQL für das Datenbanksystem installieren und konfigurieren. Das Betriebssystem wird Ubuntu 16.04 Xenial Xerus sein, und wir werden SSL Letsencrypt verwenden, um Client-Server-Verbindungen zu sichern.

Was wir tun werden

  1. Konfigurieren von Sprachumgebungen unter Ubuntu 16.04
  2. Zammad Ticketing System installieren
  3. Installation und Konfiguration von SSL Letsencrypt
  4. Nginx HTTPS konfigurieren
  5. Zammad-Konfiguration
  6. Zusätzliche Tipps

Voraussetzungen

  • Ubuntu 16.04.
  • RAM: 2GB oder mehr
  • Root-Rechte

Schritt 1 – Konfigurieren von Gebietsschemata

Für die Installation der PostgreSQL-Datenbank müssen wir unser Gebietsschema-System auf’UTF-8′ einstellen. Installieren Sie Sprachumgebungen im System mit dem folgenden apt-Befehl.

apt install locales

Erzeugen Sie ein neues’UTF-8′ Gebietsschema und machen Sie es zum Standard-Locale auf dem System.

locale-gen en_US.UTF-8
echo 'LANG=en_US.UTF-8' > /etc/default/locale

Locale einstellen

Überprüfen Sie anschließend die Gebietsschemaeinstellungen mit dem folgenden Befehl.

locale

Und Sie sollten das aktuell verwendete System-Locale als ‚UTF-8‘ verwenden.

Überprüfen Sie das System-Locale

Schritt 2 – Installation des Zammad Ticketing Systems

Zammad kann auf zwei Arten installiert werden: manuelle Installation aus Quellen oder Installation aus den Repository-Paketen. In diesem Tutorial werden wir Zammad aus dem Repository installieren.

Fügen Sie dem System einen neuen Zammad-Schlüssel und ein neues Repository hinzu.

wget -qO - https://deb.packager.io/key | sudo apt-key add -
echo "deb https://deb.packager.io/gh/zammad/zammad xenial stable" | sudo tee /etc/apt/sources.list.d/zammad.list

Aktualisieren Sie das Repository und installieren Sie Zammad mit dem Befehl apt, wie unten gezeigt.

sudo apt update
sudo apt install zammad

Zammad herunterladen

Hinweis:

Zammad installiert automatisch andere erforderliche Pakete, einschließlich Nginx-Webserver und PostgreSQL-Datenbank.

Und wenn Sie mit der Installation fertig sind, sehen Sie ein Ergebnis, das dem im folgenden Screenshot entspricht.

Start zammad

Zammad wurde zusammen mit anderen benötigten Paketen auf dem System installiert.

Schritt 3 – Installation und Konfiguration von SSL Letsencrypt

In diesem Tutorial werden wir Zammad so konfigurieren, dass es HTTPS für sichere Verbindungen zwischen Client und Server verwendet. Wir werden kostenloses SSL aus dem Letsencrypt verwenden, und es kann mit dem letsencrypt-Tool konfiguriert werden.

Installieren Sie das letsencrypt-Tool aus dem offiziellen Repository mit dem Befehl apt.

apt install letsencrypt

Das Letsencrypt-Tool wurde installiert. Gehen Sie nun in das Nginx-Konfigurationsverzeichnis ‚/etc/nginx/‘ und bearbeiten Sie die standardmäßige virtuelle Hostdatei.

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

Fügen Sie die Konfiguration unten im Abschnitt „Server {..}“ ein.

        location ~ /.well-known {
                 allow all;
         }

Das ist es. Das ist es. Speichern Sie die Änderungen und starten Sie nginx neu.

systemctl restart nginx

Als nächstes erstellen Sie ein neues SSL-Zertifikat für Ihren eigenen Domainnamen mit dem Befehl letsencrypt unten.

letsencrypt certonly --standalone -d zammad.hakase-labs.co

Sie werden nach der Benachrichtigung zur E-Mail-Verlängerung gefragt, geben Sie Ihre E-Mail-Adresse ein.

Richten Sie Ihre E-Mail-Adresse für das SSL-Zertifikat ein.

Und es wird auch nach dem Letsencrypt Term of Service (TOS) gefragt, wählen Sie’Zustimmen‘ und drücken Sie die Eingabetaste.

AGBs akzeptieren

Sie werden ein ähnliches Ergebnis wie unten gezeigt sehen, nachdem das SSL-Zertifikat erstellt wurde.

SSL-Zertifikat erstellen

Alle Zertifikatsdateien sind im Verzeichnis ‚/etc/letsencrypt/live/‘ verfügbar, und es wurden neue SSL-Zertifikatsdateien für Zammad generiert.

Schritt 4 – Nginx für Zammad konfigurieren

Der Nginx-Webserver wird während des Zammad-Installationsprozesses automatisch installiert. Es gibt eine virtuelle Host-Konfiguration für Zammad, die im Verzeichnis’/etc/nginx/sites-available‘ verfügbar ist.

In diesem Schritt müssen wir die virtuelle Hostdatei zammad’zammad.conf‘ bearbeiten, um die SSL-Konfiguration zu implementieren.

Gehen Sie in das Verzeichnis „sites-available“ und bearbeiten Sie die Datei „zammad.conf“ mit vim.

cd /etc/nginx/sites-available/
vim zammad.conf

Löschen Sie alle Zeilen und fügen Sie die Konfiguration unten ein.

#
 # this is the nginx config for zammad
 #
upstream zammad {
server localhost:3000;
}

upstream zammad-websocket {
server localhost:6042;
}

# Added - Automatically redirect HTTP to HTTPS Nginx
server {
listen 80;
server_name zammad.irsyadf.me;
return 301 https://$host$request_uri;
}

# Added - HTTPS configuration for Zammad
server {
listen 443 http2 ssl;

ssl_certificate /etc/letsencrypt/live/zammad.irsyadf.me/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/zammad.irsyadf.me/privkey.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
ssl_ecdh_curve secp384r1;
ssl_session_cache shared:SSL:10m;
ssl_session_tickets off;
ssl_stapling on;
ssl_stapling_verify on;
resolver 8.8.8.8 8.8.4.4 valid=300s;
resolver_timeout 5s;
add_header Strict-Transport-Security "max-age=63072000; includeSubdomains";
add_header X-Frame-Options DENY;
add_header X-Content-Type-Options nosniff;

# replace 'localhost' with your fqdn/domain name if you want to use zammad from remote
server_name zammad.irsyadf.me;

root /opt/zammad/public;

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

client_max_body_size 50M;

location ~ ^/(assets/|robots.txt|humans.txt|favicon.ico) {
expires max;
}

location /ws {
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header CLIENT_IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_read_timeout 86400;
proxy_pass http://zammad-websocket;
}

location / {
proxy_set_header Host $http_host;
proxy_set_header CLIENT_IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_read_timeout 180;
proxy_pass http://zammad;

gzip on;
gzip_types text/plain text/xml text/css image/svg+xml application/javascript application/x-javascript application/json application/xml;
gzip_proxied any;
}
}

Speichern Sie die Änderungen und verlassen Sie den Editor.

Der virtuelle Host von Zammad ist also mit SSL aktiviert. Testen Sie nun die Konfiguration und stellen Sie sicher, dass kein Fehler vorliegt. Starten Sie dann den nginx-Webserver neu.

nginx -t
systemctl restart nginx

Der virtuelle Host von Zammad verwendet nun die SSL-Konfiguration.

Schritt 5 – Zammad-Konfiguration

Zammad und andere Pakete wie Nginx und PostgreSQL sind installiert, und auch die Konfiguration des virtuellen Hosts ist abgeschlossen. Jetzt müssen wir die Installation und Konfiguration von Zammad über den Webbrowser durchführen.

Öffnen Sie Ihren Webbrowser und geben Sie die Zammad-URL’zammad.hakase-labs.co‘ ein. Sie werden automatisch zur HTTPS-Verbindung weitergeleitet.

Klicken Sie auf ‚Neues System einrichten‚.

Zammad Einrichtungsassistent

Die nächste Seite ist für die Admin-Konfiguration. Geben Sie hier Details wie Admin-Benutzer, E-Mail und Passwort ein. Klicken Sie dann auf‘Erstellen‚.

Melden Sie sich als Administrator an

Geben Sie für den Unternehmensnamen Ihren Unternehmensnamen „Hakase-labs Inc“ ein und klicken Sie auf „Weiter“.

Geben Sie Ihre Organisation ein

Klicken Sie zur E-Mail-Konfiguration auf „Weiter„. Wir können die Konfiguration der E-Mail-Benachrichtigung über die Einstellungsseite vornehmen.

E-Mail-Benachrichtigung

Klicken Sie anschließend im Fenster Channel configuration auf „Skip„.

Kanäle verbinden

Und jetzt sehen Sie das Zammad Admin Dashboard mit schöner Benutzeroberfläche.

Zammad Admin Dashboard

Zammad wurde installiert und HTTPS ist aktiviert. Es wird mit Nginx als Webserver und PostgreSQL als Datenbank unter Linux Ubuntu 16.04 installiert.

Schritt 6 – Zusätzliche Tipps

Zammad besteht aus drei Komponenten, darunter einem Webanwendungsserver, einem Arbeitsprozess und einem Websocket-Server. Wir können alle Dienste mit dem Befehl systemcl unten verwalten.

systemctl start zammad
systemctl status zammad
systemctl restart zammad

Wenn Sie einzelne Dienste konfigurieren möchten, können Sie bestimmte Befehle verwenden, wie unten gezeigt.

systemctl status zammad-web
systemctl status zammad-worker
systemctl status zammad-websocket

Die Zammad-Installation auf Ubuntu 16.04 Xenial Xerus ist abgeschlossen.

Referenz

Das könnte Dich auch interessieren …