GNU/Linux >> Belajar Linux >  >> Cent OS

Cara Menginstal Sistem Tiket Zammad di CentOS 7

Zammad adalah open source helpdesk/sistem dukungan pelanggan yang ditulis dalam Ruby. Ini adalah sistem tiket berbasis web dengan banyak fitur, termasuk dukungan untuk mengelola komunikasi pelanggan melalui beberapa saluran seperti Facebook, telegram, obrolan, dan email. Zammad didistribusikan di bawah GNU AFFERO General Public License (AGPL) dan dapat diinstal pada platform yang berbeda seperti Linux, AIX, FreeBSD, OpenBSD, dan MacOSX. Ini tersedia di Github dan gratis untuk diinstal di server Anda sendiri.

Dalam tutorial ini, saya akan menunjukkan cara menginstal dan mengkonfigurasi Sistem Tiket Zammad menggunakan server web Nginx dan PostgreSQL untuk sistem database. Kami akan menggunakan server CentOS 7, dan menggunakan SSL Letsencrypt untuk mengamankan koneksi client-server.

Apa yang akan kami lakukan

  1. Instal Sistem Tiket Zammad
  2. Instal dan Konfigurasi Letsencrypt
  3. Konfigurasi server Web Nginx
  4. Konfigurasi Zammad
  5. Tips Tambahan Zammad

Prasyarat

  • Sistem CentOS 7
  • RAM minimal 2 GB
  • Keistimewaan Root

Langkah 1 - Instal Sistem Tiket Zammad

Sebelum menginstal sistem tiket Zammad di CentOS 7, kita perlu menginstal repositori EPEL (Extra Packages for Enterprise Linux) untuk instalasi server web Nginx.

Tambahkan repositori EPEL dengan menginstal paket epel menggunakan perintah yum berikut.

sudo yum -y install epel-release

Repositori EPEL telah ditambahkan ke sistem.

Selanjutnya, impor kunci Zammad dengan perintah impor rpm.

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

Tambahkan repositori Zammad dengan membuat file .repo baru di direktori 'yum.repos.d' menggunakan editor vim.

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

Tempelkan info berikut di sana.

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

Itu dia. Simpan dan keluar.

Sekarang instal Zammad menggunakan perintah yum berikut.

sudo yum -y install zammad

Catatan: Saat kita menginstal Zammad, maka secara otomatis akan menginstal paket lain yang diperlukan, termasuk server web Nginx dan database PostgreSQL.

Dan setelah instalasi selesai, Anda akan melihat hasilnya seperti gambar di bawah ini.

Zammad dan paket lainnya - server web Nginx dan database PostgreSQL - telah diinstal.

Langkah 2 - Instal dan Konfigurasikan SSL Letsencrypt

Dalam tutorial ini, kami ingin mengatur Zammad di bawah Nginx HTTPS dan menggunakan SSL gratis dari Letsencrypt. Dan kita akan melakukannya pada langkah ini dan menggunakan alat certbot (Letsencrypt Agent) yang dapat diinstal dari repositori.

Instal alat paket certbot dari repositori menggunakan yum.

yum -y install certbot

Selanjutnya, kita perlu membuat sertifikat SSL baru dengan alat certbot. Pastikan Anda memiliki domain sendiri untuk menghasilkan file sertifikat. Kami akan menggunakan nama domain 'zammad.hakase-labs.com'.

Buka direktori konfigurasi Nginx dan buka file nginx.conf di editor vim.

cd /etc/nginx/
vim nginx.conf

Tempelkan konfigurasi berikut di bawah 'server {} ' blok.

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

Simpan dan keluar. Kemudian uji konfigurasi dan mulai ulang server web.

nginx -t
systemctl restart nginx

Sebelum membuat file sertifikat SSL, pastikan port sistem Anda untuk HTTP dan HTTPS tidak diblokir oleh firewall. Anda dapat membuka port HTTP dan HTTPS di CentOS menggunakan perintah firewall-cmd seperti yang ditunjukkan di bawah ini.

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

