So richten Sie HTTPS (SSL -Zertifikate) ein, um die Anmeldung von PhpMyAdmin zu sichern

So richten Sie HTTPS (SSL -Zertifikate) ein, um die Anmeldung von PhpMyAdmin zu sichern

Um diesen Tipp vorzustellen, schnüffeln wir am HTTP -Verkehr zwischen einem Client -Computer und der Debian 8 Server, auf dem wir den unschuldigen Fehler gemacht haben, mit den Anmeldeinformationen des Datenbank Root -Benutzers in unserem letzten Artikel bei: Änderung und Sicherung Standard -PHPMYADMIN -Anmelde -URL

Wie wir im vorherigen Tipp erwähnt haben, versuchen Sie dies noch nicht, wenn Sie Ihre Anmeldeinformationen nicht aufdecken möchten. Um den Verkehr zu schnüffeln, tippten wir den folgenden Befehl und drückten die Eingabetaste:

# TCPDUMP -Port Http -l -a | eGrep -i 'Pass = | PWD = | log = | login = | user = | userername = | pw = | passw = | passwd = | password = | Pass: | Benutzer: | Benutzername: | Passwort: | Login: | Pass | Benutzer ' -line -gepuffere -b20 

Es wird nicht lange dauern, bis wir erkennen, dass die Nutzername Und Passwort wurden im klaren Textformat über den Draht gesendet, wie Sie in der abgeschnittenen Ausgabe von TCPDump im Bild unten sehen können.

Bitte beachten Sie, dass wir einen Teil der versteckt haben Wurzel Passwort mit einer blauen Markierung darüber:

Schnüffeln HTTP -Verkehr

Um dies zu vermeiden, sollten Sie die Anmeldeseite mit einem Zertifikat sichern. Installieren Sie dazu das Mod_SSL -Paket auf Centos basierte Verteilungen.

# yum install mod_ssl 

Obwohl wir das verwenden werden Debian/Ubuntu Pfad und Namen, die gleiche Prozedur ist gültig für Centos Und Rhel Wenn Sie die folgenden Befehle und Pfade durch das ersetzen Centos Äquivalente.

Erstellen Sie ein Verzeichnis, um den Schlüssel und Zertifikat zu speichern:

# mkdir/etc/apache2/ssl [on Debian/Ubuntu basierte Systeme] # mkdir/etc/httpd/ssl [on Centos basierte Systeme] 

Erstellen Sie den Schlüssel und Zertifikat:

----------- An Debian/Ubuntu Basierte Systeme ----------- # OpenSSL REQ -X509 -NODES -DAYS 365 -NEWKEY RSA: 2048 -Keyout/etc/apache2/ssl/apache.Schlüssel -out/etc/apache2/ssl/apache.crt ----------- on Centos Basierte Systeme ----------- # OpenSSL REQ -X509 -NODES -DAYS 365 -NEWKEY RSA: 2048 -Keyout/etc/httpd/ssl/apache.Schlüssel -out/etc/httpd/ssl/apache.crt 
Probenausgabe
… +++… +++ Schreiben neuer privater Schlüssel zu '/etc/httpd/ssl/apache.Key '----- Sie werden aufgefordert, Informationen einzugeben, die in Ihre Zertifikatanfrage aufgenommen werden. Was Sie eingeben wollen. Es gibt einige Felder, aber Sie können einige Felder leer lassen, es gibt einen Standardwert, wenn Sie eingeben. '.', Das Feld wird leer gelassen. ----- Landname (2 Buchstabencode) [xx]:IN Staats- oder Provinzname (Voll Name) []:Maharashtra Lokalitätsname (zB, Stadt) [Standardstadt]:Mumbai Organisationsname (z. B. Unternehmen) [Standard Company Ltd]:Tecmint Name der Organisationseinheit (z. B. Abschnitt) []:Tecmint Common Name (zB, Ihr Name oder der Hostname Ihres Servers) []:Tecmint E-Mail-Addresse []:[E -Mail geschützt] 

Überprüfen Sie als nächstes Schlüssel und Zertifikat.

# CD/etc/apache2/ssl/[auf Debian/Ubuntu basierte Systeme] # CD/etc/httpd/ssl/[auf Centos basierte Systeme] # ls -l Gesamt 8 -rw-r-r--. 1 Root Root 1424 Sep 7 15:19 Apache.crt -rw-r-r--. 1 Root Root 1704 Sep 7 15:19 Apache.Taste 

In Debian/Ubuntu, Stelle sicher das Apache Hört den Port an 443 Für die Standardstelle (/etc/apache2/sites-verfügbare/000-Default.Conf) und fügen Sie die 3 SSL-bezogenen Linien in die hinzu Virtualhost Erklärung:

Sslengine auf SSLCertificateFile/etc/apache2/ssl/apache.crt sslcertificateKeyFile/etc/apache2/ssl/apache.Taste 
Aktivieren Sie SSL auf VirtualHost

In Centos basierte Verteilungen, erzählen Apache um auf Port zuzuhören 443 und suchen Sie nach der Hörenrichtlinie in /etc/httpd/conf/httpd.Conf und fügen Sie die obigen Zeilen darunter hinzu.

Sslengine auf SSLCertificateFile/etc/httpd/ssl/apache.crt sslcertificateKeyFile/etc/httpd/ssl/apache.Taste 

Änderungen speichern, laden Sie die SSL Apache Modul auf Debian/Ubuntu Verteilungen (in Centos Dies wird bei der Installation automatisch geladen mod_ssl früher):

# A2enmod SSL 

Gewalt phpmyadmin benutzen SSL, Stellen Sie sicher, dass die folgende Zeile in vorhanden ist in /etc/phpmyadmin/config.Inc.Php oder /etc/phpmyadmin/config.Inc.Php Datei:

$ cfg ['forcessl'] = true; 

und starten Sie den Webserver neu:

# systemCTL starten Sie Apache2 [auf Debian/Ubuntu basierte Systeme] # SystemCTL starten Sie HTTPD [auf Debian/Ubuntu basierte Systeme] 

Starten Sie als nächstes Ihren Webbrowser und tippen Sie an https: /// mein (Erfahren Sie, wie Sie PhpMyAdmin -Anmeldeturne ändern), wie unten gezeigt.

Wichtig: Bitte beachten Sie, dass nur die Verbindung nicht sicher ist, da wir ein selbstsigniertes Zertifikat verwenden. Klicke auf Fortschrittlich und bestätigen Sie die Sicherheitsausnahme:

Aktivieren Sie PhpMyAdmin HTTPS

Nach der Bestätigung der Sicherheitsausnahme und vor dem Anmeldung beginnen wir beim Schnüffeln Http Und Https Verkehr:

# TCPDUMP -Port HTTP oder Port https -l -a | eGrep -i 'Pass = | PWD = | log = | login = | user = | userername = | pw = | passw = | passwd = | password = | Pass: | Benutzer: | Benutzername: | Passwort: | Login: | Pass | Benutzer ' -line -gepuffere -b20 

Melden Sie sich dann mit denselben Anmeldeinformationen wie früher an. Der Verkehrsniffer fängt bestenfalls Kauderwelsch ein:

Schnüffeln HTTP- und HTTPS -Verkehr

Das war's vorerst, in dem nächsten Artikel werden wir Sie mit der Einschränkung des PhpMyAdmin -Zugriffs mit Benutzername/Passwort teilen, bis sie sich bis dahin auf Tecmint drehen lassen.