Zammad è sviluppato nei linguaggi di programmazione Ruby e JavaScript. Il nome Zammad deriva dal dialetto bavarese e significa “insieme”.
Passaggio 1:assicurati che il tuo sistema operativo sia aggiornato
È sempre buona norma assicurarsi che il sistema operativo disponga dei pacchetti più recenti. Usa questo comando per aggiornare:
sudo apt update
sudo apt upgradeFase 2:installa le dipendenze del pacchetto
Quindi, installiamo alcune delle dipendenze. Devono essere presenti nel sistema affinché i passaggi futuri funzionino. Usa questo comando:
sudo apt install wget curl apt-transport-https gnupgAffinché Zammad funzioni correttamente, il tuo sistema deve utilizzare l'ambiente linguistico corretto.
sudo apt install locales
sudo locale-gen en_US.UTF-8
echo "LANG=en_US.UTF-8" | sudo tee /etc/default/localeFase 3:imposta elasticsearch
Zammad utilizza elasticsearch, la sua funzione di ricerca è supportata da Elasticsearch e richiede il plugin di importazione degli allegati.
Installiamo elasticsearch sul server. Innanzitutto, importa la chiave PGP di Elasticsearch
Scarica e installa la chiave di firma pubblica utilizzando questo comando:
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elasticsearch-keyring.gpgQuindi imposta il repository:
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.listPuoi installare il pacchetto Elasticsearch con questo comando dopo aver aggiornato i repository perché abbiamo aggiunto un nuovo repository:
sudo apt update && sudo apt install elasticsearch
Per configurare Elasticsearch per l'avvio automatico all'avvio del sistema, eseguire i seguenti comandi:
sudo systemctl daemon-reload sudo systemctl enable elasticsearch
Elasticsearch può essere avviato e interrotto come segue:
sudo systemctl start elasticsearch sudo systemctl stop elasticsearch
Assicurati che sia in esecuzione utilizzando il comando di stato:
$ 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.Scopri Come installare e configurare Elasticsearch su Ubuntu 20.04.
Fase 4:installa Zammad
Possiamo finalmente installare Zammad. Per prima cosa aggiungi la chiave gpg
curl -fsSL https://dl.packager.io/srv/zammad/zammad/key | \
  gpg --dearmor | tee /etc/apt/trusted.gpg.d/pkgr-zammad.gpg> /dev/nullQuindi imposta il repository zammad:
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/nullInfine aggiorna il repository e installa zammad:
sudo apt update && sudo apt install zammadPassaggio 5:configurazione del firewall
Zammad sarà esposto come servizio web. Se hai installato e abilitato ufw, dovrai consentire le porte 80 e 443 per il traffico http e https. Usa questi comandi:
ufw allow 80 ufw allow 443 ufw reload
Gestire i servizi di Zammad
 In generale Zammad utilizza tre servizi:questi possono essere (ri)avviati e arrestati con il genitore zammad .
$ # 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
Avvio di tutti i servizi
sudo systemctl start zammad
sudo systemctl start zammad-web
sudo systemctl start zammad-worker
sudo systemctl start zammad-websocketConferma lo stato del servizio utilizzando questo comando:
sudo systemctl status zammad
sudo systemctl status zammad-web
sudo systemctl status zammad-worker
sudo systemctl status zammad-websocketFase 6:configurazione dell'accesso al Web
 L'ultimo servizio zammad utilizza nginx per inviare il traffico ai servizi tramite proxy. Se devi configurare fqdn (accesso al dominio) come zammad.citizix.com dovrai aggiornare la configurazione di nginx.
Apri le impostazioni di nginx con il tuo editor predefinito
sudo vim /etc/nginx/sites-enabled/zammad.confQuindi aggiorna questa riga al tuo fqdn.
server_name localhost;
 Ecco come sarebbe con zammad.citizix.com 
server_name zammad.citizix.com;
 Naviga nel dominio (zammad.citizix.com ) e dovresti essere in grado di utilizzare il sistema.
Se hai bisogno di proteggere il tuo sito con SSL dai un'occhiata a Come proteggere Nginx con Letsencrypt su Ubuntu 20.04.