Zammad wird in den Programmiersprachen Ruby und JavaScript entwickelt. Der Name Zammad kommt aus dem bayerischen Dialekt und bedeutet „zusammen“.
Schritt 1:Stellen Sie sicher, dass Ihr Betriebssystem aktualisiert ist
Es empfiehlt sich immer sicherzustellen, dass das Betriebssystem über die neuesten Pakete verfügt. Verwenden Sie diesen Befehl zum Aktualisieren:
sudo apt update
sudo apt upgrade
Schritt 2:Paketabhängigkeiten installieren
Lassen Sie uns als Nächstes einige der Abhängigkeiten installieren. Sie müssen im System vorhanden sein, damit zukünftige Schritte funktionieren. Verwenden Sie diesen Befehl:
sudo apt install wget curl apt-transport-https gnupg
Damit Zammad richtig funktioniert, muss Ihr System die richtige Sprachumgebung verwenden.
sudo apt install locales
sudo locale-gen en_US.UTF-8
echo "LANG=en_US.UTF-8" | sudo tee /etc/default/locale
Schritt 3:Elasticsearch einrichten
Zammad verwendet Elasticsearch, seine Suchfunktion wird von Elasticsearch unterstützt und erfordert das Plugin „Ingest Attachment“.
Lassen Sie uns Elasticsearch auf dem Server installieren. Importieren Sie zunächst den Elasticsearch-PGP-Schlüssel
Laden Sie den öffentlichen Signaturschlüssel mit diesem Befehl herunter und installieren Sie ihn:
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elasticsearch-keyring.gpg
Richten Sie dann das Repository ein:
echo "deb [signed-by=/usr/share/keyrings/elasticsearch-keyring.gpg] https://artifacts.elastic.co/packages/8.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-8.x.list
Sie können das Elasticsearch-Paket mit diesem Befehl installieren, nachdem Sie die Repositories aktualisiert haben, da wir ein neues Repo hinzugefügt haben:
sudo apt update && sudo apt install elasticsearch
Führen Sie die folgenden Befehle aus, um Elasticsearch so zu konfigurieren, dass es beim Systemstart automatisch gestartet wird:
sudo systemctl daemon-reload sudo systemctl enable elasticsearch
Elasticsearch kann wie folgt gestartet und gestoppt werden:
sudo systemctl start elasticsearch sudo systemctl stop elasticsearch
Stellen Sie mit dem Statusbefehl sicher, dass es ausgeführt wird:
$ sudo systemctl status elasticsearch
● elasticsearch.service - Elasticsearch
Loaded: loaded (/lib/systemd/system/elasticsearch.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2022-03-18 11:06:37 UTC; 3min 3s ago
Docs: https://www.elastic.co
Main PID: 2045 (java)
Tasks: 67 (limit: 4556)
Memory: 2.3G
CGroup: /system.slice/elasticsearch.service
├─2045 /usr/share/elasticsearch/jdk/bin/java -Xshare:auto -Des.networkaddress.cache.ttl=60 -Des.networkaddress.cache.negative.ttl=10 -Djava.security.manager=allow -XX:+AlwaysPreTouch -Xss1m >
└─2335 /usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/bin/controller
Mar 18 11:06:13 axiobrim systemd[1]: Starting Elasticsearch...
Mar 18 11:06:37 axiobrim systemd[1]: Started Elasticsearch.
Kasse So installieren und konfigurieren Sie Elasticsearch unter Ubuntu 20.04.
Schritt 4:Zammad installieren
Endlich können wir Zammad installieren. Fügen Sie zuerst den gpg-Schlüssel
hinzucurl -fsSL https://dl.packager.io/srv/zammad/zammad/key | \
gpg --dearmor | tee /etc/apt/trusted.gpg.d/pkgr-zammad.gpg> /dev/null
Richten Sie dann das Zammad-Repository ein:
echo "deb [signed-by=/etc/apt/trusted.gpg.d/pkgr-zammad.gpg] https://dl.packager.io/srv/deb/zammad/zammad/stable/ubuntu 20.04 main"| \
tee /etc/apt/sources.list.d/zammad.list > /dev/null
Aktualisieren Sie abschließend das Repository und installieren Sie Zammad:
sudo apt update && sudo apt install zammad
Schritt 5:Firewall einrichten
Zammad wird als Webdienst bereitgestellt. Wenn Sie ufw installiert und aktiviert haben, müssen Sie die Ports 80 und 443 für http- und https-Verkehr zulassen. Verwenden Sie diese Befehle:
ufw allow 80 ufw allow 443 ufw reload
Dienste von Zammad verwalten
Im Allgemeinen verwendet Zammad drei Dienste – diese können mit dem übergeordneten zammad
(neu) gestartet und gestoppt werden .
$ # Zammad service to start all services at once $ systemctl (status|start|stop|restart) zammad $ # Zammads internal railsserver $ systemctl (status|start|stop|restart) zammad-web $ # Zammads scheduler - relevant for all delayed- and background jobs $ systemctl (status|start|stop|restart) zammad-worker $ # Zammads websocket server for session related information $ systemctl (status|start|stop|restart) zammad-websocket
Alle Dienste starten
sudo systemctl start zammad
sudo systemctl start zammad-web
sudo systemctl start zammad-worker
sudo systemctl start zammad-websocket
Bestätigen Sie den Dienststatus mit diesem Befehl:
sudo systemctl status zammad
sudo systemctl status zammad-web
sudo systemctl status zammad-worker
sudo systemctl status zammad-websocket
Schritt 6:Webzugriff konfigurieren
Der neueste Zammad-Dienst verwendet nginx, um den Datenverkehr an die Dienste weiterzuleiten. Wenn Sie fqdn (Domänenzugriff) wie zammad.citizix.com
konfigurieren müssen Sie müssen die Nginx-Konfiguration aktualisieren.
Öffnen Sie die Nginx-Einstellungen mit Ihrem Standardeditor
sudo vim /etc/nginx/sites-enabled/zammad.conf
Aktualisieren Sie dann diese Zeile auf Ihren FQDN.
server_name localhost;
So würde es mit zammad.citizix.com
aussehen
server_name zammad.citizix.com;
Navigieren Sie zur Domäne (zammad.citizix.com
) und Sie sollten das System verwenden können.
Wenn Sie Ihre Website mit SSL sichern müssen, sehen Sie sich How to Secure Nginx with Letsencrypt on Ubuntu 20.04 an.