GNU/Linux >> Znalost Linux >  >> Cent OS

Jak nainstalovat systém jízdenek Zammad na CentOS 7

Zammad je open source helpdesk/systém podpory zákazníků napsaný v Ruby. Je to webový systém prodeje vstupenek s mnoha funkcemi, včetně podpory pro správu zákaznické komunikace přes několik kanálů, jako je Facebook, telegram, chat a e-maily. Zammad je distribuován pod GNU AFFERO General public License (AGPL) a lze jej nainstalovat na různé platformy jako Linux, AIX, FreeBSD, OpenBSD a MacOSX. Je k dispozici na Github a je zdarma k instalaci na váš vlastní server.

V tomto tutoriálu vám ukážu, jak nainstalovat a nakonfigurovat systém lístků Zammad pomocí webového serveru Nginx a PostgreSQL pro databázový systém. K zabezpečení spojení klient-server budeme používat server CentOS 7 a SSL Letsencrypt.

Co uděláme

  1. Nainstalujte systém prodeje vstupenek Zammad
  2. Nainstalujte a nakonfigurujte Letsencrypt
  3. Nakonfigurujte webový server Nginx
  4. Konfigurace Zammad
  5. Další tipy pro Zammada

Předpoklady

  • Systém CentOS 7
  • Alespoň 2 GB RAM
  • Kořenová oprávnění

Krok 1 – Instalace systému lístků Zammad

Před instalací systému lístků Zammad na CentOS 7 musíme nainstalovat úložiště EPEL (Extra Packages for Enterprise Linux) pro instalaci našeho webového serveru Nginx.

Přidejte úložiště EPEL instalací balíčku epel pomocí následujícího příkazu yum.

sudo yum -y install epel-release

Do systému bylo přidáno úložiště EPEL.

Dále importujte klíč Zammad pomocí příkazu rpm import.

sudo rpm --import https://rpm.packager.io/key

Přidejte úložiště Zammad vytvořením nového souboru .repo v adresáři 'yum.repos.d' pomocí editoru vim.

vim /etc/yum.repos.d/zammad.repo

Vložte následující informace.

[zammad]
name=Repository for zammad/zammad application.
baseurl=https://rpm.packager.io/gh/zammad/zammad/centos7/stable
enabled=1

A je to. Uložte a ukončete.

Nyní nainstalujte Zammad pomocí následujícího příkazu yum.

sudo yum -y install zammad

Poznámka: Když instalujeme Zammad, automaticky nainstaluje další požadované balíčky, včetně webového serveru Nginx a databáze PostgreSQL.

A po dokončení instalace uvidíte výsledek podobný tomu, který je zobrazen níže.

Zammad a další balíčky – webový server Nginx a databáze PostgreSQL – byly nainstalovány.

Krok 2 – Instalace a konfigurace Letsencrypt SSL

V tomto tutoriálu chceme nastavit Zammad pod Nginx HTTPS a pomocí bezplatného SSL z Letsencrypt. A to uděláme v tomto kroku a použijeme nástroj certbot (Agent Letsencrypt), který lze nainstalovat z úložiště.

Nainstalujte nástroj balíčku certbot z úložiště pomocí yum.

yum -y install certbot

Dále musíme pomocí nástroje certbot vygenerovat nové certifikáty SSL. Ujistěte se, že máte vlastní doménu pro generování souborů certifikátů. Použijeme název domény 'zammad.hakase-labs.com'.

Přejděte do konfiguračního adresáře Nginx a otevřete soubor nginx.conf v editoru vim.

cd /etc/nginx/
vim nginx.conf

Vložte následující konfiguraci pod 'server{} ' block.

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

Uložit a odejít. Poté otestujte konfiguraci a restartujte webový server.

nginx -t
systemctl restart nginx

Před generováním souborů certifikátu SSL se ujistěte, že váš systémový port pro HTTP a HTTPS není blokován bránou firewall. Porty HTTP a HTTPS na CentOS můžete otevřít pomocí příkazu firewall-cmd, jak je uvedeno níže.

firewall-cmd --permanent --add-service=https
firewall-cmd --reload

Nyní vygenerujte soubory certifikátu SSL pomocí následujícího příkazu certbot.

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

