GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

Installieren und sichern Sie phpMyAdmin unter CentOS 8

phpMyAdmin ist ein kostenloses Open-Source-Tool zur Verwaltung von MySQL- und MariaDB-Servern über eine webbasierte Schnittstelle. Mit phpMyAdmin können Sie Datenbanken und Benutzer erstellen und verwalten, SQL-Anweisungen ausführen, Daten importieren und exportieren und Datenbankaktivitäten wie das Erstellen, Löschen von Tabellen, Spalten, Indizes, Berechtigungen und vieles mehr durchführen. phpMyAdmin ist eines der beliebtesten und am weitesten verbreiteten Verwaltungstools, insbesondere für Webhosting-Dienste.

Funktionen

  • Bietet eine einfache und benutzerfreundliche Webschnittstelle.
  • Daten aus CSV und SQL importieren.
  • Unterstützt die meisten MySQL-Funktionen, einschließlich Erstellen, Kopieren, Löschen, Umbenennen, Löschen und Ändern von Datenbanken, Tabellen, Feldern und Indizes.
  • Ermöglicht Ihnen, Daten in verschiedene Formate wie PDF, CSV, SQL, XML und viele mehr zu exportieren.
  • Mehrere Server verwalten.
  • Erstellen komplexer Abfragen mit Query-by-Example (QBE).

In diesem Tutorial zeigen wir Ihnen, wie Sie phpMyAdmin auf einem CentOS 8-Server installieren und sichern.

Anforderungen

  • Ein Server mit CentOS 8.
  • Auf dem Server ist ein Root-Passwort konfiguriert.

LAMP-Server installieren

Zuerst müssen Sie Apache, MariaDB, PHP und andere PHP-Bibliotheken auf Ihrem Server installieren. Sie können alle mit dem folgenden Befehl installieren:

dnf install httpd mariadb-server php php-pdo php-pecl-zip php-json php-common php-fpm php-mbstring php-cli php-mysqlnd php-json php-mbstring wget unzip

Sobald alle Pakete installiert sind, starten Sie den Apache- und MariaDB-Dienst und ermöglichen Sie ihnen, nach dem Systemneustart mit dem folgenden Befehl zu starten:

systemctl start httpd
systemctl start mariadb
systemctl enable httpd
systemctl enable mariadb

Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

MariaDB konfigurieren

Standardmäßig ist MariaDB nicht gesichert. Sie müssen es also zuerst sichern. Sie können dies tun, indem Sie das Skript mysql_secure_installation ausführen:

mysql_secure_installation

Beantworten Sie alle Fragen wie unten gezeigt:

Root-Passwort setzen? [J/n] JNeues Passwort:Anonyme Benutzer entfernen? [J/n] YRoot-Anmeldung aus der Ferne verbieten? [J/n] YTestdatenbank und Zugriff darauf entfernen? [J/n] YBerechtigungstabellen jetzt neu laden? [J/n] Ja

Sobald Sie fertig sind, sollten Sie die folgende Ausgabe sehen:

 ... Erfolgreich! Aufräumen...Fertig! Wenn Sie alle oben genannten Schritte ausgeführt haben, sollte Ihre MariaDB-Installation jetzt sicher sein. Vielen Dank, dass Sie MariaDB verwenden!

An diesem Punkt ist Ihre MariaDB-Installation gesichert.

Installieren Sie phpMyAdmin

Standardmäßig ist phpMyAdmin nicht im Standard-Repository von CentOS 8 verfügbar. Sie müssen also die neueste Version von phpMyAdmin von der offiziellen Website herunterladen. Sie können es mit dem folgenden Befehl herunterladen:

wget https://files.phpmyadmin.net/phpMyAdmin/4.9.2/phpMyAdmin-4.9.2-all-languages.zip

Entpacken Sie die heruntergeladene Datei nach dem Herunterladen mit dem folgenden Befehl:

phpMyAdmin-4.9.2-all-languages.zip entpacken

Verschieben Sie als Nächstes den extrahierten Inhalt wie unten gezeigt in das Verzeichnis /usr/share:

mv phpMyAdmin-4.9.2-all-languages ​​/usr/share/phpmyadmin

Wechseln Sie als Nächstes in das Verzeichnis /usr/share/phpmyadmin und benennen Sie die Datei in config.sample.inc.php um:

cd /usr/share/phpmyadmin
mv config.sample.inc.php config.inc.php

Als nächstes öffnen Sie die Datei mit Ihrem bevorzugten Texteditor wie unten gezeigt:

nano config.inc.php

Ändern Sie die folgende Zeile:

