So installieren Sie phpIPAM unter Ubuntu 16.04

Einführung

Wenn Ihre Infrastruktur wächst, steigt möglicherweise auch die Anzahl der von Ihnen verwendeten IP-Adressen so stark an, dass Sie sich nicht mehr nur auf Ihren Arbeitsspeicher verlassen können, um alle zu verwalten. Zu diesem Zeitpunkt benötigen Sie ein Tool, mit dem Sie den Überblick behalten können.

Tabellenkalkulationen und Nur-Text-Dateien sind zwar Low-Tech-Lösungen, die Sie schnell implementieren können, sie können jedoch auch zu umständlich sein, wenn Sie mit großen Pools von IP-Adressen arbeiten oder wenn Sie versuchen, mehrere Datenpunkte um jede Adresse herum zu verfolgen.

phpIPAM, ein dediziertes Tool für die Verwaltung von IP-Adressen, geht weit über die technisch einfachen Optionen hinaus und bietet automatische Ping-Scans und Statusberichte, mit denen Sie sehen können, welche Ihrer Hosts aktiv und welche nicht aktiv sind , E-Mail-Benachrichtigungen über Änderungen an den überwachten Hosts und andere Funktionen, die die Verwaltung der Infrastruktur erheblich vereinfachen.

In diesem Handbuch installieren und konfigurieren Sie phpIPAM auf einem Linux-, Apache-, MySQL- und PHP-Stack (LAMP), der unter Ubuntu 16.04 ausgeführt wird.

Voraussetzungen

Bevor Sie beginnen, benötigen Sie:

Schritt 1 - Apache konfigurieren

Standardmäßig verwendet phpIPAM in seiner URL-Struktur query strings, um Daten von einem Teil der Anwendung an einen anderen zu übergeben. Abfragezeichenfolgen werden an eine URL mit einem "? +" Angehängt und enthalten ein oder mehrere durch " & +" getrennte Feld-Wert-Paare.

Obwohl für die Installation nicht unbedingt erforderlich, unterstützt phpIPAM URL-rewriting über das Apache-Modul + mod_rewrite +, das Abfragezeichenfolgen in lesbarere und benutzerfreundlichere URLs übersetzt.

Wenn Sie + mod_rewrite + nicht bereits in https://www.digitalocean.com/community/tutorials/how-to-secure-apache-with-let-s-encrypt-on-ubuntu-16-04 aktiviert haben [Sichern Sie Ihre Apache-Installation mit einem TLS / SSL-Zertifikat] Voraussetzung für die Umleitung aller HTTP-Anforderungen an HTTPS ist, dass Sie mit dem Dienstprogramm "+ a2enmod " von Apache jetzt " mod_rewrite +" aktivieren, damit Sie das URL-Neuschreiben in Schritt 2 aktivieren können.

sudo a2enmod rewrite

Dieser Befehl erstellt eine symbolische Verknüpfung zu "+ / etc / apache2 / mods-available / rewrite.load " in " / etc / apache2 / mods-enabled / rewrite / +", wodurch das Modul beim nächsten Start von Apache aktiviert wird.

Wenn + mod_rewrite + bereits aktiviert war, lautet die Ausgabe:

Output of sudo a2enmod rewriteModule rewrite already enabled

Andernfalls werden Sie in der Ausgabe darüber informiert, dass der Symlink erstellt wurde und Sie Apache neu starten müssen, um die Änderung zu aktivieren.

Output of sudo a2enmod rewriteEnabling module rewrite.
To activate the new configuration, you need to run:
 service apache2 restart

Obwohl Apache jetzt + mod_rewrite + beim nächsten Start des Webservers aktiviert, müssen Sie Ihre Konfiguration des virtuellen phpIPAM-Hosts noch ändern, um + mod_rewrite + für phpIPAM verfügbar zu machen. Starten Sie Apache also noch nicht neu.

Öffnen Sie stattdessen die Apache-Konfigurationsdatei, die Sie in den Voraussetzungen für phpIPAM erstellt haben.

sudo nano /etc/apache2/sites-available/