Sekarang buat file sertifikat SSL menggunakan perintah certbot berikut.

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

Anda akan ditanya tentang alamat email Anda untuk memperbarui pemberitahuan - ketik alamat email Anda dan tekan 'Enter ' untuk melanjutkan. Untuk Persyaratan Layanan (TOS) Letsencrypt, ketik 'A ' menyetujui. Demikian pula, ketika diminta untuk berbagi email dengan EFF Foundation, ketik saja 'N ' untuk tidak.

Ketika perintah certbot selesai, Anda akan melihat hasilnya seperti di bawah ini.

File sertifikat SSL baru untuk instalasi Zammad kami telah dibuat. Semua sertifikat ada di '/etc/letsencryp/live/ ' direktori.

Langkah 3 - Konfigurasikan server Web Nginx

Pada langkah ini, kita akan mengkonfigurasi file host virtual untuk Zammad. Secara otomatis dibuat di direktori '/etc/nginx/conf.d/' selama instalasi zammad.

Buka '/etc/nginx/conf.d /' dan edit zammad.conf berkas.

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

Ubah semua konfigurasi seperti yang ditunjukkan di bawah ini.

#
# 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;
    }
}

Simpan dan keluar.

Selanjutnya, uji konfigurasi Nginx dan pastikan tidak ada kesalahan. Kemudian restart server web.

nginx -t
systemctl restart nginx

File host virtual zammad sekarang menggunakan SSL. Periksa dengan perintah netstat dan pastikan Anda memiliki port 443 untuk HTTPS dengan status 'DENGARKAN '.

netstat -plntu

Langkah 4 - Konfigurasi Zammad

Zammad telah diinstal pada CentOS 7 dengan Nginx sebagai server web dan PostgreSQL sebagai server database, dan dijalankan di bawah koneksi HTTPS. Pada langkah ini, kita akan melakukan konfigurasi dasar Zammad Ticketing System.

Buka browser web Anda dan ketik alamat zammad 'zammad.hakase-labs.co'. Anda akan diarahkan ke koneksi HTTPS. Klik 'Siapkan sistem baru ' untuk melanjutkan.

Sekarang isi semua konfigurasi admin. Nama pengguna, alamat email, dan sandi, lalu klik 'Buat '.

Untuk nama organisasi, ketik nama perusahaan Anda dan klik 'Berikutnya '.

Untuk pemberitahuan email, klik 'Lanjutkan '.

Kita dapat melakukan konfigurasi Notifikasi Email dari halaman pengaturan.

Untuk konfigurasi saluran, klik 'Lewati '.

Dan sekarang Anda melihat dasbor admin Zammad dengan UI yang indah.

Zammad telah diinstal dengan HTTPS diaktifkan, dan konfigurasi telah selesai.

Langkah 5 - Aktifkan Layanan Zammad

Zammad hadir dengan tiga komponen - server aplikasi web, proses pekerja Zammad, dan server soket web. Kami dapat mengelola semua layanan dengan perintah systemcl di bawah ini.

systemctl start zammad
systemctl status zammad
systemctl restart zammad

Jika Anda ingin mengonfigurasi layanan satu per satu, Anda dapat menggunakan komponen tertentu seperti yang ditunjukkan di bawah ini.

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

Instalasi Sistem Tiket Zammad pada CentOS 7 telah selesai.


Cent OS
  1. Cara Menginstal PHP 7, 7.2 &7.3 Pada CentOS 7

  2. Cara Menginstal Gradle di CentOS 8

  3. Cara Memasang Glances System Monitoring di CentOS 7

  1. Cara Menginstal R di CentOS 7

  2. Cara Menginstal R di CentOS 8

  3. Cara Mengatur Sistem Tiket Zammad di Ubuntu 16.04

  1. Cara Install Mahara ePortfolio System di CentOS 7

  2. Cara Menginstal dan Mengonfigurasi MongoDB di CentOS 8

  3. Cara Memasang Sistem Tiket OsTicket di Centos 7