it-swarm.com.de

phpMyAdmin-Fehler - Die Konfigurationsdatei benötigt jetzt eine geheime Passphrase

Nach der Installation von phpmyadmin wird immer wieder die Fehlermeldung "Die Konfigurationsdatei benötigt jetzt eine geheime Passphrase" angezeigt. Ich habe die Passphrase festgelegt und auch die Anweisungen unter https://serverfault.com/questions/291490/phpmyadmin-not-allowing-users-to-log-on befolgt, aber es scheint nicht arbeiten. Ich verwende AMI und habe auch den Eigentümer und die Berechtigungen überprüft. Bitte helfen Sie.

31
jax

Dies könnte helfen, https://wiki.archlinux.org/index.php/PhpMyAdmin#Add_blowfish_secret_passphrase

Wenn beim ersten Anmelden bei/phpmyadmin (unter Verwendung eines zuvor eingerichteten MySQL-Benutzernamens und -Kennworts) unten auf der Seite die folgende Fehlermeldung angezeigt wird:

ERROR: The configuration file now needs a secret passphrase (blowfish_secret)  

Sie müssen der Konfigurationsdatei von phpMyAdmin ein Blowfish-Passwort hinzufügen. Bearbeiten Sie /etc/webapps/phpmyadmin/config.inc.php und fügen Sie ein zufälliges Blowfish- "Passwort" in die Zeile ein

$cfg['blowfish_secret'] = ; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */  

Es sollte jetzt ungefähr so ​​aussehen:

$cfg['blowfish_secret'] = 'qtdRoGmbc9{8IZr323xYcSN]0s)r$9b_JUnb{~Xz'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */  

Dies alles setzt voraus, dass Sie die Konfigurationsdatei bereits ordnungsgemäß erstellt haben.

cp config.sample.inc.php config.inc.php
43
user16081-JoeT

Ich habe auch den Fehler The configuration file now needs a secret passphrase (blowfish_secret) erhalten, als in der Konfigurationsdatei $cfg['blowfish_secret'] Gesetzt war. Ich verwende CentOS v6 und habe PHPMyAdmin aus dem EPEL-Repo mit yum installiert. Ich richte nginx auf Host PHPMyAdmin ein und das PHPMyAdmin-Paket (standardmäßig) ist so eingerichtet, dass es mit Apache funktioniert. Die Konfigurationsdatei befindet sich unter /etc/phpMyAdmin/config.inc.php (Sie können CONFIG_DIR In libraries/vendor_config.php Überprüfen, wo sich Ihre Konfigurationsdatei befindet). Wenn Sie feststellen, dass der Benutzer root und die Gruppe ist ist Apache für die Datei und das Verzeichnis. Dies führt dazu, dass PHPMyAdmin die Konfigurationsdatei nicht lesen kann. Um dieses Problem zu beheben, verwenden Sie chown, um die Gruppe in die Gruppe zu ändern, auf der Ihr Webserver ausgeführt wird (in meinem Fall ist die Gruppe nginx). Sie müssen den Eigentümer sowohl für das Verzeichnis als auch für die Konfigurationsdatei ändern (siehe Abbildung unten).

chown -R root.nginx /etc/phpMyAdmin/

Beachten Sie, dass Sie dies möglicherweise erneut tun müssen, wenn PHPMyAdmin aktualisiert wird. Möglicherweise haben Sie auch weitere Probleme mit Berechtigungen, wenn SELinux aktiviert ist.

8
ub3rst4r

Ich hatte

define('CONFIG_DIR', '/etc/phpmyadmin'); 

in /usr/share/phpmyadmin/libraries/vendor_config.php.

Es sollte sein:

define('CONFIG_DIR', '/etc/phpmyadmin/'); 

(Schrägstrich hinzugefügt)

5
Marcel Molenaar

Die neueste Version von phpmyadmin erstellt die Konfigurationsdatei nach der Installation nicht. Es gibt eine Beispielkonfigurationsdatei und eine aktuelle Standardkonfigurationsdatei tiefer im Ordnerbaum.

Beachten Sie, dass das Blowfish-Geheimnis genau 32 Zeichen lang sein muss, sonst wird es nicht angewendet.

Kopieren Sie die Beispieldatei, um die tatsächlich verwendete Datei zu erstellen, die die Standardeinstellungen überschreibt. Das unten gezeigte Verzeichnis ist nur ein Beispiel. Verwenden Sie daher das Verzeichnis/den Pfad für Ihre zutreffende phpmyadmin-Installation.

cp /usr/share/phpmyadmin/config.sample.inc.php /usr/share/phpmyadmin/config.inc.php

Am Anfang der Datei befindet sich die Blowfish-Variable, die festgelegt werden muss. Fügen Sie dem Wert der Variablen 32 zufällige Zeichen hinzu und speichern Sie die Datei.