Fügen Sie die folgenden Zeilen in die Konfigurationsdatei unter dem Abschnitt + DocumentRoot + ein.

phpipam.conf

...
   <Directory /var/www/
           Options FollowSymLinks
           AllowOverride all
           Require all granted
   </Directory>
...
  • + Directory + ist der Ort auf dem Server, an dem die Direktiven angewendet werden. Dies sollte das Verzeichnis sein, in das Sie phpIPAM installieren möchten. Wenn Sie dem Apache virtual hosts guide in den Voraussetzungen gefolgt sind, ist dies ist "+ / var / www / +".

  • + Options FollowSymLinks + weist Apache an, symbolischen Links in diesem Verzeichnis zu folgen. Dies ist die Standardeinstellung.

  • "+ AllowOverride all " bedeutet, dass jede Anweisung in einer " .htaccess +" - Datei in diesem Verzeichnis eine entsprechende globale Anweisung überschreiben sollte.

  • + Alles Erlauben + weist Apache an, eingehende Anfragen von allen Hosts zuzulassen.

Speichern und schließen Sie die Datei, um fortzufahren.

Testen Sie nun die Konfigurationsänderungen, bevor Sie Apache neu starten.

sudo apache2ctl configtest

Wenn in der Ausgabe "+ Syntax OK +" angezeigt wird, können Sie fortfahren. Lesen Sie andernfalls die vorherigen Anweisungen und befolgen Sie die Anweisungen auf dem Bildschirm, um weitere Informationen zu erhalten.

Starten Sie Apache neu, um "+ mod_rewrite +" zu aktivieren und die neue Konfiguration zu aktivieren.

sudo systemctl restart apache2

Da Sie phpIPAM noch nicht installiert haben, ist unter "+ https: // +" nichts zu sehen. Laden Sie jetzt phpIPAM herunter und installieren Sie es.

Schritt 2 - phpIPAM installieren

Die offizielle Installationsanweisungen schlagen zwei Methoden zum Installieren von phpIPAM vor: Herunterladen eines Tarballs von das SourceForge-Repository des Projekts oder Klonen des Projekts von seinem GitHub-Repository. Verwenden Sie die letztere Methode, um zukünftige Updates zu vereinfachen.

Standardmäßig klont Git nur dann in ein vorhandenes Verzeichnis, wenn dieses Verzeichnis leer ist. Verwenden Sie also den Befehl + ls +, um den Inhalt des Verzeichnisses anzuzeigen, das Sie in Schritt 1 für Apache konfiguriert haben.

ls /var/www/

Wenn das Verzeichnis nicht leer ist, verwenden Sie basic Linux-Navigations- und Dateiverwaltungsbefehle , um es jetzt auszuräumen. + mv + verschiebt den Inhalt an einen anderen Ort und + rm + löscht ihn vollständig.

Klonen Sie nun das Git-Projekt in das Verzeichnis.

git clone https://github.com/phpipam/phpipam.git /var/www/

Die Ausgabe bestätigt den Speicherort, an den Sie klonen, und liefert dann einen Echtzeitbericht über den Vorgang, einschließlich der Anzahl der Objekte, von denen Git erwartet, dass sie kopiert werden, sowie der Anzahl der tatsächlich kopierten Objekte.

Output of git cloneCloning into /var/www/ ...
remote: Counting objects: 14234, done.
remote: Compressing objects: 100% (50/50), done.
remote: Total 14234 (delta 27), reused 40 (delta 17), pack-reused 14161
Receiving objects: 100% (14234/14234), 11.38 MiB | 21.30 MiB/s, done.
Resolving deltas: 100% (10066/10066), done.
Checking connectivity... done.

Sie haben jetzt die vollständige phpIPAM-Anwendung auf Ihrem Server, aber es fehlen noch einige PHP-Module, die phpIPAM zum Ausführen benötigt. Installiere sie mit + apt-get.