$cfg['blowfish_secret'] ='dein-geheimes-passwort';

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Importieren Sie dann die create_tables.sql mit dem folgenden Befehl:

mysql  

Geben Sie Ihr Root-Passwort ein, wenn Sie zum Importieren der Tabelle aufgefordert werden.

Erstellen Sie als Nächstes ein tmp-Verzeichnis für phpmyadmin und geben Sie die entsprechenden Berechtigungen:

mkdir /usr/share/phpmyadmin/tmp
chown -R apache:apache /usr/share/phpmyadmin
chmod 777 /usr/share/phpmyadmin/tmp

Apache für phpMyAdmin konfigurieren

Als Nächstes müssen Sie eine Konfigurationsdatei für den virtuellen Apache-Host für phpMyAdmin erstellen. Sie können es mit dem folgenden Befehl erstellen:

nano /etc/httpd/conf.d/phpmyadmin.conf

Fügen Sie die folgenden Zeilen hinzu:

Alias ​​/phpmyadmin /usr/share/phpmyadmin AddDefaultCharset UTF-8  # Apache 2.4  Alle gewährten    # Apache 2.2 Order Deny,Allow Deny from All Allow from 127.0.0.1 Allow from ::1   # Apache 2.4  Erfordern alle gewährten    # Apache 2.2 Order Deny,Allow Deny from All Allow from 127.0.0.1 Allow from ::1  

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Starten Sie dann den Apache-Dienst mit dem folgenden Befehl neu:

systemctl startet httpd neu

Sie können den Status des Apache mit dem folgenden Befehl überprüfen:

systemctl-Status httpd

Sie sollten die folgende Ausgabe sehen:

? httpd.service - Der Apache HTTP-Server Geladen:geladen (/usr/lib/systemd/system/httpd.service; aktiviert; Herstellervoreinstellung:deaktiviert) Drop-In:/usr/lib/systemd/system/httpd.service.d ??php-fpm.conf Aktiv:aktiv (läuft) seit Mi 2019-12-18 01:07:52 EST; Vor 6s Dokumente:man:httpd.service(8) Haupt-PID:5636 (httpd) Status:„Gestartet, hört auf:Port 80“ Aufgaben:213 (Grenze:25044) Speicher:28,7 MB CGroup:/system.slice/httpd .service ??5636 /usr/sbin/httpd -DFOREGROUND ??5639 /usr/sbin/httpd -DFOREGROUND ??5640 /usr/sbin/httpd -DFOREGROUND ??5641 /usr/sbin/httpd -DFOREGROUND ??5642 / usr/sbin/httpd -DFOREGROUNDDec 18 01:07:52 centos8 systemd[1]:Apache HTTP Server gestoppt.Dec 18 01:07:52 centos8 systemd[1]:Apache HTTP Server gestartet ... Dec 18 01:07:52 centos8 httpd[5636]:AH00558:httpd:Der vollqualifizierte Domänenname des Servers konnte mithilfe von fe80::200:d0>Dec 18 nicht zuverlässig ermittelt werden. 01:07:52 centos8 httpd[5636]:Server konfiguriert, lauscht :port 80Dec 18 01:07:52 centos8 systemd[1]:Apache HTTP Server gestartet.

Konfigurieren Sie SELinux und die Firewall

Standardmäßig ist SELinux in CentOS 8 aktiviert. Daher müssen Sie SELinux konfigurieren, damit phpMyAdmin korrekt funktioniert.

Installieren Sie zuerst das Paket policycoreutils-python-utils, um eine SELinux-Umgebung mit dem folgenden Befehl zu verwalten:

dnf install policycoreutils-python-utils

Aktivieren Sie als Nächstes den Zugriff auf das Verzeichnis /usr/share/phpmyadmin mit dem folgenden Befehl:

semanage fcontext -a -t httpd_sys_rw_content_t '/usr/share/phpmyadmin/'
semanage fcontext -a -t httpd_sys_rw_content_t "/usr/share/phpmyadmin/tmp(/.*)?"

Gehen Sie nun durch alle Dateien in Ihrem phpmyadmin-Verzeichnis, indem Sie den folgenden Befehl ausführen:

restorecon -Rv '/usr/share/phpmyadmin/'

Als Nächstes müssen Sie eine Firewall-Regel erstellen, um den HTTP-Dienst von externen Netzwerken zuzulassen. Sie können es mit dem folgenden Befehl zulassen:

firewall-cmd --permanent --add-service=http
firewall-cmd --reload

phpMyAdmin ist nun installiert und konfiguriert. Jetzt ist es Zeit zu überprüfen, ob es funktioniert oder nicht.

