phpMyAdmin
 sql >> Datenbank >  >> Database Tools >> phpMyAdmin

Installation von phpMyAdmin mit Apache auf CentOS 7

phpMyAdmin ist ein kostenloses Open-Source-Verwaltungstool für MySQL und MariaDB. Als tragbare Webanwendung, die hauptsächlich in PHP geschrieben wurde, ist sie zu einem der beliebtesten MySQL-Verwaltungstools geworden, insbesondere für Webhosting-Dienste. In dieser Anleitung installieren wir phpMyAdmin mit Apache auf CentOS 7.

Eine wichtige Voraussetzung für die Verwendung dieses Handbuchs ist die Installation eines LAMP-Stacks (Linux, Apache, MariaDB und PHP) auf Ihrem CentOS 7-Server. Der LAMP-Stack ist die Plattform, die für unsere phpMyAdmin-Schnittstelle verwendet wird (MariaDB ist auch die Datenbankverwaltungssoftware, die wir verwalten möchten). Wenn Sie noch keine LAMP-Installation auf Ihrem Server haben, klicken Sie hier zum Lesen unser Tutorial zur Installation von LAMP unter CentOS 7.

Schritt 1:EPEL-Repository hinzufügen:
Wir müssen das EPEL Repo (Extra Packages for Enterprise Linux) zu unserem Server hinzufügen, bevor wir mit der Installation fortfahren, da es viele zusätzliche Pakete enthält, einschließlich des phpMyAdmin-Pakets, nach dem wir suchen. Geben Sie zur Installation den folgenden Befehl ein:

sudo yum install epel-release

Schritt 2:Installieren Sie phpMyAdmin:
Geben Sie den folgenden Befehl ein, um das phpMyAdmin-Paket mit dem yum-Paketsystem zu installieren, gefolgt von y, um fortzufahren:

sudo yum install phpmyadmin

Nach erfolgreicher Installation sollten Sie ein ähnliches Ergebnis wie unten gezeigt erhalten:

Die Installation umfasst eine Apache-Konfigurationsdatei, die im entsprechenden Verzeichnis abgelegt wurde. Wir müssen diese Konfigurationsdatei ändern, damit unsere Installation perfekt für unsere Anforderungen funktioniert.

Öffnen Sie die phpMyAdmin.conf in /etc/httpd Datei im Texteditor (nano in dieser Anleitung), um ein paar Änderungen vorzunehmen:

sudo nano /etc/httpd/conf.d/phpMyAdmin.conf

Derzeit ist das Setup in der Konfigurationsdatei so konfiguriert, dass der Zugriff auf Verbindungen verweigert wird, die nicht vom Server selbst hergestellt werden. Da wir unseren Server aus der Ferne (über ssh) auswerten, müssen wir einige Zeilen ändern, um die IP-Adresse Ihrer Heimverbindung anzugeben.

Der erste Speicherort ist <Directory /usr/share/phpMyAdmin/> Abschnitt wie unten gezeigt:

Ändern Sie alle Zeilen, die Require ip 127.0.0.1 lauten oder Allow from 127.0.0.1 um auf die IP-Adresse Ihres Heimanschlusses zu verweisen.

Hinweis: Wenn Sie Hilfe beim Finden der IP Ihrer Heimverbindung benötigen, klicken Sie hier, um dies zu überprüfen.

Der zweite Speicherort ist <Directory /usr/share/phpMyAdmin/setup/> Abschnitt wie unten gezeigt:

Ändern Sie auch alle Zeilen, die Require ip 127.0.0.1 lauten oder Allow from 127.0.0.1 um auf die IP-Adresse Ihres Heimanschlusses zu verweisen.

Hinweis: Die IP-Adresse Ihres Heimanschlusses unterscheidet sich von der IP-Adresse Ihres VPS.

Nachdem Sie die Konfigurationen vorgenommen haben, starten Sie den Apache-Webserver neu, indem Sie Folgendes eingeben:

sudo systemctl restart httpd.service

Um auf die Benutzeroberfläche zuzugreifen, rufen Sie in Ihrem Webbrowser Ihre öffentliche IP-Adresse oder den Domänennamen des Servers auf, gefolgt von /phpMyAdmin:

http://server_domain_or_IP/phpMyAdmin 

Melden Sie sich mit dem Root-Benutzernamen und dem Administratorkennwort, das Sie während der MySQL-Installation eingerichtet haben, bei der phpmyadmin-Oberfläche an. Nach dem Einloggen sieht die Benutzeroberfläche wie im Screenshot unten aus:

SICHERUNG IHRER PHPMYADMIN-INSTANZ

