O osTicket é um excelente Gestor de Helpdesk – Apenas faz gestão de Helpdesk, mas faz muito bem.

A versão que vamos instalar é a ultima versão a esta altura (v3.3.9) que pode ser adquirida aqui.

Neste caso, não vamos criar nenhuma diretoria especifica para o osticket mas na raíz da maquina, ficando este servidor dedicado apenas a isto – ou pelo menos, o site principal

NOTA sobre a linguagem: Apenas na versão 1.9.4-rc3 (Release candidate) consegui colocar a interface em Português. Segundo o site, ainda só se obtém os menús de ajuda em Português nas versões estáveis. A tradução ainda não está completa.

Nota 2: Esta instalação foi também testada em CentOS 6.5

Requisitos

MySQL (ou MariaDB) versão 5 ou superior

Um servidor web – Neste caso Apache

Centos 7 x86_64

Para esta instalação poderemos precisar do repositorio EPL para o Centos 7

wget http://dl.fedoraproject.org/pub/epel/beta/7/x86_64/epel-release-7-1.noarch.rpm
yum install epel-release-7-1.noarch.rpm

Depois, para verificar o repositorio

yum repolist

Nota: Se vos der erro dizendo que não consegue contatar o repositorio, basta editar o ficheiro .repo

vi /etc/yum.repos.d/epel.repo

comentar a linha que diz (no repositorio [epel])

mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch

para

#mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch

e descomentar a linha de cima

#baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch

passando para

baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch

Guardar e sair

Para mais detalhes, podem consultar o site nixCraft

Instalar MySQL (mariadb)

O Centos 7, quando se pesquisa no yum por mysql apenas aparece o mariadb – assim sendo, vamos instalar o mariadb.

yum install mariadb mariadb-server

Ativar o serviço

O CentOS 7 já vem com systemd ( em vez dos anteriores SysVinit ou openrc) e existem diferenças em como se iniciam e ativam serviços. Poderão ver algumas diferenças e sintaxes aqui.

systemctl enable mariadb.service
ln -s '/usr/lib/systemd/system/mariadb.service' '/etc/systemd/system/multi-user.target.wants/mariadb.service'

Desta forma, já tornamos o arranque do mariadb consistente com futuros reboots

Iniciar o serviço

systemctl start mariadb.service

Para verem detalhes do serviço:

systemctl status mariadb.service

Definir password de root

mysqladmin -u root password '<a_password>'

Se preferirem, podem optar pela configuração “mais segura”, executando:

mysql_secure_installation

Base de dados para o osTicket

Entrar no MySQL e executar os seguintes comandos

mysql -u root -p

create database osTicket; (ou outro nome que queiram chamar)
create user '<utilizador>'@'localhost' identified by '<password>';
grant all privileges on osTicket.* to 'ticketuser'@'localhost';

Apache

Para instalar o Apache, nada mais que:

yum install httpd
systemctl enable httpd.service
systemctl start httpd.service

PHP

Para instalar o PHP, basta

yum install php php-mysqlnd php-gd php-mbstring php-xml php-imap php-php-gettext php-JsonSchema
Utualizacao: Em Centos 6.5, o pacote php-mysqlnd não existe – substituir por php-mysql
Configurar o PHP

Para o que desejamos (para já), não há muitas configurações a efetuar, mas devemos pelo menos configurar a data

Editar o php.ini e definir a nossa zona

vi /etc/php.ini

Procurem por date.timezone e acrescentem a vossa

;date.timezone =

e coloquem (no meu caso)

date.timezone = 'Europe/Lisbon'

Guardem as alterações

Instalar o APC

O APC é uma cache para o PHP

yum install php-pecl-apcu

Reiniciar o apache

systemctl restart httpd.service

Verificar APC e PHP

Ir a /var/www/html e criar o seguinte ficheiro

echo "<?php phpinfo(); ?>" >> info.php

Não interessa o nome, apenas que tenham extensão php

Ir a um browser e navegar até ao ficheiro

http://<server_ip_ou_dns>/info.php

E verificar se aparece uma página com informações sobre a versão do PHP e o APC aparece lá

Nota: Se não conseguirem ligação, vejam se a firewall não está em execução:

systemctl status firewalld.service

OsTicket

Após o download do OsTicket, descomprimir o ficheiro

unzip osTicket-v1.9.3.zip

Irão ter alguns ficheiros e diretorias. Em upload, estão os ficheiros que desejamos. Copiar tudo para o ditetorio base do apache

cp -rv upload/* /var/www/html

Criar o ficheiro de configuração

cd /var/www/html/include
cp ost-sampleconfig.php ost-config.php

Lingua

Antes de procedermos a instalação, se desejamos o osTicket em Português, temos que copiar o ficheiro de linguas antes da instalação.

NOTA: Supostamente é esta a forma de instalar uma nova lingua, mas para mim não funcionou e pelo que li, ainda é preciso esperar pelas próximas versões para que todo o osTicket esteja em Português

Ir a http://osticket.com/download-edge e escolher a opção “Language Packs”.  Em “Language Packs” efetuar o download da versão pt_PT .  Deverá ser um ficheiro com extensão .phar .

Copiar o ficheiro (pt_PT.phar) para /var/www/html/include/i18n.

NOTA: Apenas na versão 1.9.4-rc3 consegui colocar a linguagem. Após ler algumas coisas, na versão estável ainda não suportam a interface totalmente em Português, apenas os menús de ajuda. Esta é uma versão de testes.

Alterar permissões

Uma vez que o apache está a correr com utilizador apache e grupo apache, necessário alterar os owners dos ficheiros

cd /var/www/
chown apache:apache -R html/

A configuração é um processo automático. Num browser, colocar o endereço para proceder à instalação

http://<server_ip_ou_dns>/

Se tudo correr bem, esta é a imagem que irão ver

osticketPT

Após efetuarem as configurações, executem os seguintes comandos:

chmod 0644 include/ost-config.php

E apaguem a diretoria setup

rm -rf setup (Atenção com este comando)