Wie man die Snipe-IT Asset Management Software unter Debian 9 installiert

Snipe-IT ist eine kostenlose und Open-Source-IT-Asset-Management-Webanwendung, die zur Verfolgung von Lizenzen, Zubehör, Verbrauchsmaterialien und Komponenten verwendet werden kann. Es ist in der Sprache PHP geschrieben und verwendet MySQL, um seine Daten zu speichern. Es handelt sich um eine plattformübergreifende Anwendung, die auf allen gängigen Betriebssystemen wie Linux, Windows und Mac OS X funktioniert. Sie lässt sich problemlos in Active Directory, LDAP integrieren und unterstützt die Zwei-Faktor-Authentifizierung mit Google Authenticator.

In diesem Tutorial erfahren wir, wie man Snipe-IT auf dem Debian 9-Server installiert.

Anforderungen

  • Ein Server mit Debian 9.
  • Ein Nicht-Root-Benutzer mit sudo-Rechten.

Erste Schritte

Vor der Installation von Paketen wird empfohlen, das Systempaket auf die neueste Version zu aktualisieren. Sie können dies tun, indem Sie den folgenden Befehl ausführen:

sudo apt-get update -y
sudo apt-get upgrade -y

Als nächstes starten Sie das System neu, um alle Updates zu übernehmen. Installieren Sie dann andere benötigte Pakete mit dem folgenden Befehl:

sudo apt-get install git curl unzip wget -y

Sobald alle Pakete installiert sind, können Sie mit dem nächsten Schritt fortfahren.

LAMP-Server installieren

Snipe-IT läuft auf dem Apache Webserver, daher müssen Sie LAMP (Apache, MariaDB, PHP) auf Ihrem System installieren.

Zuerst installieren Sie Apache, PHP und andere PHP-Bibliotheken mit dem folgenden Befehl:

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

Sobald alle Pakete installiert sind, starten Sie den Apache-Dienst und aktivieren Sie ihn beim Booten mit dem folgenden Befehl:

sudo systemctl start apache2
sudo systemctl enable apache2

MariaDB installieren und konfigurieren

Snipe-IT verwendet MariaDB zur Speicherung seiner Daten. Daher müssen Sie MariaDB auf Ihrem System installieren. Standardmäßig ist die neueste Version der MariaDB nicht im Debian 9-Repository verfügbar. Sie müssen also das MariaDB-Repository auf Ihrem System installieren.

Fügen Sie zunächst den APT-Schlüssel mit dem folgenden Befehl hinzu:

sudo apt-get install software-properties-common dirmngr -y
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xF1656F24C74CD1D8

Als nächstes fügen Sie das MariaDB-Repository mit dem folgenden Befehl hinzu:

sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://ftp.hosteurope.de/mirror/mariadb.org/repo/10.1/debian stretch main'

Aktualisieren Sie anschließend das Repository mit dem folgenden Befehl:

sudo apt-get update -y

Sobald das Repository aktualisiert ist, können Sie MariaDB mit dem folgenden Befehl installieren:

sudo apt-get install mariadb-server mariadb-client -y

Als nächstes starten Sie den MariaDB-Dienst und aktivieren Sie ihn mit dem folgenden Befehl beim Booten:

sudo systemctl start mysql
sudo systemctl enable mysql

Sie können den Status des MariaDB-Servers mit dem folgenden Befehl überprüfen:

sudo systemctl status mysql

Wenn alles in Ordnung ist, sollten Sie die folgende Ausgabe sehen:

? 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.

Als nächstes sichern Sie Ihre MariaDB, indem Sie das folgende Skript ausführen:

sudo mysql_secure_installation

Beantworten Sie alle Fragen wie unten gezeigt:

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

Sobald MariaDB gesichert ist, melden Sie sich mit dem folgenden Befehl an der MariaDB-Shell an:

mysql -u root -p

Geben Sie Ihr Root-Passwort ein, wenn Sie dazu aufgefordert werden, und erstellen Sie dann eine Datenbank für Snipe-IT mit dem folgenden Befehl:

MariaDB [(none)]> create database snipeitdb character set utf8;

Als nächstes erstellen Sie einen Benutzer für Snipe-IT und vergeben alle Berechtigungen an die Snipe-IT mit dem folgenden Befehl:

MariaDB [(none)]> GRANT ALL PRIVILEGES ON snipeitdb.* TO 'snipeit'@'localhost' IDENTIFIED BY 'password';

Als nächstes leeren Sie die Berechtigungen mit dem folgenden Befehl:

MariaDB [(none)]> flush privileges;

Beenden Sie schließlich die MariaDB-Konsole mit dem folgenden Befehl:

MariaDB [(none)]> quit

Snipe-IT installieren

Sie können die neueste Version der Snipe-IT mit dem folgenden Befehl aus dem Git-Repository herunterladen:

git clone https://github.com/snipe/snipe-it snipe-it

Als nächstes verschieben Sie das heruntergeladene Verzeichnis mit dem folgenden Befehl in das Apache-Wurzelverzeichnis:

