Forutsetninger
Trinn 1: Konfigurer FQDN (fullt kvalifisert domenenavn)
Trinn 2: Installer OpenJDK 8-pakker
Trinn 3: Installer Elasticsearch 5 og mapper-attachments-plugin
Trinn 4: Installer Zammad 2.0
Trinn 5: Konfigurer SELinux og brannmurregler
Trinn 6: Konfigurer det nye Zammad-systemet fra webgrensesnittet
Zammad er et åpen kildekode-helpdesk/billettsystem designet for kundestøtteteam. Med Zammad kan kundeservicerepresentanter enkelt håndtere kundehenvendelser og klager fra ulike kanaler, inkludert web, skjema, e-post, chat, Twitter, Facebook, etc.
Forutsetninger
- En fersk Vultr Ubuntu 16.04 LTS x64-serverforekomst med minst 4 GB minne. Si at IP-adressen er
203.0.113.1, og vertsnavnet er helpdesk.
- Et domene
helpdesk.example.comkonfigurert til å peke til serverforekomsten nevnt ovenfor. Du kan lære mer om dette i en annen Vultr-opplæring .
- En sudo-bruker .
- Serverforekomsten har blitt oppdatert til siste stabile status .
- I et produksjonsmiljø anbefales det å sette opp en byttefil for å optimalisere ytelsen.
Trinn 1: Konfigurer FQDN (fullt kvalifisert domenenavn)
Som kreves av Zammad, må du konfigurere FQDN på serverforekomsten din før du kan eksternt få tilgang til Zammad-siden.
Bruk vitekstredigering for å åpne /etc/hostsfilen.
sudo vi /etc/hosts
Sett inn følgende linje før eventuelle eksisterende linjer.
203.0.113.1 helpdesk.example.com helpdesk
Lagre og avslutt.
:wq!
Bruk hostname -fkommandoen for å bekrefte resultatet, som vil se slik ut.
helpdesk.example.com
Trinn 2: Installer OpenJDK 8-pakker
Som kreves av Zammad, må du installere Java på serverforekomsten din før du kan installere og kjøre Zammad.
Installer den siste stabile versjonen av OpenJDK 8.
sudo apt install -y openjdk-8-jdk
Etter å ha installert OpenJDK 8, kan du bekrefte resultatet.
java -version
Utgangen vil se slik ut.
openjdk version "1.8.0_131"
OpenJDK Runtime Environment (build 1.8.0_131-8u131-b11-2ubuntu1.16.04.3-b11)
OpenJDK 64-Bit Server VM (build 25.131-b11, mixed mode)
Til slutt setter du opp JAVA_HOMEmiljøvariabelen.
echo "JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::")" | sudo tee -a /etc/profile
source /etc/profile
Trinn 3: Installer Elasticsearch 5 og mapper-attachments-plugin
Zammad bruker Elasticsearch for å tilby søkefunksjonen. På Ubuntu 16.04 kan du installere den siste stabile versjonen av Elasticsearch 5 ved å bruke den offisielle Elasticsearch DEB-repoen som nedenfor.
Først, last ned og installer den offentlige signeringsnøkkelen Elasticsearch 5.
sudo apt install -y wget
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
Installer deretter apt-transport-httpspakken.
sudo apt install -y apt-transport-https
Lagre depotdefinisjonen til /etc/apt/sources.list.d/elastic-5.x.list.
echo "deb https://artifacts.elastic.co/packages/5.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-5.x.list
Deretter installerer du Elasticsearch 5.x med APT.
sudo apt update -y
sudo apt install -y elasticsearch
Til slutt, start Elasticsearch-tjenesten og få den til å starte automatisk ved oppstartstid.
sudo systemctl daemon-reload
sudo systemctl start elasticsearch.service
sudo systemctl enable elasticsearch.service
I tillegg, for å tillate Elasticsearch å indeksere filvedlegg, må du installere Elasticsearch- mapper-attachmentsplugin som følger.
sudo /usr/share/elasticsearch/bin/elasticsearch-plugin install mapper-attachments
Når du blir bedt om å godkjenne ytterligere tillatelser, skriv " Y" og trykk deretter på " Enter" for å fullføre installasjonen.
Start Elasticsearch-tjenesten på nytt for å laste den nye plugin-en.
sudo systemctl restart elasticsearch.service
Trinn 4: Installer Zammad 2.0
For å lette installasjonsprosessen kan du bruke den offisielle Zammad DEB-repoen til å installere Zammad sammen med ulike avhengigheter, inkludert Nginx, PostgreSQL og mer, alt på samme tid.
Først av alt, sørg for at serverforekomsten bruker en UTF-8lokalitet, ellers kan ikke PostgreSQL installeres.
locale
Hvis du finner andre lokale innstillinger enn en_US.UTF-8, må du bytte til den lokaliteten som følger.
sudo apt install -y locales
sudo locale-gen en_US.UTF-8
echo "LANG=en_US.UTF-8" | sudo tee /etc/default/locale
Etter å ha sikret at lokaliteten er riktig, last ned den offisielle Zammad DEB-repoen.
wget -qO- https://dl.packager.io/srv/zammad/zammad/key | sudo apt-key add -
sudo wget -O /etc/apt/sources.list.d/zammad.list https://dl.packager.io/srv/zammad/zammad/stable/installer/ubuntu/16.04.repo
Installer Zammad og alle nødvendige avhengigheter ved å bruke APT.
sudo apt update -y
sudo apt install -y zammad
Når Zammad er installert, starter Zammad-tjenesten automatisk. Du kan bruke følgende kommando for å bekrefte Zammad-tjenestens status.
sudo systemctl status zammad.service
Statusen vil være active (running).
Deretter bruker du følgende kommandoer for å få Zammad til å fungere med Elasticsearch og gjenoppbygge indeksen.
sudo zammad run rails r "Setting.set('es_url', 'http://localhost:9200')"
sudo zammad run rake searchindex:rebuild
Legg til ekstra Elasticsearch-indeksnavnrom (valgfritt).
sudo zammad run rails r "Setting.set('es_index', Socket.gethostname + '_zammad')"
Ignorer vanlige binære filtyper (valgfritt).
sudo zammad run rails r "Setting.set('es_attachment_ignore', [ '.png', '.jpg', '.jpeg', '.mpeg', '.mpg', '.mov', '.bin', '.exe', '.box', '.mbox' ] )"
Still inn maks størrelse på vedlegg (valgfritt).
sudo zammad run rails r "Setting.set('es_attachment_max_size_in_mb', 50)"
For å gi brukere ekstern tilgang til Zammad, må du endre Zammad Nginx-konfigurasjonsfilen.
sudo vi /etc/nginx/sites-available/zammad.conf
Finn linjen.
server_name localhost;
Erstatt localhostmed FQDN for serverforekomsten din.
server_name helpdesk.example.com;
Lagre og avslutt.
:wq!
Til slutt, start Nginx-tjenesten på nytt for å bruke endringene dine.
sudo systemctl restart nginx.service
Trinn 5: Konfigurer SELinux og brannmurregler
Bruk følgende kommandoer for å bestemme statusen til SELinux på serverforekomsten din.
sudo apt install -y policycoreutils
sestatus
Hvis SELinux er aktivert i enforcingmodusen på maskinen din, må du endre en SELinux-regel som følger.
sudo apt install -y selinux selinux-basics selinux-utils selinux-policy-ubuntu setools
sudo setsebool httpd_can_network_connect on -P
Hvis SELinux er disabledeller aktivert i permissivemodusen, ignorer modifikasjonene ovenfor og gå videre.
Du må også endre UFW-brannmurregler som følger.
sudo ufw app list
sudo ufw allow OpenSSH
sudo ufw allow in "Nginx Full"
sudo ufw enable
Trinn 6: Konfigurer det nye Zammad-systemet fra webgrensesnittet
Pek på favorittnettleseren din til http://helpdesk.example.com, og så kommer du inn på Zammad getting startedsiden.
Klikk på Setup new systemknappen for å gå videre.
I Administrator Accountvinduet skriver du inn administratorens fornavn, etternavn, e-post og passord (to ganger), og klikk deretter på Createknappen.
Skriv inn Organizationorganisasjonsnavnet og system-URLen i vinduet, http://helpdesk.example.comlast opp logoen din (hvis noen), og klikk deretter på Nextknappen.
I Email Notificationvinduet velger du en riktig metode for e-postsending, og klikker deretter på Continueknappen.
I Connect Channelsvinduet klikker du på Skipknappen for å fullføre det første oppsettet. Alle kanaler kan tilpasses senere.
Det er alt for å sette opp et operativt Zammad-billettsystem. Utforsk gjerne Zammad-grensesnittet og inviter kundeservicerepresentanter. Takk for at du leste.