$cfg['blowfish_secret'] = '[email protected]';

Ich habe niemanden gelesen, der die 32-Zeichen-Regel in diesem Thread erwähnt. Vielleicht war das das Problem für das OP.

3
D Moreau

In meinem Fall habe ich PHPMyAdmin manuell aktualisiert, da sich die Version im Repo mit PHP 7.2.) Nicht gut verhalten hat. Ich habe alle Schritte online ausgeführt, aber in/usr/share/phpmyadmin einen Fehler gemacht /libraries/vendor_config.php.

In der Zeile: define('CONFIG_DIR', '/etc/phpmyadmin/'); fehlte am Ende ein /. Ich fand dies durch manuelles Bearbeiten von Bibliotheken/Klassen/Config.php heraus und am Anfang von function load($source) machte ich eine die($source). Dort habe ich gesehen, dass die Konfigurationsquelle falsch war.

2
Albi

Wenn Sie die Datei hier bearbeitet haben: /usr/share/phpmyadmin/config.inc.php

Und Problem nicht lösen, es besteht die Möglichkeit, dass Sie falsche Datei bearbeiten. Wenn Sie whereis phpmyadmin -l ausführen, sollte dies eine Liste der phpmyadmin-Speicherorte auf dem Server enthalten.

Ich habe gesagt, dass Sie möglicherweise eine falsche Datei bearbeiten. Wenn Sie Ihren phpmyadmin in var/www/phpmyadmin Oder var/www/html/phpmyadmin Installieren, müssen Sie hier den phpmyadmin/config.sample.inc.php Bearbeiten.

Versuchen Sie Folgendes:

$ cd var/www/html/phpmyadmin
$ cp config.sample.inc.php config.inc.php

Bearbeiten Sie dies auf Ihre Art und Weise abmelden und anmelden phpmyadmin Sie sollten in Ordnung sein.

1
ShapCyber

Gehen Sie zum Ordner phpmyadmin> suchen Sie nach 'lint.php' und setzen Sie die = 'require_once' library/config.inc.php ';

Es wird definitiv Ihr Problem lösen.

Wenn es Ihr Problem löst, dann danke mir.

1
shaan

Folge diesen Schritten:

1) Gehen Sie zu /etc/httpd/conf.d/phpmyadmin.conf

  • (Überprüfen Sie den Pfad von phpMyAdmin im Verzeichnis-Tag.)

2) Gehen Sie zu /usr/share/phpmyadmin, öffne conf.inc.php

3) Mehrwert für blowfish_secret, wie -

$cfg['blowfish_secret'] = 'mrgQxxk8C-y}U7ji2BO9o5jLf}Qhe-BI[~6SUa';/* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

4) Speichern und beenden.

5) Löschen Sie den Browser-Cache

6) Versuchen Sie, mit der URL zuzugreifen: http://yourserver.com/phpmyadmin/index.php

1
Yoggesh Paatil

Ich möchte das nur teilen. stellen

$cfg['blowfish_secret'] = 'fill this up';

Gehen Sie zum Ordner phpmyadmin und suchen Sie nach lint.php

und stellen Sie die

require_once 'common.inc.php';
1
rm_beginners

Neben der Überprüfung, ob Berechtigungen für die http-Gruppe (Webserver) ausführbar sind, sollten Sie überprüfen, ob der Eintrag 'open_basedir' in php.ini das Verzeichnis enthält, in dem sich config.inc.php befindet, sofern er festgelegt ist. Dies hat dieses Problem für mich behoben.

1
tehanomalousone

In meinem Fall handelte es sich um ein Eigentümer-/Berechtigungsproblem, da ich auf einer meiner primären Websites manuell einen Symlink erstellt habe, der auf /usr/share/phpmyadmin/ Zeigt, damit ich über FQDN https://myserver.mydomain.com) auf phpMyAdmin zugreifen kann/definedphpmyadmin stattdessen nur über IP. Dies hat aber auch den Webbenutzer verändert. Das Surfen über IP unterscheidet sich vom Durchsuchen des vollqualifizierten Domänennamens, wenn dies keine Standarddomäne ist.

In meinem Fall konnte der Webbenutzer meines vollqualifizierten Domänennamens /var/lib/phpmyadmin/blowfish_secret.inc.php Nicht lesen, daher habe ich einfach den Eigentümer dieser Datei von root: www-data in web1: client1 in meinem Fall. Dann testen und laden Sie nginx neu:

chown web1:client1 /var/lib/phpmyadmin/blowfish_secret.inc.php
nginx -t
systemctl reload nginx
0
Labsy

Hinzufügen eines Passworts mit 32 Symbolen in Klammern $ cfg ['blowfish_secret'] = ''; half mir für eine andere Datei in /usr/share/phpmyadmin/libraries/config.default.php

Mit debian 9 + ispconfig wurde phpmyadmin manuell installiert

0