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
- Konfigurieren von Sprachumgebungen unter Ubuntu 16.04
- Zammad Ticketing System installieren
- Installation und Konfiguration von SSL Letsencrypt
- Nginx HTTPS konfigurieren
- Zammad-Konfiguration
- 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
Überprüfen Sie anschließend die Gebietsschemaeinstellungen mit dem folgenden Befehl.
locale
Und Sie sollten das aktuell verwendete System-Locale als ‚UTF-8‘ verwenden.
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
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.
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.
Und es wird auch nach dem Letsencrypt Term of Service (TOS) gefragt, wählen Sie’Zustimmen‘ und drücken Sie die Eingabetaste.
Sie werden ein ähnliches Ergebnis wie unten gezeigt sehen, nachdem das SSL-Zertifikat erstellt wurde.
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‚.
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‚.
Geben Sie für den Unternehmensnamen Ihren Unternehmensnamen „Hakase-labs Inc“ ein und klicken Sie auf „Weiter“.
Klicken Sie zur E-Mail-Konfiguration auf „Weiter„. Wir können die Konfiguration der E-Mail-Benachrichtigung über die Einstellungsseite vornehmen.
Klicken Sie anschließend im Fenster Channel configuration auf „Skip„.
Und jetzt sehen Sie das Zammad Admin Dashboard mit schöner Benutzeroberfläche.
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.