Das Sichern Ihres phpmyadmin ist wichtig, um unbefugten Zugriff zu verhindern. Eine einfache Möglichkeit, dies zu tun, besteht darin, den Speicherort der Schnittstelle von /phpMyAdmin in etwas anderes zu ändern, um automatisierte Bot-Brute-Force-Versuche zu verhindern.

Öffnen Sie die Konfigurationsdatei mit dem folgenden Befehl:

sudo nano /etc/httpd/conf.d/phpMyAdmin.conf

Die zwei Zeilen darunter sind die Standard-Aliase, die uns Inhalte aus /usr/share/phpMyAdmin bereitstellen Standort, wenn wir auf den Domainnamen oder die IP-Adresse unserer Website zugreifen, gefolgt von entweder /phpMyAdmin oder /phpmyadmin .

Alias /phpMyAdmin /usr/share/phpMyAdmin
Alias /phpmyadmin /usr/share/phpMyAdmin

Wir werden diese Standard-Aliase aufgrund der hohen Rate, mit der sie von Bots und böswilligen Benutzern angegriffen werden, deaktivieren. Aus Sicherheitsgründen sollten wir uns für unseren eigenen Alias ​​entscheiden und dabei diese beiden Regeln berücksichtigen:

  • Es sollte nicht den Zweck der URL-Position angeben.
  • Es sollte leicht zu merken, aber nicht leicht zu erraten sein.

In dieser Anleitung verwenden wir /somethingelse .

Um unsere Änderungen anzuwenden, werden wir die vorhandenen Zeilen auskommentieren (Sie können sie vollständig entfernen) und unsere eigenen hinzufügen:

#Alias /phpMyAdmin /usr/share/phpMyAdmin
#Alias /phpmyadmin /usr/share/phpMyAdmin
Alias /somethingelse /usr/share/phpMyAdmin

Speichern und schließen Sie die Datei und starten Sie dann httpd mit dem folgenden Befehl neu:

sudo systemctl restart httpd.service

Wenn Sie den vorherigen Speicherort Ihrer phpMyAdmin-Installation besuchen, erhalten Sie einen 404-Fehler:

http://server_domain_or_IP/phpMyAdmin

http://server_domain_or_IP/nothingtosee

Sie können phpMyAdmin auch sichern, indem Sie ein Gateway vor der gesamten Anwendung platzieren, indem Sie Apaches eingebauten .htaccess verwenden Authentifizierungs- und Autorisierungsfunktionen.

Zunächst müssen wir die Verwendung von .htaccess-Dateiüberschreibungen aktivieren, indem wir unsere Apache-Konfigurationsdatei bearbeiten. Öffnen Sie die phpmyadmin.conf mit dem folgenden Befehl:

sudo nano /etc/httpd/conf.d/phpMyAdmin.conf 

Fügen Sie AllowOverride All hinzu am Ende von <Directory /usr/share/phpmyadmin> Abschnitt der Konfigurationsdatei wie unten gezeigt:

Speichern Sie die Datei, bevor Sie sie schließen, und starten Sie dann Apache mit dem folgenden Befehl neu:

sudo systemctl restart apache2

Nachdem wir die Verwendung von .htaccess aktiviert haben, müssen wir die Datei erstellen, um die Sicherheit vollständig zu implementieren, indem wir den folgenden Befehl eingeben:

sudo nano /usr/share/phpmyadmin/.htaccess

AuthType Basic
AuthName "Restricted Files"
AuthUserFile /etc/phpmyadmin/.htpasswd
Require valid-user

Weitere Informationen finden Sie unter htaccess hier.

Geben Sie den folgenden Befehl ein, um das Passwort zu htaccess hinzuzufügen Datei:

sudo htpasswd -c /etc/httpd/pma_pass username

Um weitere Benutzer zur Authentifizierung hinzuzufügen, geben Sie denselben Befehl erneut ein, diesmal jedoch ohne -c Flag und mit einem neuen Benutzernamen:

sudo htpasswd /etc/httpd/pma_pass seconduser

Damit werden Sie jedes Mal, wenn Sie auf phpMyAdmin auf Ihrer Domain zugreifen, zur Eingabe des zusätzlichen Kontonamens und Passworts aufgefordert, die Sie gerade wie unten gezeigt konfiguriert haben:
Damit werden Sie jedes Mal, wenn Sie auf phpMyAdmin auf Ihrer Domain zugreifen, dazu aufgefordert den zusätzlichen Kontonamen und das Kennwort, die Sie gerade wie unten gezeigt konfiguriert haben:

Nachdem Sie das Apache-Authentifizierungspasswort eingegeben haben, werden Sie zur ursprünglichen phpMyAdmin-Authentifizierungsseite weitergeleitet, um Ihre anderen Anmeldeinformationen einzugeben.