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.conf
Datei im /etc/apache2/sites-available
Verzeichnis 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:
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:
Klicken Sie hier auf die Seite Create User, Sie sollten die folgende Seite sehen:
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:
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.