Come installare il software di gestione delle risorse Snipe-IT su Debian 9
Su questa pagina
- Requisiti
- Per iniziare
- Installa il server LAMP
- Installa e configura MariaDB
- Installa Snipe-IT
- Configura Apache per Snipe-IT
- Configura firewall
- Accedi a Snipe-IT
- Conclusione
Snipe-IT è un'applicazione web gratuita e open source per la gestione delle risorse IT che può essere utilizzata per tenere traccia di licenze, accessori, materiali di consumo e componenti. È scritto in linguaggio PHP e utilizza MySQL per archiviare i suoi dati. È un'applicazione multipiattaforma che funziona su tutti i principali sistemi operativi come Linux, Windows e Mac OS X. Si integra facilmente con Active Directory, LDAP e supporta l'autenticazione a due fattori con Google Authenticator.
In questo tutorial impareremo come installare Snipe-IT sul server Debian 9.
Requisiti
- Un server che esegue Debian 9.
- Un utente non root con privilegi sudo.
Iniziare
Prima di installare qualsiasi pacchetto, si consiglia di aggiornare il pacchetto di sistema con la versione più recente. Puoi farlo eseguendo il seguente comando:
sudo apt-get update -y
sudo apt-get upgrade -y
Successivamente, riavvia il sistema per applicare tutti gli aggiornamenti. Quindi installa altri pacchetti richiesti con il seguente comando:
sudo apt-get install git curl unzip wget -y
Una volta installati tutti i pacchetti, puoi procedere al passaggio successivo.
Installa LAMP Server
Snipe-IT funziona su server web Apache, quindi dovrai installare LAMP (Apache, MariaDB, PHP) sul tuo sistema.
Innanzitutto, installa Apache, PHP e altre librerie PHP con il seguente comando:
sudo apt-get install apache2 libapache2-mod-php php php-pdo php-mbstring php-tokenizer php-curl php-mysql php-ldap php-zip php-fileinfo php-gd php-dom php-mcrypt php-bcmath -y
Una volta installati tutti i pacchetti, avvia il servizio Apache e abilitalo per l'avvio all'avvio con il seguente comando:
sudo systemctl start apache2
sudo systemctl enable apache2
Installa e configura MariaDB
Snipe-IT utilizza MariaDB per archiviare i propri dati. Quindi dovrai installare MariaDB sul tuo sistema. Per impostazione predefinita, l'ultima versione di MariaDB non è disponibile nel repository Debian 9. Quindi dovrai installare il repository MariaDB sul tuo sistema.
Innanzitutto, aggiungi la chiave APT con il seguente comando:
sudo apt-get install software-properties-common dirmngr -y
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xF1656F24C74CD1D8
Quindi, aggiungi il repository MariaDB usando il seguente comando:
sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://ftp.hosteurope.de/mirror/mariadb.org/repo/10.1/debian stretch main'
Successivamente, aggiorna il repository con il seguente comando:
sudo apt-get update -y
Una volta aggiornato il repository, puoi installare MariaDB con il seguente comando:
sudo apt-get install mariadb-server mariadb-client -y
Successivamente, avvia il servizio MariaDB e abilitalo all'avvio all'avvio con il seguente comando:
sudo systemctl start mysql
sudo systemctl enable mysql
Puoi controllare lo stato del server MariaDB con il seguente comando:
sudo systemctl status mysql
Se tutto va bene, dovresti vedere il seguente output:
? mariadb.service - MariaDB database server
Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2017-12-25 08:41:25 EST; 29min ago
Process: 618 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 615 ExecStartPost=/etc/mysql/debian-start (code=exited, status=0/SUCCESS)
Process: 436 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`/usr/bin/galera_recovery`; [ $? -eq 0 ] && systemc
Process: 429 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 418 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS)
Main PID: 574 (mysqld)
Status: "Taking your SQL requests now..."
Tasks: 27 (limit: 4915)
CGroup: /system.slice/mariadb.service
??574 /usr/sbin/mysqld
Dec 25 08:41:07 debian systemd[1]: Starting MariaDB database server...
Dec 25 08:41:14 debian mysqld[574]: 2017-12-25 8:41:14 140488893776448 [Note] /usr/sbin/mysqld (mysqld 10.1.26-MariaDB-0+deb9u1) starting as p
Dec 25 08:41:25 debian systemd[1]: Started MariaDB database server.
Quindi, proteggi il tuo MariaDB eseguendo il seguente script:
sudo mysql_secure_installation
Rispondi a tutte le domande come mostrato di seguito:
Set root password? [Y/n] n
Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] y
Reload privilege tables now? [Y/n] y
Una volta che MariaDB è protetto, accedi alla shell MariaDB con il seguente comando:
mysql -u root -p
Inserisci la tua password di root quando richiesto, quindi crea un database per Snipe-IT con il seguente comando:
MariaDB [(none)]> create database snipeitdb character set utf8;
Successivamente, crea un utente per Snipe-IT e concedi tutti i privilegi a Snipe-IT con il seguente comando:
MariaDB [(none)]> GRANT ALL PRIVILEGES ON snipeitdb.* TO 'snipeit'@'localhost' IDENTIFIED BY 'password';
Successivamente, svuota i privilegi con il seguente comando:
MariaDB [(none)]> flush privileges;
Infine, esci dalla console MariaDB usando il seguente comando:
MariaDB [(none)]> quit
Installa Snipe IT
Puoi scaricare l'ultima versione di Snipe-IT dal repository Git con il seguente comando:
git clone https://github.com/snipe/snipe-it snipe-it
Quindi, sposta la directory scaricata nella directory principale di Apache con il seguente comando:
sudo mv snipe-it /var/www/
Successivamente, dovrai installare Composer sul tuo sistema. Puoi installarlo con il seguente comando:
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
Successivamente, modifica la directory in snipe-it e installa le dipendenze PHP utilizzando Composer con il seguente comando:
cd /var/www/snipe-it
sudo composer install --no-dev --prefer-source
Successivamente, genera la \APP_Key\ con il seguente comando:
sudo php artisan key:generate
Dovresti vedere il seguente output:
**************************************
* Application In Production! *
**************************************
Do you really wish to run this command? (yes/no) [no]:
> yes
Application key [base64:uWh7O0/TOV10asWpzHc0DH1dOxJHprnZw2kSOnbBXww=] set successfully.
Successivamente, dovrai popolare MySQL con lo schema del database predefinito di Snipe-IT. Puoi farlo eseguendo il seguente comando:
sudo php artisan migrate
Digita yes, quando ti viene chiesto di confermare che desideri eseguire la migrazione:
**************************************
* Application In Production! *
**************************************
Do you really wish to run this command? (yes/no) [no]:
> yes
Migration table created successfully.
Successivamente, copia il file .env di esempio e apporta alcune modifiche:
sudo cp .env.example .env
sudo nano .env
Modifica le seguenti righe:
APP_URL=http://example.com
APP_TIMEZONE=US/Eastern
APP_LOCALE=en
# --------------------------------------------
# REQUIRED: DATABASE SETTINGS
# --------------------------------------------
DB_CONNECTION=mysql
DB_HOST=localhost
DB_DATABASE=snipeitdb
DB_USERNAME=snipeit
DB_PASSWORD=password
DB_PREFIX=null
DB_DUMP_PATH='/usr/bin'
Salva e chiudi il file quando hai finito.
Successivamente, fornisci la proprietà e le autorizzazioni file appropriate con il seguente comando:
sudo chown -R www-data:www-data storage public/uploads
sudo chmod -R 755 storage public/uploads
Configura Apache per Snipe-IT
Successivamente, dovrai creare una direttiva host virtuale Apache per Snipe-IT. Puoi farlo creando il file snipeit.conf
all'interno della directory /etc/apache2/sites-available
:
sudo nano /etc/apache2/sites-available/snipeit.conf
Aggiungi le seguenti righe:
<VirtualHost *:80>
ServerAdmin
<Directory /var/www/snipe-it/public>
Require all granted
AllowOverride All
</Directory>
DocumentRoot /var/www/snipe-it/public
ServerName example.com
ErrorLog /var/log/apache2/snipeIT.error.log
CustomLog /var/log/apache2/access.log combined
</VirtualHost>
Salva e chiudi il file quando hai finito. Quindi, abilita l'host virtuale con il seguente comando:
sudo a2ensite snipeit.conf
Successivamente, abilita PHP mcrypt, mbstring module e Apache rewrite module con il seguente comando:
sudo phpenmod mcrypt
sudo phpenmod mbstring
sudo a2enmod rewrite
Infine, riavvia il server Web Apache per applicare tutte le modifiche:
sudo systemctl restart apache2
Configura firewall
Per impostazione predefinita, Snipe-IT funziona sulla porta 80, quindi dovrai consentire la porta 80 attraverso il firewall. Per impostazione predefinita, il firewall UFW non è installato in Debian 9, quindi sarà necessario installarlo prima. Puoi installarlo semplicemente eseguendo il seguente comando:
sudo apt-get install ufw -y
Una volta installato UFW, abilitalo all'avvio all'avvio con il seguente comando:
sudo ufw enable
Successivamente, consenti la porta 80 utilizzando il seguente comando:
sudo ufw allow 80
Successivamente, ricarica la regola del firewall UFW con il seguente comando:
sudo ufw reload
Accedi a Snipe-IT
Tutto è ora installato e configurato, è il momento di accedere all'interfaccia web di Snipe-IT.
Apri il tuo browser web e digita l'URL http://example.com, verrai reindirizzato alla seguente pagina:

La pagina sopra eseguirà un controllo del sistema per assicurarsi che la configurazione sia corretta. Successivamente, fai clic sul pulsante Crea tabella database, dovresti vedere la seguente pagina:

Qui, fai clic sulla pagina Crea utente, dovresti vedere la seguente pagina:

Qui, fornisci il nome del tuo sito, il nome del dominio, il nome utente dell'amministratore e la password, quindi fai clic sul pulsante Salva utente, dovresti vedere la dashboard predefinita di Snipe-IT come di seguito:

Conclusione
Nel tutorial sopra, abbiamo imparato a installare Snipe-IT sul server Debian 9. Abbiamo anche imparato a configurare Snipe-IT tramite l'interfaccia web. Spero che ora tu abbia abbastanza conoscenze per implementare Snipe-IT nel tuo ambiente di produzione. Per maggiori informazioni puoi fare riferimento alla pagina della documentazione di Snipe-IT.