sudo mv snipe-it /var/www/

Als nächstes müssen Sie Composer auf Ihrem System installieren. Du kannst es mit dem folgenden Befehl installieren:

curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer

Als nächstes ändern Sie das Verzeichnis auf snipe-it und installieren PHP-Abhängigkeiten mit Composer mit dem folgenden Befehl:

cd /var/www/snipe-it
sudo composer install --no-dev --prefer-source

Erzeugen Sie anschließend den „APP_Key“ mit dem folgenden Befehl:

sudo php artisan key:generate

Sie sollten die folgende Ausgabe sehen:

**************************************
*     Application In Production!     *
**************************************

 Do you really wish to run this command? (yes/no) [no]:
 > yes

Application key [base64:uWh7O0/TOV10asWpzHc0DH1dOxJHprnZw2kSOnbBXww=] set successfully.

Als nächstes müssen Sie MySQL mit dem Standard-Datenbankschema von Snipe-IT füllen. Sie können dies tun, indem Sie den folgenden Befehl ausführen:

sudo php artisan migrate

Geben Sie yes ein, wenn Sie aufgefordert werden zu bestätigen, dass Sie die Migration durchführen möchten:

**************************************
*     Application In Production!     *
**************************************

 Do you really wish to run this command? (yes/no) [no]:
 > yes

Migration table created successfully.

Als nächstes kopieren Sie die sample.env-Datei und nehmen einige Änderungen daran vor:

sudo cp .env.example .env
sudo nano .env

Ändern Sie die folgenden Zeilen:

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'

Speichern und schließen Sie die Datei, wenn Sie fertig sind.

Als nächstes geben Sie die entsprechenden Eigentums- und Dateiberechtigungen mit dem folgenden Befehl an:

sudo chown -R www-data:www-data storage public/uploads
sudo chmod -R 755 storage public/uploads

Apache für Snipe-IT konfigurieren

Als nächstes müssen Sie eine apache Virtual Host Direktive für Snipe-IT erstellen. Sie können dies tun, indem Sie eine snipeit.confDatei im /etc/apache2/sites-availableVerzeichnis erstellen:

sudo nano /etc/apache2/sites-available/snipeit.conf

Füge die folgenden Zeilen hinzu:

<VirtualHost *:80>
ServerAdmin webmaster@example.com
<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>

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Aktivieren Sie dann den virtuellen Host mit dem folgenden Befehl:

sudo a2ensite snipeit.conf

Als nächstes aktivieren Sie PHP mcrypt, mbstring module und Apache rewrite module mit dem folgenden Befehl:

sudo phpenmod mcrypt
sudo phpenmod mbstring
sudo a2enmod rewrite

Starten Sie schließlich den Apache-Webserver neu, um alle Änderungen zu übernehmen:

sudo systemctl restart apache2

Firewall konfigurieren

Standardmäßig läuft Snipe-IT auf Port 80, daher müssen Sie Port 80 durch die Firewall lassen. Standardmäßig ist die UFW-Firewall in Debian 9 nicht installiert, daher müssen Sie sie zuerst installieren. Sie können es installieren, indem Sie einfach den folgenden Befehl ausführen:

sudo apt-get install ufw -y

Sobald UFW installiert ist, können Sie es mit dem folgenden Befehl beim Booten starten:

sudo ufw enable

Als nächstes erlauben Sie Port 80 mit dem folgenden Befehl:

sudo ufw allow 80

Als nächstes laden Sie die UFW-Firewall-Regel mit dem folgenden Befehl neu:

sudo ufw reload

Zugriff auf Snipe-IT

Alles ist jetzt installiert und konfiguriert, es ist an der Zeit, auf die Snipe-IT-Weboberfläche zuzugreifen.

Öffnen Sie Ihren Webbrowser und geben Sie die URL http://example.com ein, Sie werden auf die folgende Seite weitergeleitet:

Snipe-IT Überprüft das System

Die obige Seite führt eine Systemprüfung durch, um sicherzustellen, dass Ihre Konfiguration korrekt aussieht. Klicken Sie anschließend auf die Schaltfläche Create Database Table, um die folgende Seite anzuzeigen:

Datenbanktabelle erstellen

Klicken Sie hier auf die Seite Create User, Sie sollten die folgende Seite sehen:

Benutzer anlegen

Geben Sie hier Ihren Site-Namen, Domänennamen, Admin-Benutzernamen und Ihr Passwort ein, klicken Sie dann auf die Schaltfläche Save User, Sie sollten das Snipe-IT Standard-Dashboard wie unten beschrieben sehen:

Snipe-IT Dashboard

Fazit

Im obigen Tutorial haben wir gelernt, Snipe-IT auf dem Debian 9-Server zu installieren. Wir haben auch gelernt, Snipe-IT über ein Webinterface zu konfigurieren, und ich hoffe, Sie haben jetzt genügend Wissen, um Snipe-IT in Ihrer Produktionsumgebung einzusetzen. Weitere Informationen finden Sie auf der Snipe-IT-Dokumentationsseite.

Das könnte dich auch interessieren …