Öffnen Sie Ihren Webbrowser und geben Sie die URL http://your-server-ip/phpmyadmin ein. Sie werden auf die folgende Seite weitergeleitet:

Sichern Sie phpMyAdmin

Zu diesem Zeitpunkt funktioniert die phpMyAdmin-Instanz ordnungsgemäß. Es ist jedoch eine wichtige Aufgabe für Sie, Ihre phpMyAdmin-Instanz vor der Außenwelt zu schützen. In diesem Abschnitt zeigen wir Ihnen, wie Sie Ihre phpMyAdmin-Instanz sichern.

Erlaube phpMyAdmin von einer bestimmten IP

Zuerst müssen Sie Ihr phpMyAdmin so konfigurieren, dass es nur von der IP-Adresse Ihrer Heimverbindung zugänglich ist.

Sie können es konfigurieren, indem Sie die Datei /etc/httpd/conf.d/phpmyadmin.conf bearbeiten:

nano /etc/httpd/conf.d/phpmyadmin.conf

Suchen Sie die folgenden Zeilen:

  Erfordern alle gewährten 

Und ersetzen Sie sie durch Folgendes:

 Require ip your-home--connection-ip-address Require ip ::1

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

Zusätzliche Authentifizierungsebene konfigurieren

Es ist eine gute Idee, Ihr phpmyadmin-Verzeichnis mit einem Passwort zu schützen, indem Sie eine einfache Authentifizierung einrichten.

Erstellen Sie dazu eine neue Authentifizierungsdatei mit dem htpasswd-Tool wie unten gezeigt:

mkdir /etc/phpmyadmin
htpasswd -c /etc/phpmyadmin/.htpasswd admin

Sie werden aufgefordert, Ihr Admin-Passwort wie unten gezeigt einzugeben:

Neues Passwort:Neues Passwort erneut eingeben:Passwort für Benutzer admin hinzufügen

Als nächstes müssen Sie Apache konfigurieren, um die .htpasswd-Datei zu verwenden. Sie können dies tun, indem Sie die Datei /etc/httpd/conf.d/phpmyadmin.conf.

bearbeiten
nano /etc/httpd/conf.d/phpmyadmin.conf

Fügen Sie die folgenden Zeilen unterhalb der Zeile „AddDefaultCharset UTF-8“ hinzu:

 Optionen +FollowSymLinks +Multiviews +Indizes AllowOverride None AuthType basic AuthName "Authentication Required" AuthUserFile /etc/phpmyadmin/.htpasswd Require valid-user

Speichern Sie die Datei und starten Sie den Apache-Dienst neu, damit die Änderungen wirksam werden:

systemctl startet httpd neu

Zugriff auf phpMyAdmin

Jetzt ist Ihre phpMyAdmin-Instanz mit einer zusätzlichen Sicherheitsebene gesichert. Öffnen Sie Ihren Webbrowser und geben Sie die URL http://your-server-ip/phpmyadmin ein. Sie werden aufgefordert, die Anmeldeinformationen des Benutzers einzugeben, den Sie zuvor erstellt haben, wie unten gezeigt:

Geben Sie Ihren Admin-Benutzernamen und Ihr Passwort ein und klicken Sie dann auf die Schaltfläche OK. Sie werden zur Anmeldeseite von phpMyAdmin weitergeleitet:

Geben Sie nun Ihre Anmeldeinformationen für den MySQL-Administrator ein und klicken Sie auf die Schaltfläche Los. Sie sollten die folgende Seite sehen:

Schlussfolgerung

Herzliche Glückwünsche! Sie haben phpMyAdmin erfolgreich auf dem CentOS 8-Server installiert und gesichert. Sie können jetzt Datenbanken, Benutzer und Tabellen erstellen und diese über die webbasierte Oberfläche verwalten. Fühlen Sie sich frei, mich zu fragen, wenn Sie irgendwelche Fragen haben.


Cent OS
  1. Installieren Sie MariaDB 10.0 auf CentOS 6

  2. So installieren und sichern Sie MariaDB unter Debian 11

  3. Installieren Sie MariaDB auf CentOS 6.4

  4. Installieren Sie Magento auf CentOS 7 mit Nginx, PHP-FPM und MariaDB

  5. So installieren und sichern Sie MongoDB 4 in CentOS 8

2 Möglichkeiten zur Installation von MariaDB auf CentOS 7

Installation und Konfiguration von PhpMyAdmin mit Nginx unter CentOS 7

So installieren und konfigurieren Sie Cacti unter CentOS 7

So installieren Sie phpMyAdmin unter CentOS 8

So installieren und sichern Sie phpMyAdmin unter CentOS 8

So installieren und konfigurieren Sie MariaDB in CentOS / RHEL 7