Diese zusätzlichen Pakete bieten PHP das Modul GNU Multiple Precision für die Arbeit mit Ganzzahlen beliebiger Länge, http://php.net/manual/en /book.mbstring.php[Multibyte String module] für die Behandlung von Sprachen, die nicht in 256 Zeichen ausgedrückt werden können, das PEAR framework für wiederverwendbare PHP-Komponenten und das http: // php.net/manual/en/book.image.php[GD module] für die Bildverarbeitung.

sudo apt-get install php7.0-gmp php7.0-mbstring php-pear php7.0-gd

Starten Sie Apache neu, um die neuen Module verfügbar zu machen.

sudo systemctl restart apache2

Mit den Anwendungsdateien und zusätzlichen Modulen auf dem Server können Sie phpIPAM konfigurieren.

Schritt 3 - Konfiguration von phpIPAM

phpIPAM sucht nach den wichtigsten Konfigurationseinstellungen in einer Datei namens "+ config.php". Obwohl diese Datei nicht standardmäßig vorhanden ist, enthält die Anwendung eine Beispielkonfigurationsdatei, mit der Sie arbeiten können.

Wechseln Sie in das Installationsverzeichnis und erstellen Sie eine Kopie der Beispielkonfigurationsdatei, auf die Sie später zurückgreifen können, wenn ein Problem auftritt.

cd /var/www/
cp config.dist.php config.php

Öffnen Sie die neue Datei zur Bearbeitung.

nano config.php

Suchen Sie nach dem Abschnitt "+ * Datenbankverbindungsdetails". Diese Einstellungen teilen phpIPAM mit, wie eine Verbindung mit der MySQL-Datenbank hergestellt werden soll, in der alle Ihre Daten gespeichert werden.

Da Sie MySQL auf demselben Computer wie phpIPAM installiert haben, können Sie den Wert "+ $ db [" host "] " auf " localhost " setzen. Und da MySQL standardmäßig den Port " 3306 " überwacht, müssen Sie den Wert " $ db [" port "] +" nicht ändern.

Es gibt noch kein MySQL-Datenbank-Setup für phpIPAM, aber in Schritt 4 erstellt das webbasierte Installationsprogramm von phpIPAM eine Datenbank und einen Datenbankbenutzer mit den Werten, die Sie in diese Datei eingeben. Setzen Sie also den Wert "+ $ db [" user "] " auf den Namen des Benutzers, mit dem sich phpIPAM mit MySQL verbinden soll, und setzen Sie den Wert " $ db [" pass "] " auf das gewünschte Passwort phpIPAM, um eine Verbindung zu MySQL herzustellen, und setzen Sie " $ db [" name "] +" auf den Namen, den Sie der MySQL-Datenbank geben möchten.

Die config.php von phpIPAM

<?php

/**
* database connection details
******************************/
$db['host'] = 'localhost';
$db['user'] = '';
$db['pass'] = '';
$db['name'] = '';
$db['port'] = 3306;
...

Zusätzlich zu den vorherigen Einstellungen stehen Ihnen in dieser Datei viele weitere Optionen zur Verfügung. Sie können beispielsweise eine sichere Verbindung zur Datenbank mithilfe eines SSL-Zertifikats konfigurieren, E-Mail-Benachrichtigungen für verschiedene Datenbankereignisse aktivieren und den Debugging-Modus aktivieren, um detailliertere Protokolle zu erstellen. Für eine Basisinstallation können Sie jedoch die restlichen Einstellungen auf ihren Standardwerten belassen.

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

Nachdem Sie die Hauptkonfigurationsdatei für phpIPAM erstellt haben, müssen Sie eine Verbindung zur Weboberfläche herstellen und die Installation abschließen.

Schritt 4 - Erstellen der Datenbank und des Datenbankbenutzers

Der letzte Schritt des Installationsprozesses besteht darin, eine MySQL-Datenbank und einen Benutzer für phpIPAM zu erstellen und ein Administratorkonto für die Weboberfläche von phpIPAM einzurichten. All dies kann über den webbasierten Installationsassistenten von phpIPAM erfolgen.