Budete dotázáni na vaši e-mailovou adresu pro upozornění na obnovení – zadejte svou e-mailovou adresu a stiskněte 'Enter ' pokračovat. Pro Letsencrypt Term Of Services (TOS) zadejte „A ' souhlasit. Podobně, když budete požádáni o sdílení e-mailu s EFF Foundation, stačí napsat „N ' pro ne.

Po dokončení příkazu certbot uvidíte výsledek, jak je uvedeno níže.

Byly vygenerovány nové soubory certifikátu SSL pro naši instalaci Zammad. Všechny certifikáty jsou v '/etc/letsencryp/live/ ' adresář.

Krok 3 – Konfigurace webového serveru Nginx

V tomto kroku nakonfigurujeme soubor virtuálního hostitele pro Zammad. Je automaticky vytvořen v adresáři '/etc/nginx/conf.d/' během instalace zammad.

Přejděte na '/etc/nginx/conf.d /' a upravte soubor zammad.conf soubor.

cd /etc/nginx/conf.d/
vim zammad.conf

Změňte veškerou konfiguraci, jak je uvedeno níže.

#
# this is the Nginx config for zammad
#

upstream zammad {
    server localhost:3000;
}

upstream zammad-websocket {
    server localhost:6042;
}

server {
    listen 80;
    server_name zammad.hakase-labs.co;
    return 301 https://$host$request_uri;
}

server {
    listen 443 http2 ssl;

    ssl_certificate /etc/letsencrypt/live/zammad.hakase-labs.co/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/zammad.hakase-labs.co/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 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;
    }
}

Uložte a ukončete.

Dále otestujte konfiguraci Nginx a ujistěte se, že nedošlo k chybě. Poté restartujte webový server.

nginx -t
systemctl restart nginx

Soubor virtuálního hostitele zammad nyní používá SSL. Zkontrolujte pomocí příkazu netstat a ujistěte se, že máte port 443 pro HTTPS se stavem 'LISTEN '.

netstat -plntu

Krok 4 – Konfigurace Zammad

Zammad byl nainstalován na CentOS 7 s Nginx jako webovým serverem a PostgreSQL jako databázovým serverem a běží pod připojením HTTPS. V tomto kroku provedeme základní konfiguraci Zammad Ticketing System.

Otevřete webový prohlížeč a zadejte adresu zammad 'zammad.hakase-labs.co'. Budete přesměrováni na připojení HTTPS. Klikněte na tlačítko Nastavit nový systém ' pro pokračování.

Nyní vyplňte veškerou konfiguraci správce. Uživatelské jméno, e-mailová adresa a heslo a poté klikněte na 'Vytvořit '.

Jako název organizace zadejte název své společnosti a klikněte na tlačítko Další '.

Chcete-li upozornění e-mailem, klikněte na 'Pokračovat '.

Konfiguraci upozornění e-mailem můžeme provést na stránce nastavení.

Pro konfiguraci kanálu klikněte na 'Přeskočit '.

A nyní vidíte ovládací panel správce Zammad s krásným uživatelským rozhraním.

Zammad byl nainstalován s povoleným HTTPS a konfigurace byla dokončena.

Krok 5 – Povolte služby Zammad

Zammad se dodává se třemi komponentami – webovým aplikačním serverem, pracovním procesem Zammad a serverem websocket. Všechny služby můžeme spravovat pomocí příkazu systemcl níže.

systemctl start zammad
systemctl status zammad
systemctl restart zammad

Pokud chcete konfigurovat služby jednu po druhé, můžete použít specifické komponenty, jak je uvedeno níže.

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

Instalace Zammad Ticketing System na CentOS 7 byla dokončena.


Cent OS
  1. Jak nainstalovat PHP 7, 7.2 a 7.3 na CentOS 7

  2. Jak nainstalovat Gradle na CentOS 8

  3. Jak nainstalovat Glances System Monitoring na CentOS 7

  1. Jak nainstalovat R na CentOS 7

  2. Jak nainstalovat R na CentOS 8

  3. Jak nastavit systém jízdenek Zammad na Ubuntu 16.04

  1. Jak nainstalovat Mahara ePortfolio System na CentOS 7

  2. Jak nainstalovat a nakonfigurovat MongoDB na CentOS 8

  3. Jak nainstalovat systém jízdenek OsTicket v Centos 7