GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare Bugzilla 5.0 su CentOS 7

In questa pagina

  1. Prerequisiti per CentOS
    1. Connessione Internet
    2. SELinux
      1. Disabilita SELinux
    3. Account utilizzato per l'installazione
    4. Repository aggiuntivi
      1. Abilita repository Epel
  2. Installa Apache con mod_ssl e mod_perl
    1. Abilita e avvia httpd.service
      1. Avvia httpd.service
      2. Controlla lo stato di httpd.service
      3. Abilita permanentemente httpd.service
      4. Apri la porta 80 nel firewall locale per consentire le richieste HTTP
      5. Testare il server web Apache
  3. Installa MariaDB
    1. Fai in modo che MariaDB si avvii automaticamente all'avvio
    2. Imposta la password di root di MariaDB
    3. Imposta max_allowed_packets per MariaDB
  4. Pacchetti aggiuntivi
  • Installa Bugzilla
    1. Crea un database per Bugzilla
    2. Scarica ed estrai Bugzilla
    3. Copia la cartella Bugzilla nella cartella del server web
    4. Configurazione finale utilizzando lo script di installazione di Bugzilla
    5. Configura Apache per ospitare la nostra installazione di Bugzilla
      1. Torna all'utente normale
      2. Testa l'installazione di Bugzilla con il tuo browser
  • Questo HowTo ti guiderà attraverso l'installazione di Bugzilla 5.0 su CentOS 7. Bugzilla è un sistema avanzato di tracciamento dei bug, sviluppato dalla Mozilla Foundation (l'organizzazione che sviluppa il famoso browser Firefox). Bugzilla ti consente di tenere traccia dei difetti e delle modifiche al codice nelle tue applicazioni, ti consente di comunicare facilmente nel tuo team di sviluppo e di inviare e rivedere le patch.

    Prerequisiti per CentOS

    Connessione Internet

    Dovresti avere un'installazione minima di CentOS 7 con gli ultimi aggiornamenti e l'indirizzo IP e il nome host impostati. La tua macchina dovrebbe essere in grado di raggiungere Internet. Se non riesci a raggiungere direttamente Internet e devi utilizzare un server proxy, dovresti configurare yum per utilizzare un proxy modificando /etc/yum.conf. Aggiungi le seguenti righe (modificale secondo le tue esigenze):

    # Il server proxy - server proxy:port
    proxy=http://192.168.178.1:8080
    # I dettagli dell'account per le connessioni yum
    # proxy_username=yum-user
    # proxy_password=qwerty


    Quando utilizziamo strumenti a riga di comando, che richiedono l'accesso a Internet e sei dietro un server proxy, assicurati di eseguire sempre i due comandi seguenti prima di utilizzare i comandi che richiedono una connessione a Internet:

    esporta http_proxy=http://192.168.178.1:8080/
    esporta https_proxy=http://192.168.178.1:8080/


    Con questo metodo dovresti essere in grado di utilizzare questo How-to anche se sei dietro un proxy.

    SELinux

    Security-Enhanced Linux (SELinux) è un meccanismo di sicurezza MAC (obbligatorio) implementato nel kernel. È un eccellente meccanismo di sicurezza ma interromperà Bugzilla fino a quando non verrà rilasciato un pacchetto ufficiale Bugzilla 5.0 rpm che configurerà anche SELinux. Quindi a questo punto imposteremo SELinux in modalità permissiva. In questa modalità, SELinux è abilitato ma non applicherà la politica di sicurezza.

    Disabilita SELinux

    Esegui il comando seguente per cambiare la modalità SELinux da forzata a permissiva.

    sudo sed -i 's/^SELINUX=enforcing$/SELINUX=permissivo/g' /etc/selinux/config


    Il file ora dovrebbe apparire così:

    # Questo file controlla lo stato di SELinux sul sistema.
    # SELINUX=può assumere uno di questi tre valori:
    #     enforcing - La policy di sicurezza di SELinux viene applicata.
    #     permissive - SELinux stampa gli avvisi invece di applicare.
    #     disabilitato - Nessuna policy SELinux caricata.
    SELINUX=permissive
    # SELINUXTYPE=può assumere uno di tre due valori:
    #     mirato - I processi mirati sono protetti ,
    #     minimo - Modifica della norma mirata. Solo i processi selezionati sono protetti.
    #     mls - Protezione di sicurezza multilivello.
    SELINUXTYPE=mirato


    Dopo questa modifica, riavvia il computer.

    Account utilizzato per l'installazione

    Se non diversamente indicato, tutti i comandi in questo How-to vengono eseguiti come utente 'installer' che è un utente amministrativo sul computer CentOS 7 ed è autorizzato a eseguire comandi con 'sudo'.

    Repository aggiuntivi

    Avremo bisogno di molti pacchetti che non sono nei repository CentOS ufficiali, quindi abilitiamo un repository aggiuntivo sulla nostra scatola CentOS.

    Abilita repository Epel

    Esegui i seguenti comandi per abilitare il repository epel.

    sudo yum install deltarpm epel-release
    sudo yum update


    Info:Devi accettare la chiave GPG epel quando installi il primo pacchetto dal repository epel.

    Installa Apache con mod_ssl e mod_perl

    sudo yum install httpd httpd-devel mod_ssl mod_ssl mod_perl mod_perl-devel


    Questo installerà Apache, mod_ssl, mod_perl e wget con tutte le dipendenze necessarie.

    Abilita e avvia httpd.service

    CentOS 7 utilizza systemd, quindi abiliteremo e avvieremo Apache nel "modo systemd".

    Avvia httpd.service

    sudo systemctl avvia httpd.service

    Controlla lo stato di httpd.service

    sudo systemctl stato httpd.service


    Questo comando dovrebbe dirti che httpd.service è in esecuzione (alcune righe sono state eliminate)

    httpd.service - Il server HTTP Apache
       Caricato:caricato (/usr/lib/systemd/system/httpd.service; disabilitato)
       Attivo:attivo (in esecuzione) da mar 04-08-2015 11:18:03 CEST; 6 secondi fa
     PID principale:11930 (/usr/sbin/httpd)
    ...

    Abilita permanentemente httpd.service

    Dopo aver verificato l'output sopra, abilitiamo httpd.service per l'avvio automatico con:

    sudo systemctl abilita httpd.service


    Il sistema creerà automaticamente un collegamento simbolico per abilitare http.service per l'avvio automatico.

    Apri la porta 80 nel firewall locale per consentire le richieste HTTP

    CentOS 7 utilizza FirewallD, quindi dobbiamo usare firewall-cmd per modificare le impostazioni del firewall per consentire le connessioni in entrata sulla porta 80 (HTTP).

    sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
    # successo
    sudo firewall-cmd --reload
    # successo

    Testa il server web Apache

    Usa un browser e apri http://ip-of-your-server/ (sostituisci ip-of-your-server con l'indirizzo IP del tuo server). Dovresti vedere la pagina di test di Apache. - Apache funziona!

    Installa MariaDB

    CentOS 7 viene fornito con MariaDB invece di MySQL. MariaDB è un open source equivalente a MySQL. Per installare MariaDB eseguire i seguenti comandi:

    sudo yum install mariadb-server mariadb mariadb-devel php-mysql

    Fai in modo che MariaDB si avvii automaticamente all'avvio

    Per avviare automaticamente MariaDB all'avvio, lo configuriamo come servizio nello stesso modo in cui lo facevamo prima con httpd.service. Eseguire i seguenti tre comandi per avviare, controllare lo stato e abilitare MariaDB come servizio permanente:

    sudo systemctl start mariadb.service
    sudo systemctl status mariadb.service
    sudo systemctl abilita mariadb.service

    Imposta la password root di MariaDB

    Apri un prompt SQL nel tuo server MariaDB eseguendo il comando seguente:

    mysql -u radice


    Dovresti atterrare sul prompt di MariaDB. Nei seguenti comandi, devi sostituire myrootpassword con la password che desideri utilizzare per il tuo utente root MariaDB!

    MariaDB [ (nessuno) ]> IMPOSTA PASSWORD PER 'root'@'localhost' =PASSWORD('myrootpassword');Query OK, 0 righe interessate (0,00 sec)MariaDB [ (nessuno) ]> \qBye


    Ora prova se riesci ad accedere con l'utente root

    mysql -u root -p
    Inserisci password:myrootpasswordBenvenuto nel monitor MariaDB. I comandi terminano con; o \g.
    Il tuo ID di connessione MariaDB è 5
    Versione server:5.5.41-MariaDB Server MariaDB
    Copyright (c) 2000, 2014, Oracle, MariaDB Corporation Ab e altri.
    />Digita 'aiuto;' o '\h' per aiuto. Digitare '\c' per cancellare l'istruzione di input corrente.MariaDB [ (nessuno) ]> \qBye

    Imposta max_allowed_packets per MariaDB

    Bugzilla necessita di una dimensione minima di 'max_allowed_packet' configurata in MariaDB. Quindi cambiamo la configurazione generica di MariaDB per impostare la dimensione 'max_allowed_packet' su 4 MBytes.
    Apri '/etc/my.cnf' con il tuo editor e aggiungi le seguenti righe sotto la sezione '[mysqld]':

    # Bugzilla
    # dimensione massima consentita per il caricamento di un allegato
    #cambialo se ne hai bisogno di più!
    max_allowed_packet=4M


    Dopo questa modifica, l'intero 'my.cnf' appare così:

    [mysqld]
    datadir=/var/lib/mysql
    socket=/var/lib/mysql/mysql.sock
    # Si consiglia di disabilitare i collegamenti simbolici per prevenire vari rischi per la sicurezza
    symbolic-links=0
    # Le impostazioni utente e gruppo vengono ignorate quando si utilizza systemd.
    # Se è necessario eseguire mysqld con un utente o gruppo diverso,
    # personalizza il file dell'unità systemd per mariadb secondo le
    # istruzioni in http://fedoraproject.org/wiki/Systemd

    # Bugzilla
    # dimensione massima consentita per il caricamento di un allegato
    # cambialo se ne hai bisogno di più!
    max_allowed_packet=4M

    [mysqld_safe]
    log-error=/var/log/mariadb/mariadb.log
    pid-file =/var/run/mariadb/mariadb.pid

    #
    # include tutti i file dalla directory config
    #
    !includedir /etc/my.cnf. d


    Le modifiche avranno effetto dopo il riavvio di MariaDB.

    sudo systemctl riavvia mariadb.service

    Pacchetti aggiuntivi

    Bugzilla ha bisogno di molti pacchetti aggiuntivi, principalmente relativi a perl, alcuni prerequisiti per far funzionare i moduli perl e una configurazione per poter scaricare e installare moduli perl. Pertanto installiamo tutte le dipendenze necessarie. Ci assicuriamo inoltre che

    NON INSTALLARE il pacchetto perl-homedir, perché ciò interromperebbe l'installazione di Bugzilla.

    ('perl-homedir' installerebbe i moduli perl nelle cartelle utente che non saranno accessibili da Bugzilla, quindi non installarlo assolutamente!)

    Il comando seguente assicurerà che perl-homedir non sia installato e installerà gli altri pacchetti richiesti:

    sudo yum install gcc gcc-c++ graphviz graphviz-devel patchutils gd gd-devel wget perl* -x perl-homedir


    Verranno installati circa 1300 pacchetti!

    Installa Bugzilla

    Ora che abbiamo completato tutta la preparazione, siamo pronti per scaricare l'ultimo Bugzilla, creare il database per esso ed eseguire alcune impostazioni finali.

    Crea un database per Bugzilla

    Per creare un database per Bugzilla sul nostro server MariaDB dobbiamo aprire nuovamente il prompt di root di MariaDB:

    mysql -u root -p
    Inserisci la password:myrootpassword

    Benvenuti nel monitor MariaDB. I comandi terminano con; o \g.
    Il tuo ID di connessione MariaDB è 5
    Versione server:5.5.41-MariaDB Server MariaDB
    Copyright (c) 2000, 2014, Oracle, MariaDB Corporation Ab e altri.
    />Digita 'aiuto;' o '\h' per aiuto. Digitare '\c' per cancellare l'istruzione di input corrente.


    Al prompt di root di MariaDB immettere i seguenti comandi per creare un database 'bug' e consentire all'utente 'bug' di accedervi completamente. (Per favore cambia 'bugsuserpassword' con la tua password!)

    MariaDB [ (nessuno) ]> crea bug del database; Query OK, 1 riga interessata (0.00 sec)MariaDB [ (nessuno) ]> concedi tutti i bug.* a [email protected] identificato da 'bugsuserpassword'; Query OK, 0 riga interessato (0.00 sec)MariaDB [ (nessuno) ]> \qCiao

    Scarica ed estrai Bugzilla

    Sebbene ci siano diverse opzioni per ottenere BugZilla, usiamo wget per scaricare il tarball Vogliamo ottenere la versione stabile (5.0).

    cd
    wget 'https://ftp.mozilla.org/pub/mozilla.org/webtools/bugzilla-5.0.tar.gz'


    Al termine del download, estraiamo l'archivio:

    tar -xzvf bugzilla-5.0.tar.gz

    Copia la cartella Bugzilla nella cartella del server web

    Ora copiamo la cartella estratta (bugzilla-5.0) nella sua destinazione (/var/www/html/bugzilla) con il seguente comando

    cd
    sudo cp -R ./bugzilla-5.0/ /var/www/html/bugzilla/

    Configurazione finale utilizzando lo script di installazione di Bugzilla

    I seguenti comandi devono essere eseguiti come utente root, quindi apriamo una shell di root con il seguente comando:

    sudo su
    [programma di installazione [protetto da email]]#


    Il nostro prompt ora ha un '#' alla fine, il che significa che siamo root. Si prega di fare attenzione con tutti i comandi ora! L'howto ora mostrerà sempre il prompt per dirti che dovresti essere root per eseguire i comandi!

    Ora (come root) passiamo alla cartella del server web in cui risiede bugzilla

    [programma di installazione di [email protected]]# cd /var/www/html/bugzilla
    [[email protected] bugzilla]#


    Ora esegui il comando seguente per consentire allo script di installazione di Bugzilla di verificare lo stato della nostra configurazione

    [[email protetta] bugzilla]# ./checksetup.pl


    Di solito l'output del comando precedente ci dirà che alcuni moduli perl mancano dalla nostra installazione (opzionali e obbligatori) e che dobbiamo installare almeno quelli richiesti per poter continuare. Ovviamente potresti installare tutti i moduli richiesti (e se lo desideri) i moduli opzionali eseguendo manualmente i comandi che ti mostrerà lo script di installazione, ma con questo singolo comando installerai tutti i moduli perl necessari contemporaneamente (richiesto e opzionale). Quindi eseguiamolo:

    [[email protetta] bugzilla]# /usr/bin/perl install-module.pl --all


    Lo script di installazione ora imposterà una configurazione CPAN temporanea e tenterà di installare tutti i moduli perl necessari a Bugzilla (richiesti e opzionali). Durante il processo dovrebbero apparire solo alcuni avvisi minori.

    Alla fine, verifichiamo nuovamente lo stato dell'installazione eseguendo checksetup.pl

    [[email protetta] bugzilla]# ./checksetup.pl


    Ora tutte le dipendenze dovrebbero essere a posto, tranne un modulo ( DBD-Oracle (v1.19) che non viene trovato. Va bene perché questo modulo verrà installato solo se trova un'installazione Oracle funzionante che non abbiamo!

    Lo script di installazione mostrerà ora il seguente testo:

    Reading ./localconfig...

    Questa versione di Bugzilla contiene alcune variabili che potresti voler
    cambiare e adattare alle tue impostazioni locali. Le seguenti variabili sono
    nuove in ./localconfig dall'ultima volta che hai eseguito checksetup.pl:

    create_htaccess, webservergroup, use_suexec, db_driver, db_host,
    db_name, db_user, db_pass, db_port , db_sock, db_check,
    db_mysql_ssl_ca_file, db_mysql_ssl_ca_path, db_mysql_ssl_client_cert,
    db_mysql_ssl_client_key, index_html, interdiffbin, diffpath,
    site_wide_secret

    Si prega di modificare il file ./localconfig e quindi di nuovo -esegui checksetup.pl
    per completare l'installazione.


    Quindi, come indicato sopra, apriamo ./localconfig con il nostro editor e lo modifichiamo in base alle nostre esigenze. Ecco quello che ho usato (commenti rimossi), assicurati di modificare i nomi e le password del database in base alle tue esigenze!

    $create_htaccess =1;
    $webservergroup ='apache';
    $use_suexec =0;
    $db_driver ='mysql';
    $db_host ='localhost';
    $db_name ='bug';
    $db_user ='bug';
    $db_pass ='bugsuserpassword';
    $db_port =0;
    $db_sock ='';
    $db_check =1;
    $db_mysql_ssl_ca_file ='';
    $db_mysql_ssl_ca_path ='';
    $db_mysql_ssl_client_cert ='';
    $db_mysql_ssl_client_key ='';
    $index_html =0;
    $interdiffbin ='/bin/interdiff';
    $diffpath ='/bin';
    $site_wide_secret ='ifKuihguW8nlxLcxeNU4whHzFbxDIGWSvtR6S7Ul38cFQn004YDcVzuBJfnF8M9X';


    Ora eseguiamo di nuovo lo script di installazione. Ora dovrebbe rilevare la corretta configurazione del database e iniziare ad accedere al server MariaDB per una configurazione finale.

    [[email protetta] bugzilla]# ./checksetup.pl


    Output (alcune righe sono state eliminate)

    ...
    ...
    Aggiunta nuova tabella bz_schema...
    Inizializzazione bz_schema...
    Creazione di tabelle...
    Conversione della dimensione massima di attach_data a 100G. ..
    Impostazione delle scelte per i campi a discesa standard:
       priority bug_status rep_platform risoluzione bug_severity op_sys
    Creazione della directory ./data...
    ...
    . ..
    Precompilazione dei modelli... completata.
    Correzione dei permessi dei file...
    Inizializzazione delle "Modifiche dell'albero delle dipendenze" email_setting ...
    Inizializzazione delle "Modifiche del prodotto/componente" email_setting . ..
    Contrassegno degli stati di bug chiusi come tali...
    Creazione della classificazione predefinita 'Non classificato'...
    Impostazione di chiavi esterne...
    Impostazione del flusso di lavoro dello stato predefinito. ..
    Creazione di gruppi predefiniti...
    Impostazione delle preferenze utente...

    Sembra che non sia ancora stato configurato un amministratore. O questa è
    la prima volta che usi Bugzilla, oppure i privilegi del tuo amministratore
    potrebbero essere stati eliminati accidentalmente.

    Inserisci l'indirizzo e-mail dell'amministratore:


    Ora segui le istruzioni e finalizza la configurazione (usa i tuoi valori per le risposte qui!):

    Inserisci l'indirizzo e-mail dell'amministratore:[email protected]
    Inserisci il vero nome dell'amministratore:Der PCFreak
    Inserisci una password per l'account amministratore:adminpassword
    Ridigita la password per verifica:adminpassword
    [email protected] è ora configurato come amministratore.


    Quando tutto è andato bene dovresti vedere:

    Creazione del prodotto fittizio iniziale 'TestProduct'...

    Ora che hai installato Bugzilla, dovresti visitare la pagina 'Parametri'
    (collegata nel footer dell'account amministratore) per assicurarti
    è impostato come desideri - ciò include l'impostazione dell'opzione 'urlbase' sull'
    URL corretto.
    checksetup.pl completo.


    A questo punto abbiamo quasi finito. Esegui la seguente riga per commentare una riga nel file .htaccess creato dallo script di installazione di Bugzilla:

    [[email protetta] bugzilla]# sed -i 's/^Options -Indexes$/#Options -Indexes/g' ./.htaccess

    Configura Apache per ospitare la nostra installazione di Bugzilla

    Apache non sa ancora nulla di Bugzilla. Quindi creiamo il file /etc/httpd/conf.d/bugzilla.conf con il seguente contenuto per presentare il nostro sito Web Bugzilla al httpd.service.

    #/etc/httpd/conf.d/bugzilla.conf
    <VirtualHost *:80>

    DocumentRoot /var/www/html/bugzilla/
    </VirtualHost>
    <Directory /var/www/html/bugzilla>
    AddHandler cgi-script .cgi
    Options +Indexes +ExecCGI
    DirectoryIndex index.cgi
    AllowOverride Limit FileInfo Indexes
    </Directory>


    Dopo che il file è stato creato, riavviamo Apache affinché le modifiche abbiano effetto:

    [[email protected] bugzilla]# systemctl riavvia httpd.service

    Torna all'utente normale

    Lavorare come root non è più necessario, puoi usare sudo ora se hai bisogno dei privilegi di root. Quindi esegui il seguente comando per uscire dalla shell di root:

    [[email protetta] bugzilla]# uscita
    [[email protetta] ~]$

    Testa l'installazione di Bugzilla con il tuo browser

    Usa un browser e apri http://ip-of-your-server/ (sostituisci ip-of-your-server con l'indirizzo IP del tuo server). Ora dovresti vedere la pagina di Bugzilla invece della pagina di test di Apache predefinita.
    Ora puoi accedere con le credenziali che hai fornito allo script di installazione di Bugzilla. In questo How-To questo era:

    Indirizzo email:[email protetta]
    Password     :adminpassword


    Voilà! Ora hai un'installazione Bugzilla 5.0 funzionante su CentOS 7. Ora puoi continuare a configurare i dettagli di Bugzilla all'interno dell'interfaccia web di Bugzilla.


    Cent OS
    1. Come installare PHP 7, 7.2 e 7.3 su CentOS 7

    2. Come installare Java 11 e 12 su CentOS 7

    3. Come installare Wine 4.0 su CentOS 7

    4. Come installare Vim 8.2 su CentOS 7

    5. Come installare Bugzilla su CentOS 6

    Come installare Java su CentOS 7

    Come installare Ruby su CentOS 7

    Come installare PostgreSQL su CentOS 7

    Come installare Go su CentOS 7

    Come installare R su CentOS 7

    Come installare R su CentOS 8