Navigieren Sie mit Ihrem Browser zu "+ https: /// install". Sie werden auf der phpIPAM-Installationshomepage aufgefordert, den gewünschten Installationstyp auszuwählen. Wenn Sie diesen Bildschirm nicht anzeigen können, vergewissern Sie sich, dass Ihre Firewall den Zugriff auf Port "+ 80 +" nicht blockiert, und wiederholen Sie die vorherigen Schritte, um das Problem zu beheben.

Es gibt drei Optionen auf diesem Bildschirm - * Neue PHP-Installation *, * Migrieren von PHP-Installation * und * Arbeitsinstallation * - jeweils mit einer kurzen Beschreibung des Zwecks. Wenn Sie eine neue phpIPAM-Installation einrichten, klicken Sie auf die Schaltfläche "Neue phpipam-Installation".

image: http: //assets.digitalocean.com/articles/how-to-install-phpipam/installation-step1.png [phpIPAM installieren, Schritt 1]

Auf dem nächsten Bildschirm beschreibt der Assistent den Rest des Installationsprozesses, verweist auf die offizielle Installationsdokumentation für weitere Details und fordert Sie auf, die Art der Datenbankinstallation zu bestimmen Sie möchten durchführen.

Auch hier haben Sie drei Möglichkeiten:

  • * Automatische Datenbankinstallation *: Der Assistent verwendet die Informationen, die Sie in "+ config.php +" in Schritt 3 eingegeben haben, um eine MySQL-Datenbank und einen MySQL-Benutzer zu erstellen.

  • * MySQL-Importanweisungen *: Sie verwenden das MySQL-eigene Dienstprogramm mysqlimport, um die Datenbank aus den von Ihnen bereitgestellten Klartextdateien zu erstellen.

  • * Manuelle Datenbankinstallation *: Der Assistent stellt Ihnen die Standard-SQL-Befehle zur Verfügung, die Sie zum manuellen Erstellen einer neuen phpIPAM-Datenbank benötigen.

Wählen Sie der Einfachheit halber die Option "Vollautomatisch", indem Sie auf die Schaltfläche "Automatische Datenbankinstallation" klicken.

image: http: //assets.digitalocean.com/articles/how-to-install-phpipam/installation-step2.png [phpIPAM installieren, Schritt 2]

Der Assistent fordert Sie nun auf, die Informationen einzugeben, die für die Verbindung mit MySQL erforderlich sind. Dies umfasst die Anmeldeinformationen für den Benutzer, unter dem die Verbindung hergestellt werden soll, den Speicherort der Datenbank und den Namen der Datenbank.

Wenn Sie den Assistenten zum Erstellen einer neuen Datenbank und eines neuen Benutzers benötigen, müssen Sie die Anmeldeinformationen für einen Benutzer eingeben, der über die entsprechenden Berechtigungen verfügt. Ihr MySQL * root * Benutzer ist eine gute Wahl.

Standardmäßig ist der Speicherort der Datenbank auf * localhost * und der Name auf * phpipam * festgelegt. Wenn Sie eine dieser Einstellungen ändern möchten, müssen Sie die in Schritt 3 erstellte Datei "+ config.php +" bearbeiten und den Installationsassistenten neu starten.

Sie können auf zusätzliche Installationsoptionen zugreifen, indem Sie auf die Schaltfläche * Erweiterte Optionen anzeigen * klicken. Hier haben Sie drei weitere Möglichkeiten:

  • * Vorhandene Datenbank löschen * Vor dem Ausführen des Installationsvorgangs versucht der Assistent, eine Datenbank zu löschen, deren Name dem Wert im Feld * MySQL-Datenbankname * entspricht. Dies ist standardmäßig deaktiviert.

  • * Datenbank erstellen * Der Assistent versucht, eine Datenbank mit demselben Namen wie der Wert im Feld * MySQL-Datenbankname * zu erstellen. Dies ist standardmäßig aktiviert.

  • * Erstelle Berechtigungen * Der Assistent versucht, Berechtigungen für die neue Datenbank festzulegen, wobei der Zugriff nur auf den in + config.php + definierten MySQL-Benutzer beschränkt wird. Dies ist standardmäßig aktiviert.

