Guida alle tecnologie

Installare Mantis Bug Tracker su CentOS 7

6 min read DevOps Aggiornato 14 Oct 2025
Installare Mantis su CentOS 7
Installare Mantis su CentOS 7

Perché usare Mantis

Mantis è un sistema di tracciamento dei problemi open source scritto in PHP. Offre un’interfaccia web semplice per gestire progetti, segnalare bug, notifiche via email e plugin estendibili. È adatto a team piccoli e medi che vogliono uno strumento leggero e personalizzabile.

Vantaggi principali

  • Notifiche via email per le modifiche alle issue.
  • Altamente personalizzabile tramite opzioni e plugin.
  • Controllo delle revisioni di campi di testo e note.
  • Ricerca full-text e accesso anonimo opzionale.
  • Ampia disponibilità di plugin (oltre 50 nei repository ufficiali).

Requisiti

  • Un server CentOS 7 aggiornato.
  • Un utente con privilegi sudo.
  • Accesso alla rete per scaricare pacchetti e il pacchetto Mantis (qui usiamo mantisbt-2.4.0.zip).

Important: assicurati di avere un backup prima di modificare sistemi di produzione.

1. Preparazione iniziale

Aggiorna il sistema e abilita i repository necessari (EPEL):

sudo yum install epel-release -y  
sudo yum update -y

2. Installare il server LAMP (Apache, MariaDB, PHP)

Mantis richiede Apache, PHP (>= 5.5) e MySQL/MariaDB. Qui installiamo Apache e MariaDB, poi PHP 7.

Installa Apache:

sudo yum install httpd -y

Avvia e abilita Apache:

sudo systemctl start httpd  
sudo systemctl enable httpd

Installa MariaDB:

sudo yum install mariadb mariadb-server -y

Avvia e abilita MariaDB:

sudo systemctl start mariadb  
sudo systemctl enable mariadb

Nota: Mantis richiede PHP >= 5.5; in questa guida installiamo PHP 7.1 tramite Webtatic. Se preferisci un’altra sorgente (Remi), vedi la sezione Alternative:

Installa il repository Webtatic e PHP 7.1:

sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

sudo yum install php71w php71w-cli php71w-mysqli -y

Verifica la versione di PHP:

php -v

Esempio di output atteso (può variare a seconda della build):

PHP 7.1.1 (cli) (built: Jan 19 2017 20:35:16) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies

3. Configurare il database per Mantis

Dopo l’installazione, è buona pratica eseguire lo script di sicurezza di MariaDB:

sudo mysql_secure_installation

Rispondi alle domande secondo le policy della tua organizzazione (di norma: impostare password root, rimuovere utenti anonimi, disabilitare login root remoto, rimuovere DB di test e ricaricare i privilegi).

Accedi alla shell di MariaDB e crea il database e l’utente di Mantis:

mysql -u root -p

Poi, dentro la shell MariaDB:

MariaDB [(none)]> CREATE DATABASE mantisdb;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON mantisdb.* TO 'mantis'@'localhost' IDENTIFIED BY 'mantispassword';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> \q

Sostituisci ‘mantispassword’ con una password forte e salva le credenziali in modo sicuro.

4. Scaricare e installare Mantis

Scarica la versione stabile usata in questa guida (2.4.0):

wget https://excellmedia.dl.sourceforge.net/project/mantisbt/mantis-stable/2.4.0/mantisbt-2.4.0.zip

Estrai e sposta la directory nella root web di Apache:

unzip mantisbt-2.4.0.zip  
sudo mv mantisbt-2.4.0 /var/www/html/mantis

Imposta il proprietario corretto dei file (Apache su CentOS usa apache:apache):

sudo chown -R apache:apache /var/www/html/mantis

Creare il virtual host Apache

Crea il file di configurazione:

sudo nano /etc/httpd/conf.d/mantis.conf

Aggiungi (modifica ServerName e ServerAdmin secondo la tua configurazione):


ServerAdmin [email protected]
DocumentRoot "/var/www/html/mantis"
ServerName yourdomain.com

Options FollowSymLinks
AllowOverride All  


Options MultiViews FollowSymlinks  

AllowOverride All
Order allow,deny
Allow from all

TransferLog /var/log/httpd/mantis_access.log
ErrorLog /var/log/httpd/mantis_error.log

Salva e riavvia Apache:

sudo systemctl restart httpd

5. Aprire il firewall e accedere all’interfaccia web

Consenti il traffico HTTP (porta 80):

sudo firewall-cmd --zone=public --permanent --add-service=http  
sudo firewall-cmd --reload

Prima di accedere all’interfaccia web di Mantis, assicurati di aver puntato il DNS di yourdomain.com all’IP del server o usa l’IP pubblico.

Apri il browser e visita:

http://yourdomain.com

Dovresti vedere la pagina di installazione dove inserire i dettagli del database (Nome DB, Username, Password), l’account amministratore e altre impostazioni. Clicca su “Install/Upgrade” per procedere.

Schermata della procedura di installazione di Mantis con i campi per database e amministratore

Dopo l’installazione, vedrai pagina di completamento:

Schermata che mostra l'installazione di Mantis completata con link di continuazione

Clicca su “Continue” per arrivare alla schermata di login:

