安装phpmyadmin后,我不断收到错误消息“配置文件现在需要一个秘密密码”。我已经设置了密码,还按照https://serverfault.com/questions/291490/phpmyadmin-not-allowing-users-to-logon上显示的说明进行操作,但似乎不起作用。我正在使用AMI,并且也检查所有者和权限。请帮助。
安装phpmyadmin后,我不断收到错误消息“配置文件现在需要一个秘密密码”。我已经设置了密码,还按照https://serverfault.com/questions/291490/phpmyadmin-not-allowing-users-to-logon上显示的说明进行操作,但似乎不起作用。我正在使用AMI,并且也检查所有者和权限。请帮助。
Answers:
这可能会有所帮助, https://wiki.archlinux.org/index.php/PhpMyAdmin#Add_blowfish_secret_passphrase
如果您首次登录/ phpmyadmin(使用先前设置的MySQL用户名和密码)时在页面底部看到以下错误消息:
ERROR: The configuration file now needs a secret passphrase (blowfish_secret)
您需要在phpMyAdmin的配置文件中添加河豚密码。编辑/etc/webapps/phpmyadmin/config.inc.php并在行中插入随机河豚“密码”
$cfg['blowfish_secret'] = ; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
现在应该看起来像这样:
$cfg['blowfish_secret'] = 'qtdRoGmbc9{8IZr323xYcSN]0s)r$9b_JUnb{~Xz'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
所有这些都假设您已经正确创建了配置文件,
cp config.sample.inc.php config.inc.php
config.sample.inc.php
文件更改为config.inc.php
,并向其中添加了提到的$cfg['blowfish_secret'] = 'qtdRoGmbc9{8IZr323xYcSN]0s)r$9b_JUnb{~Xz';
设置,但是phpMyAdmin索引页面仍然抱怨缺少它!如果有机会加载另一个文件,那么我不知道该文件在哪里或为什么在哪里?任何有这个问题的人有想法吗?
设置The configuration file now needs a secret passphrase (blowfish_secret)
配置文件后,我也收到错误消息$cfg['blowfish_secret']
。我正在使用CentOS v6,并使用从EPEL存储库中安装了PHPMyAdmin yum
。我将nginx设置为托管PHPMyAdmin,并且设置了PHPMyAdmin包(默认情况下)以与Apache一起使用。配置文件位于/etc/phpMyAdmin/config.inc.php
(您可以检CONFIG_DIR
入libraries/vendor_config.php
以找到配置文件的位置),并且如果您注意到,则该用户是root用户,该组apache
用于该文件和目录。这将导致PHPMyAdmin无法读取配置文件。要解决此问题,请使用chown
将该组更改为正在运行Web服务器的组(在我的情况下,该组为nginx
)。您将需要同时更改目录和配置文件的所有者(如下所示)。
chown -R root.nginx /etc/phpMyAdmin/
请注意,如果更新了PHPMyAdmin,则可能需要再次执行此操作。如果启用了SELinux,您的权限可能还会有其他问题。
/etc/phpmyadmin/config.inc.php
:`*注意:请勿将安全敏感数据(例如密码)添加到该文件中*除非您真的知道自己在做什么。如果您这样做,那么任何可以在您的网络服务器上运行PHP或CGI的用户都可以阅读它们。如果您仍然希望这样做,请确保正确保护对该文件的访问权限(也在文件系统级别)。* /`
include('/var/lib/phpmyadmin/blowfish_secret.inc.php');
因此,我去了那里并将该文件的组更改为我的Web服务器用户。它可以工作,但似乎没有比将密码放入更安全的方法/etc/phpmyadmin/config.inc.php
。我想也许PHP不能在那里运行?它确实解决了这个问题。因此,我想当我到达hack攻击桥的时候。
./config/config.inc.php
。由于我在该目录之外有此文件,因此我可以更轻松地交换版本,因此我只需要为此文件创建一个指向我的位置的符号链接,消息对我来说就不复存在了。ln -s ../../../config.inc.php config.inc.php
/etc/phpMyAdmin
目录权限,而不仅仅是目录中的config.inc.php
文件。
安装后,最新版本的phpmyadmin无法创建配置文件。文件夹树中有一个可用的示例配置文件和一个更深的实际默认配置文件。
请注意,河豚密码的长度必须恰好为32个字符,否则将不会应用。
复制示例文件以创建覆盖默认值的实际使用文件。下面显示的目录仅是示例,因此请使用适用于您的phpmyadmin安装的目录/路径。
cp /usr/share/phpmyadmin/config.sample.inc.php /usr/share/phpmyadmin/config.inc.php
该文件的顶部是需要设置的河豚变量。将32个随机字符添加到变量的值,然后保存文件。
$cfg['blowfish_secret'] = 'KLS$vbc91Lkja$vc@opGbxA278EWopdc';
我没有读过任何人在此线程中提到32个字符的规则。也许这是OP的问题。
跟着这些步骤:
1)前往 /etc/httpd/conf.d/phpmyadmin.conf
2)前往 /usr/share/phpmyadmin
,开启conf.inc.php
3)为blowfish_secret添加值,例如-
$cfg['blowfish_secret'] = 'mrgQxxk8C-y}U7ji2BO9o5jLf}Qhe-BI[~6SUa';/* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
4)保存并退出。
5)清除浏览器缓存
6)尝试使用url访问:http: //yourserver.com/phpmyadmin/index.php
只想分享这个。放
$cfg['blowfish_secret'] = 'fill this up';
转到phpmyadmin文件夹并搜索 lint.php
并设置
require_once 'common.inc.php';
如果您在此处编辑了文件: /usr/share/phpmyadmin/config.inc.php
而问题仍未解决,则可能是您编辑了错误的文件。如果你跑whereis phpmyadmin -l
该命令,则应为您提供服务器上phpmyadmin位置的列表。
我说您编辑的文件错误的原因是,如果您将phpmyadmin安装在其中,var/www/phpmyadmin
或者var/www/html/phpmyadmin
您需要在其中编辑phpmyadmin/config.sample.inc.php
。
所以试试这个:
$ cd var/www/html/phpmyadmin
$ cp config.sample.inc.php config.inc.php
以您的方式进行编辑,然后注销并登录phpmyadmin,您应该会很好。
在方括号$ cfg ['blowfish_secret'] =''中添加带有32个符号的密码;帮助我在/usr/share/phpmyadmin/libraries/config.default.php中找到另一个文件
使用debian 9 + ispconfig,手动安装phpmyadmin
在我的情况下,这是所有者/权限问题,因为我在一个主要网站中手动创建了指向的符号链接,/usr/share/phpmyadmin/
以便可以从FQDN https://myserver.mydomain.com/changedphpmyadmin访问phpMyAdmin。而不是仅通过IP。但是这样做也改变了网络用户。如果这不是默认域,则通过IP进行的浏览与通过FQDN进行的浏览不同。
因此,在我的情况下,我的FQDN的Web用户无法读取/var/lib/phpmyadmin/blowfish_secret.inc.php
,因此在我的情况下,我只是将该文件的所有者从root:www-data更改为web1:client1。然后测试并重新加载nginx:
chown web1:client1 /var/lib/phpmyadmin/blowfish_secret.inc.php
nginx -t
systemctl reload nginx