Geben Sie den Benutzernamen und das Kennwort für den MySQL-Benutzer ein, unter dem der Assistent eine Verbindung herstellen soll, lassen Sie die erweiterten Optionen auf ihre Standardwerte eingestellt und klicken Sie auf die Schaltfläche * Install phpipam database *.

image: http: //assets.digitalocean.com/articles/how-to-install-phpipam/installation-step3.png [phpIPAM installieren, Schritt 3]

Sie werden in einer Bestätigungsmeldung darüber informiert, dass der Assistent die Datenbank erfolgreich installiert hat. Wenn Sie dies nicht tun, lesen Sie die Fehlermeldungen des Assistenten, um weitere Hilfe zu erhalten.

Klicken Sie auf * Weiter *, um mit der Installation fortzufahren.

image: http: //assets.digitalocean.com/articles/how-to-install-phpipam/installation-step4.png [phpIPAM installieren, Schritt 4]

Auf diesem Bildschirm fordert Sie der Assistent auf, das Administrator-Benutzerkennwort für die Weboberfläche, den Titel, der oben auf jedem Bildschirm der phpIPAM-Weboberfläche angezeigt werden soll, und die URL für Ihre phpIPAM-Installation festzulegen.

Geben Sie das Administratorkennwort, das Sie verwenden möchten, einen beschreibenden Titel für Ihre phpIPAM-Oberfläche und den vollqualifizierten Domänennamen ein, der auf Ihre phpIPAM-Installation verweist, und klicken Sie dann auf die Schaltfläche "Einstellungen speichern".

image: http: //assets.digitalocean.com/articles/how-to-install-phpipam/installation-step5.png [phpIPAM installieren, Schritt 5]

Sie sollten nun eine Bestätigungsmeldung erhalten, die Sie darüber informiert, dass die Einstellungen erfolgreich gespeichert wurden. Wenn dies nicht der Fall ist, verwenden Sie die Fehlermeldungen des Assistenten, um das Problem zu diagnostizieren.

image: http: //assets.digitalocean.com/articles/how-to-install-phpipam/installation-step6.png [phpIPAM installieren, Schritt 6]

Klicken Sie auf die Schaltfläche * Weiter zum Login *, um zur Startseite Ihrer phpIPAM-Installation zu gelangen, und melden Sie sich mit dem * admin * -Nutzernamen und dem Passwort an, die Sie in das Feld * admin password * eingegeben haben.

Die Installation und Konfiguration von phpIPAM ist nun abgeschlossen, sodass Sie Informationen hinzufügen können, um die von Ihnen überwachten Netzwerke einfacher zu verwalten.

Fazit

In diesem Artikel haben Sie phpIPAM, eine Open-Source-Webanwendung zur Verwaltung von IP-Adressen, installiert und konfiguriert. Sie können jetzt die IP-Adressverwendung sowohl in Ihrer eigenen Infrastruktur als auch in anderen Netzwerken überwachen.

Darüber hinaus können Sie mit phpIPAM Ihre VLANs verfolgen und Ihren Subnetzen zuordnen, ein Inventar Ihrer Netzwerkgeräte mit Informationen wie Gerätetyp und Standort führen und E-Mail-Benachrichtigungen konfigurieren, um über Änderungen in Ihrem Netzwerk informiert zu werden.

Informationen zur Automatisierung von phpIPAM-Programmen und zur Integration in Anwendungen, die Sie selbst schreiben, finden Sie unter die offizielle Dokumentation zur integrierten API von phipIPAM. Informationen zum schnelleren Einstieg in die API finden Sie unter offizielle einführende Tutorials.

Stellen Sie zum Schluss sicher, dass Sie die automated scan settings entweder für eine von Ihnen verwaltete öffentliche Infrastruktur oder für Ihre eigene lokale Infrastruktur überprüfen. Es ist die Host-Scan-Automatisierung, die Ihnen als Systemadministrator oder Entwickler den größten Vorteil bietet.