Pagina di login di Mantis con i campi username e password

Pagina di impostazione o reset della password amministratore di Mantis

Per il primo accesso usa l’utente predefinito: username “administrator” e password “root” (cambia immediatamente la password dopo il primo login).

Cruscotto predefinito di Mantis dopo il login

Congratulazioni — Mantis è installato su CentOS 7.

Sicurezza e hardening consigliati

  • Cambia subito la password dell’account administrator.
  • Abilita HTTPS con un certificato valido (Let’s Encrypt) e reindirizza il traffico HTTP a HTTPS.
  • SELinux: se SELinux è abilitato, consenti ad Apache di scrivere nella directory di Mantis:
sudo chcon -R -t httpd_sys_rw_content_t /var/www/html/mantis
  • Se riscontri problemi di accesso ai log o a upload, verifica boolean httpd_unified o httpd_can_network_connect se plugin richiedono accesso esterno.
  • Limitare l’accesso alla porta 3306 (MariaDB) da host non autorizzati.

Backup e rollback (mini playbook)

  1. Prima di aggiornare Mantis o PHP: fermare il servizio web o mettere il sito in manutenzione.
  2. Backup del database:
mysqldump -u root -p mantisdb > mantisdb-backup-$(date +%F).sql
  1. Backup dei file:
sudo tar czf mantis-files-backup-$(date +%F).tar.gz /var/www/html/mantis
  1. Test di ripristino in un ambiente staging prima di applicare patch in produzione.

Rollback: ripristina file e import SQL, poi svuota la cache e riavvia Apache.

Alternative e compatibilità

  • Repository PHP: oltre a Webtatic, puoi usare Remi (remirepo) o Software Collections per installare PHP 7.x su CentOS 7.
  • Database: Mantis funziona con MySQL/MariaDB. Assicurati di usare un motore InnoDB attivo per migliore consistenza.
  • Versione Mantis: questa guida usa 2.4.0. Per versioni più recenti, verifica i requisiti nella documentazione ufficiale.

Controlli e test (Criteri di verifica)

  • L’interfaccia web carica senza errori (HTTP 200) sulla homepage.
  • Il login con l’utente amministratore funziona e la password predefinita è cambiata.
  • Creare una nuova issue: il form salva l’issue correttamente nel DB.
  • Notifiche email: inviare una notifica a un utente e verificare la ricezione.
  • Permessi filesystem: Apache può scrivere nelle directory necessarie (attachments, logs).

Ruoli e checklist operativa

  • Sysadmin:
    • Applicare aggiornamenti di sistema.
    • Configurare backup DB e file.
    • Gestire certificati HTTPS.
  • Admin Mantis:
    • Configurare progetti, ruoli, categorie, workflow.
    • Gestire plugin e aggiornamenti Mantis.
  • SVILUPPATORE / QA:
    • Testare integrazioni (email, LDAP, plugin).
    • Eseguire test di regressione dopo aggiornamenti.

Risoluzione problemi comuni

  • Pagina bianca o errori PHP: controlla i log in /var/log/httpd/mantis_error.log e abilita display_errors solo in staging.
  • Connessione DB rifiutata: verifica credenziali in fase di installazione e che MariaDB sia attivo.
  • Problemi di permessi: verifica owner e SELinux context di /var/www/html/mantis.

Esempi comandi utili:

sudo tail -n 200 /var/log/httpd/mantis_error.log
sudo systemctl status mariadb
sudo getenforce  # per controllare SELinux

FAQ

Devo usare HTTPS?

Sì. Usare HTTPS è fortemente consigliato per proteggere credenziali e dati sensibili in transito.

Posso eseguire Mantis su una versione più recente di PHP?

Sì. Mantis supporta PHP moderni ma verifica sempre la compatibilità della versione Mantis con la versione PHP scelta.

Dove trovo i plugin ufficiali?

I plugin sono disponibili nel portale di Mantis e in repository pubblici; installali seguendo la documentazione del plugin.

Riepilogo

  • Preparare CentOS 7, installare Apache, MariaDB e PHP 7.
  • Creare database e utente per Mantis.
  • Scaricare mantisbt-2.4.0, posizionare i file sotto /var/www/html/mantis e configurare Apache.
  • Abilitare il firewall, completare l’installazione via web e implementare hardening (cambiare password, abilitare HTTPS, configurare SELinux/permessi).

Note importanti: cambia le password di default, esegui backup regolari e testa gli aggiornamenti in staging prima di applicarli in produzione.

Autore
Redazione

Materiali simili

Insegnare Google Ads ai clienti
Marketing

Insegnare Google Ads ai clienti

Hack foto profilo Facebook: guida Photoshop rapida
Social Media

Hack foto profilo Facebook: guida Photoshop rapida

Priorità CPU permanente per Battlefield 1
Giochi

Priorità CPU permanente per Battlefield 1

Fix Dark Souls III: risoluzione problemi e ottimizzazione
videogiochi

Fix Dark Souls III: risoluzione problemi e ottimizzazione

Icona personalizzata per chiavetta USB in Windows
Windows

Icona personalizzata per chiavetta USB in Windows

Correggere storie Instagram che non si caricano su iPhone
Mobile

Correggere storie Instagram che non si caricano su iPhone