Como instalar o sistema de tickets do Zammad no CentOS 7
Nesta página
- O que faremos
- Pré-requisitos
- Etapa 1 - Instalar o sistema de tickets do Zammad
- Etapa 2 - Instalar e configurar Letsencrypt SSL
- Etapa 3 - Configurar o servidor da Web Nginx
- Etapa 4 - Configuração do Zammad
- Etapa 5 - Ativar os serviços do Zammad
- Referência
Zammad é um sistema de helpdesk/suporte ao cliente de código aberto escrito em Ruby. É um sistema de tíquetes baseado na web com muitos recursos, incluindo suporte para gerenciar a comunicação com o cliente em vários canais, como Facebook, telegrama, bate-papo e e-mails. O Zammad é distribuído sob a Licença pública geral GNU AFFERO (AGPL) e pode ser instalado em diferentes plataformas como Linux, AIX, FreeBSD, OpenBSD e MacOSX. Está disponível no Github e é gratuito para instalação em seu próprio servidor.
Neste tutorial, mostrarei como instalar e configurar o Zammad Ticketing System usando o servidor web Nginx e PostgreSQL para o sistema de banco de dados. Estaremos usando o servidor CentOS 7 e SSL Letsencrypt para proteger as conexões cliente-servidor. ;var slotId=div-gpt-ad-howtoforge_com-medrectangle-3-0;var ffid=1;var alS=1021%1000;var container=document.getElementById(slotId);container.style.width=100%;var ins=document.createElement(ins);ins.id=slotId+-asloaded;ins.className=adsbygoogle ezasloaded;ins.dataset.adClient=pid;ins.dataset.adChannel=cid;if(ffid==2){ins. dataset.fullWidthResponsive=true;}
O que nos faremos
- Instalar o sistema de tickets do Zammad
- Instalar e configurar o Letsencrypt
- Configurar o servidor da Web Nginx
- Configuração do Zammad
- Dicas Adicionais do Zammad
Pré-requisitos
- Sistema CentOS 7
- Pelo menos 2 GB de RAM
- Privilégios raiz
Etapa 1 - Instalar o sistema de tickets do Zammad
Antes de instalar o sistema de tickets do Zammad no CentOS 7, precisamos instalar o repositório EPEL (Extra Packages for Enterprise Linux) para nossa instalação do servidor web Nginx.
Adicione o repositório EPEL instalando o pacote epel usando o seguinte comando yum.
sudo yum -y install epel-release
O repositório EPEL foi adicionado ao sistema.
Em seguida, importe a chave Zammad com o comando rpm import.
sudo rpm --import https://rpm.packager.io/key
Adicione o repositório Zammad criando um novo arquivo .repo no diretório yum.repos.d usando o editor vim.
vim /etc/yum.repos.d/zammad.repo
Cole as seguintes informações lá.
[zammad]
name=Repository for zammad/zammad application.
baseurl=https://rpm.packager.io/gh/zammad/zammad/centos7/stable
enabled=1
É isso. Salvar e sair.
Agora instale o Zammad usando o seguinte comando yum.
sudo yum -y install zammad
Observação: quando estivermos instalando o Zammad, ele instalará automaticamente outros pacotes necessários, incluindo servidor web Nginx e banco de dados PostgreSQL.
E após a conclusão da instalação, você verá o resultado semelhante ao mostrado abaixo.
Zammad e outros pacotes - servidor web Nginx e banco de dados PostgreSQL - foram instalados.
Etapa 2 - Instalar e configurar Letsencrypt SSL
Neste tutorial, queremos configurar o Zammad no Nginx HTTPS e usar o SSL gratuito do Letsencrypt. E faremos isso nesta etapa e usaremos a ferramenta certbot (Letsencrypt Agent) que pode ser instalada a partir do repositório.
Instale a ferramenta de pacote certbot do repositório usando yum.
yum -y install certbot
Em seguida, precisamos gerar novos certificados SSL com a ferramenta certbot. Certifique-se de ter seu próprio domínio para gerar os arquivos de certificado. Usaremos um nome de domínio zammad.hakase-labs.com.
Vá para o diretório de configuração do Nginx e abra o arquivo nginx.conf no editor vim.
cd /etc/nginx/
vim nginx.conf
Cole a seguinte configuração no bloco server {}.
location ~ /.well-known {
allow all;
}
Salvar e sair. Em seguida, teste a configuração e reinicie o servidor web.
nginx -t
systemctl restart nginx
Antes de gerar arquivos de certificado SSL, verifique se a porta do sistema para HTTP e HTTPS não está bloqueada pelo firewall. Você pode abrir as portas HTTP e HTTPS no CentOS usando o comando firewall-cmd conforme mostrado abaixo.
firewall-cmd --permanent --add-service=https
firewall-cmd --reload
Agora gere arquivos de certificado SSL usando o seguinte comando certbot.
certbot certonly --standalone -d zammad.hakase-labs.co
Você será questionado sobre seu endereço de e-mail para renovar a notificação - digite seu endereço de e-mail e pressione Enter para continuar. Para Letsencrypt Term Of Services (TOS), digite A para concordar. Da mesma forma, quando solicitado a compartilhar e-mail com a EFF Foundation, basta digitar N para não.
Quando o comando certbot estiver concluído, você verá o resultado conforme mostrado abaixo.
Novos arquivos de certificado SSL para nossa instalação do Zammad foram gerados. Todos os certificados estão no diretório /etc/letsencryp/live/.
Etapa 3 - Configurar o servidor da Web Nginx
Nesta etapa, configuraremos um arquivo de host virtual para o Zammad. Ele é criado automaticamente no diretório /etc/nginx/conf.d/ durante a instalação do zammad.
Vá para /etc/nginx/conf.d/ e edite o arquivo zammad.conf.
cd /etc/nginx/conf.d/
vim zammad.conf
Altere todas as configurações conforme mostrado abaixo.
#
# 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;
}
}
Salvar e sair.
Em seguida, teste a configuração do Nginx e verifique se não há nenhum erro. Em seguida, reinicie o servidor da web.
nginx -t
systemctl restart nginx
O arquivo de host virtual zammad agora está usando SSL. Verifique com o comando netstat e certifique-se de ter a porta 443 para HTTPS com o estado LISTEN.
netstat -plntu
Passo 4 - Configuração do Zammad
O Zammad foi instalado no CentOS 7 com Nginx como servidor web e PostgreSQL como servidor de banco de dados, e está sendo executado sob conexão HTTPS. Nesta etapa, faremos a configuração básica do Zammad Ticketing System.
Abra seu navegador da Web e digite o endereço zammad zammad.hakase-labs.co. Você será redirecionado para a conexão HTTPS. Clique no botão Configurar novo sistema para continuar.
Agora preencha toda a configuração do administrador. Nome de usuário, endereço de e-mail e senha e, em seguida, clique em Criar.
Para o nome da organização, digite o nome da sua empresa e clique em Avançar.
Para notificação por e-mail, clique em Continuar.
Podemos fazer a configuração de notificação por e-mail na página de configurações.
Para configuração do canal, clique em Ignorar.
E agora você vê o painel de administração do Zammad com uma interface de usuário bonita.
O Zammad foi instalado com HTTPS ativado e a configuração foi concluída.
Etapa 5 - Ativar os serviços do Zammad
O Zammad vem com três componentes - um servidor de aplicativos da web, um processo de trabalho do Zammad e um servidor de websocket. Podemos gerenciar todos os serviços com o comando systemcl abaixo.
systemctl start zammad
systemctl status zammad
systemctl restart zammad
Se você deseja configurar os serviços um a um, pode usar componentes específicos conforme mostrado abaixo.
systemctl status zammad-web
systemctl status zammad-worker
systemctl status zammad-websocket
A instalação do Zammad Ticketing System no CentOS 7 foi concluída.
Referência
- https://docs.zammad.org/