centos7正确安装设置phpMyAdmin的方法

2016年4月29日 建站技术 浏览 4,512 抢沙发 A+

我们可以在命令行工具下面管理MySQL/MariaDB数据库。如果想要个图形界面的话,可以安装使用phpMyAdmin,这样通过浏览器就可以直接管理服务器里面的数据库:添加用户、设置密码、创建数据库、导入导出数据等等。

安装

在很多Linux类型的系统上都可以使用包管理工具去安装phpMyAdmin,比如在CentOS系统里,先为系统安装epel仓库,然后就可以通过yum -y install phpmyadmin安装phpMyAdmin了。

当然如果你不想使用默认的版本,可以去https://www.phpmyadmin.net/downloads/这里下载安装。

通过yum安装的默认目录为/usr/share/phpMyAdmin,也可能是其他目录,根据系统版本不同,可能会有变化,大家留意一下就可以了。下面我们要设置访问,这里以nginx为例,在/etc/nginx/conf.d/你站点的conf文件中的server加入以下代码:

location /phpmyadmin {
alias /usr/share/phpMyAdmin;
index index.php;
}
location ~ /phpmyadmin/.+\.php$ {
if ($fastcgi_script_name ~ /phpmyadmin/(.+\.php.*)$) {
set $valid_fastcgi_script_name $1;
}
include fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/share/phpMyAdmin/$valid_fastcgi_script_name;
}

现在,打开浏览器,输入nginx服务器绑定的主机名/phpmyadmin就可以访问了,用MySQL/MariaDB系统里的用户登录一下看看。

配置

登录到phpMyAdmin以后,在页面底部会显示“配置文件现在需要一个短语密码。”或"The configuration file now needs a secret passphrase (blowfish_secret).",你需要在phpMyAdmin的配置文件里的blowfish_secret这个配置里面去设置一个密码,phpMyAdmin会用到这个密码,加密Cookie。phpMyAdmin 的相关配置要放在一个叫 config.inc.php的文件里,如果这个文件不存在,你可以复制一份 config.sample.inc.php,命名为 config.inc.php。进入到phpMyAdmin所在的目录以后:

cp config.sample.inc.php config.inc.php

然后去生成一串随机的密码,可以使用openssl去做:

openssl rand -base64 32

返回:

kVu/yTa5dzkIJiYHrDppvnU+y8LCLf6XkpoldsCMfFQ=

复制返回来的随机密码,然后打开config.inc.php,搜索$cfg['blowfish_secret'],把复制的密码粘贴到这个配置的后面。

$cfg['blowfish_secret'] = 'AhONip2q+KmANQJfbzx7NC+j+hsGRKuhuQi8ClJG4mk=';

保存配置文件,回到浏览器,重新登录。

安全

在生产环境下使用 phpMyAdmin,所有人也都可以看到phpMyAdmin的登录页面,虽然他们不知道你的数据库的用户名跟密码,不过还是挺吓人的。我们可以配置一下nginx ,在显示phpMyAdmin登录页面之前,验证一下用户的身份,同样需要输入用户名还有密码,成功以后,才能进入到phpMyAdmin的登录页面,然后使用数据库管理系统上的用户登录。

我们要做的是创建一个密码文件,文件里的内容就是用户名与对应的密码,然后再去设置一下nginx的服务器配置,访问phpMyAdmin的时候,用密码文件里的用户名跟密码验证用户的身份。这个密码需要用crypt()加密一下,可以使用openssl去做这件事:

openssl passwd

提示你输入要加密的密码,输入好以后,回车,又会提示Verifying - Password,再输入一次密码。再次回车,会返回加密以后的密码,像这样:

cHDQh8dVIZRwY

复制一下这串加密之后的密码,下面再去创建一个密码文件,进入到nginx的配置文件所在的目录:

cd /etc/nginx/conf.d

创建一个文件叫pma_pass(意思是phpMyAdmin password),可以使用vim:

vim pma_pass

文件里的内容使用username:password的形式,像这样:

kimsom:cHDQh8dVIZRwY

打开服务器的配置文件,修改location /phpmyadmin模块,用auth_basic指令设置一个登录窗口的提示,再用auth_basic_user_file指令设置一下密码文件的位置:

location /phpmyadmin {
auth_basic "Login Please";
auth_basic_user_file /etc/nginx/conf.d/pma_pass;
alias /usr/share/phpMyAdmin;
index index.php;
}

centos7正确安装设置phpMyAdmin的方法

发表评论

:?::razz::sad::evil::!::smile::oops::grin::eek::shock::???::cool::lol::mad::twisted::roll::wink::idea::arrow::neutral::cry::mrgreen: