Installare OTRS 5 su CentOS 7 — Guida passo passo

Introduzione
OTRS (open-source trouble ticket system software) è un software open source maturo usato dalle aziende per migliorare i processi di supporto clienti, help desk e contact center. OTRS è scritto in PERL e offre funzionalità chiave come gestione ticket, code, SLA, template e automazioni.
Breve definizione: per “ticket” si intende un oggetto che rappresenta una richiesta di supporto con stato, priorità e history associata.
Importante: questa guida copre l’installazione e la configurazione di base di OTRS 5 su CentOS 7 in un ambiente di prova o laboratorio. Prima di mettere in produzione, adattare e testare le impostazioni di sicurezza, backup e scalabilità secondo le esigenze aziendali.
Intento e pubblico
Questa guida è rivolta a sistemisti e amministratori che vogliono installare OTRS 5 su CentOS 7 usando pacchetti RPM e risorse locali. Varianti utili per la ricerca: installare OTRS CentOS 7, OTRS 5 guida, installazione OTRS, OTRS helpdesk, configurare OTRS su CentOS.
Sommario rapido dei passaggi (mini-methodology)
- Preparare CentOS 7: aggiornare pacchetti, installare editor e wget.
- Configurare rete e hostname.
- Disattivare SELinux (solo in laboratorio) e gestire firewall.
- Installare MariaDB, creare configurazione e assicurare il DB.
- Scaricare e installare OTRS e dipendenze Perl.
- Configurare Apache con SSL e forzare HTTPS.
- Eseguire l’installer web e verificare il funzionamento.
Ambiente di esempio
Questa guida è stata realizzata su una VM VirtualBox con CentOS 7 Minimal, 2 GB RAM, 8 GB disco e due interfacce di rete (host-only e NAT). Adattare memoria e storage per carichi di produzione.
Preparazione di CentOS 7
Assumendo una installazione pulita di CentOS 7 Minimal, prima di installare OTRS aggiornare il sistema e installare pacchetti aggiuntivi:
yum update
Esempio di output dopo l’update (lasciato come riferimento):
Transaction Summary ================================================================================ Install 1 Package Upgrade 39 Packages Total download size: 91 M Is this ok [y/d/N]: y
Installare un editor come vim e strumenti utili:
yum install vim
yum install wget
Per configurare la rete su CentOS 7 usare lo strumento testuale NMTUI:
nmtui
Dopo aver impostato indirizzi e hostname, applicare le modifiche:
service networks restart
Verificare le interfacce di rete con:
ip addr
Esempio di output usato nella guida (lasciato invariato):
1: lo: mtu 65536 qdisc noqueue state UNKNOWN qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp0s3: mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 08:00:27:67:bc:73 brd ff:ff:ff:ff:ff:ff
inet 10.0.2.15/24 brd 10.0.2.255 scope global dynamic enp0s3
valid_lft 84631sec preferred_lft 84631sec
inet6 fe80::9e25:c982:1091:90eb/64 scope link
valid_lft forever preferred_lft forever
3: enp0s8: mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 08:00:27:68:88:f3 brd ff:ff:ff:ff:ff:ff
inet 192.168.56.101/24 brd 192.168.56.255 scope global dynamic enp0s8
valid_lft 1044sec preferred_lft 1044sec
inet6 fe80::a00:27ff:fe68:88f3/64 scope link
valid_lft forever preferred_lft forever
SELinux
Per semplicità in ambiente di test, la guida mostra come disabilitare SELinux. In produzione è preferibile configurare etichette e policy correttamente invece di disabilitare.
Modificare il file di configurazione:
vim /etc/selinux/config
Contenuto di riferimento del file:
"/etc/selinux/config" 14L, 547C# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=enforcing
# SELINUXTYPE= can take one of three two values:
# targeted - Targeted processes are protected,
# minimum - Modification of targeted policy. Only selected processes are prootected.
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
Cambiare il valore SELINUX da enforcing a disabled, salvare e riavviare la macchina. Verificare lo stato con:
getenforce
Output atteso:
Disabled
Nota importante: disabilitare SELinux riduce la superficie di configurazione ma aumenta il rischio. Valutare alternative come relabeling e regole specifiche.
Installazione MariaDB
Installare MariaDB:
yum -y install mariadb-server
Creare il file di configurazione personalizzato:
vim /etc/my.cnf.d/zotrs.cnf
Inserire:
max_allowed_packet = 20M
query_cache_size = 32M
innodb_log_file_size = 256M
Avviare il servizio e mettere in sicurezza l’installazione:
systemctl start mariadb
/usr/bin/mysql_secure_installation
systemctl enable mariadb.service
Seguite le domande dello script per impostare la password di root, rimuovere utenti anonimi e il database di test. Le risposte dipendono dalle vostre policy.
Scaricare e installare OTRS
Scaricare il pacchetto RPM (esempio):
wget http://ftp.otrs.org/pub/otrs/RPMS/rhel/7/otrs-5.0.15-01.noarch.rpm
Prima di installare OTRS, configurare EPEL (se necessario) e dipendenze:
[root@centos7 ~]# yum -y http://mirror.globo.com/epel/7/x86_64/e/epel-release-7-9.noarch.rpm
Installare OTRS con rpm/yum:
yum install -nogpgcheck otrs-5.0.15-01.noarch.rpm
Al termine, avviare e abilitare Apache:
systemctl start httpd.service
systemctl enable httpd.service
Installare mod_ssl per HTTPS e creare un certificato autofirmato (esempio):
yum -y install mod_ssl
cd /etc/pki/tls/certs/
make centos7.key
openssl rsa -in centos7.key -out centos7.key
make centos7.csr
openssl x509 -in centos7.csr -out centos7.crt -req -signkey centos7.key
Fate attenzione a proteggere la chiave privata e valutate certificati firmati in produzione.
Copiare e modificare ssl.conf:
cp /etc/httpd/conf.d/ssl.conf /etc/httpd/conf.d/ssl.conf.old
vim /etc/httpd/conf.d/ssl.conf
Impostare i percorsi dei file e il protocollo:
SSLCertificateKeyFile /etc/pki/tls/certs/centos7.key
SSLCertificateFile /etc/pki/tls/certs/centos7.csr
SSLProtocol -All +TLSv1 +TLSv1.1 +TLSv1.2
ServerName centos7.local:443
Riavviare Apache:
systemctl restart httpd
Forzare HTTPS modificando le configurazioni di OTRS/Apache:
vim /etc/httpd/conf/httpd.conf
# assicurarsi che IncludeOptional conf.d/*.conf sia abilitato
vim /etc/httpd/conf.d/zzz_otrs.conf
# aggiungere sotto la riga indicata:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
systemctl restart httpd
Dipendenze Perl e controllo moduli
Installare i moduli Perl richiesti (esempio):
yum -y install "perl(Text::CSV_XS)" "perl(Crypt::Eksblowfish::Bcrypt)" "perl(YAML::XS)" "perl(JSON::XS)" "perl(Encode::HanExtra)" "perl(Mail::IMAPClient)" "perl(ModPerl::Util)"
Verificare i moduli con lo script di controllo di OTRS:
cd /opt/otrs/bin
./otrs.CheckModules.pl
L’output indica quali moduli mancano e quali sono opzionali per connettività verso DB diversi.
Avvio dei demoni e cron
Avviare il demone OTRS come utente otrs:
su -c "/opt/otrs/bin/otrs.Daemon.pl start" -s /bin/bash otrs
Disabilitare o configurare il firewall a seconda delle policy di sicurezza. Per ambiente di test la guida mostra come fermarlo (in produzione usare regole iptables/firewalld adeguate):
systemctl stop firewalld
systemctl disable firewalld.service
Avviare cronjobs OTRS:
su -c "/opt/otrs/bin/otrs.Daemon.pl start" -s /bin/bash otrsCron.sh
Esempio di output:
/opt/otrs/bin Cron.sh - start/stop OTRS cronjobs Copyright (C) 2001-2012 OTRS AG, http://otrs.org/ (using /opt/otrs) done
Configurare la crontab per l’utente otrs:
su otrs
crontab -e
Esempio di crontab suggerito (salvare):
# Who gets the cron emails?
MAILTO="root@localhost"
# check OTRS daemon status
*/5 * * * * $HOME/bin/otrs.Daemon.pl start >> /dev/null
Configurazione via installer web
Aprire il browser e visitare l’URL dell’installer:
https://centos7.local/otrs/installer.pl
Sostituire centos7.local con l’hostname o l’indirizzo IP del vostro server. L’installer guida attraverso il licensing, la selezione del DB (MySQL/MariaDB), l’inserimento delle credenziali del DB e la configurazione email e sistema.
Accettare la licenza e continuare:
Selezionare MySQL/MariaDB e creare il database OTRS (opzione Create a new database for OTRS). Fornire utente, password e host del DB e verificare le impostazioni:
L’installer creerà lo schema nel DB e avvierà la procedura di configurazione:
Dopo la creazione del DB, completare i dettagli di sistema (nome, email amministrativa) e la configurazione email per outbound/inbound. L’esempio usa SMTPTLS su porta 587 per invio e POP3 per ricezione, ma scegliere il protocollo richiesto dall’infrastruttura.
Prendere nota dello username e della password amministrativa fornita dall’installer. Accedere e cambiare la password immediatamente dopo il primo login:
Pagina di login:
A questo punto OTRS è installato e pronto per la personalizzazione del flusso di lavoro, code, servizi e template.
Checklist ruolo-based (operativa)
- Sistemista:
- Aggiornare pacchetti e kernel.
- Configurare backup delle VM e snapshot prima dei cambiamenti.
- Configurare monitoraggio (CPU, RAM, disco, processi httpd/mysqld).
- DBA:
- Verificare parametri InnoDB e backup giornalieri.
- Pianificare retention dei log e ottimizzazione indici.
- Security officer:
- Abilitare HTTPS con certificato valido.
- Rivedere permessi file in /opt/otrs e password dei servizi.
- Helpdesk manager:
- Definire code, servizi, SLA e template per le risposte comuni.
Test e criteri di verifica
Test di accettazione base:
- Pagina installer raggiungibile via HTTPS.
- Database creato e tabelle presenti.
- Login amministratore funzionante.
- Invio e ricezione email test tra OTRS e server SMTP/POP/IMAP.
- I demoni OTRS e cronjob in esecuzione.
Esempi di comandi di controllo:
su -s /bin/bash otrs -c "/opt/otrs/bin/otrs.Daemon.pl status"
systemctl status httpd
systemctl status mariadb
Risoluzione problemi comune (runbook rapido)
- Problema: pagina HTTPS non raggiungibile
- Controllare httpd in esecuzione: systemctl status httpd
- Verificare porte ascolto: ss -tlnp | grep httpd
- Controllare SELinux e firewall
- Problema: connessione al DB fallisce
- Verificare credenziali e host in installer
- Verificare che mariadb sia in ascolto su 127.0.0.1 o sulla rete desiderata
- Verificare permessi utente DB: GRANT ALL ON otrs.* TO ‘otrs’@’localhost’
- Problema: moduli Perl mancanti
- Eseguire ./otrs.CheckModules.pl e installare i pacchetti richiesti
- Problema: attachment o permessi file
- Verificare proprietario e permessi in /opt/otrs e /var/otrs
Alternative e approcci diversi
- Container: eseguire OTRS in Docker o container orchestrati per isolamento e deploy automatizzati.
- Sistemi operativi alternativi: Debian/Ubuntu possono essere preferibili per alcuni reparti; adattare i comandi di pacchetti.
- Uso di repository ufficiali: in contesti enterprise usare repository supportati o pacchetti firmati per aggiornamenti regolari.
Quando questa soluzione può non bastare
- Se il carico previsto è elevato, OTRS su una singola VM con 2 GB RAM non è sufficiente. Pensare a scalabilità: DB separato, bilanciamento HTTP, caching.
- Per requisiti di conformità stringenti non è consigliato disabilitare SELinux o firewall: bisogna adattare policy e regole.
Sicurezza e privacy (note GDPR)
Linee guida di base:
- Proteggere i certificati e le chiavi private.
- Usare TLS per tutte le comunicazioni verso l’utente e tra servizi.
- Limitare l’accesso al pannello amministrativo tramite VPN o regole IP.
- Definire una retention policy per i dati dei ticket e i log: minimizzare i dati personali memorizzati.
- Abilitare l’auditing degli accessi e log di sicurezza.
Non fornire dati sensibili in log o attachment senza cifratura e controlli di accesso.
Modelli mentali e heuristics
- Separazione dei ruoli: non condividere credenziali di amministrazione tra team non autorizzati.
- Preferire certificati CA validi in produzione invece di autofirmati.
- Pensare ai ticket come a entità persistenti: progettare indici DB e politiche di archiviazione.
Glossario in linea
- OTRS: piattaforma di ticketing open source per gestione richieste.
- Ticket: richiesta di supporto con attributi (stato, priorità, responsabile).
- SLA: accordo di livello di servizio che definisce tempi di risposta/risoluzione.
Riepilogo e passi successivi
Importante: dopo l’installazione di base, eseguire i seguenti passi prima della messa in produzione:
- Applicare un certificato TLS valido e disabilitare l’accesso HTTP.
- Configurare backup e restore del database e dei file di configurazione.
- Validare performance e incrementare risorse se necessario.
- Definire regole di retention e compliance per i dati dei ticket.
Note finali: OTRS è potente ma richiede cura su sicurezza, backup e scalabilità. Usare questa guida come base e adattare ogni scelta alle policy aziendali.
Materiali simili

Come ottenere le spray gratuite di Daft Punk in Fortnite

WhatsApp senza numero reale — guida pratica

Aggiungere menu Seleziona al menu contestuale

Rispondere a un messaggio specifico su Instagram

Come ottenere un rimborso dal Microsoft Store
