如何在 Ubuntu 14.04 服务器上使用 Nginx 安装和保护 phpMyAdmin
在 Ubuntu 14.04 服务器上安装和保护 phpMyAdmin 的步骤如下:
- 更新系统包列表:
sudo apt-get update
- 安装 Nginx 和 PHP 及其相关扩展:
sudo apt-get install nginx php5-fpm php5-mcrypt
- 安装 phpMyAdmin:
sudo apt-get install phpmyadmin
- 在安装过程中,会要求选择 Web server 来配置,选择
nginx
。 配置 phpMyAdmin 以使用正确的 php5-fpm 池:
编辑
/etc/php5/fpm/pool.d/www.conf
,将listen
指令更改为:
listen = /var/run/php5-fpm.sock
- 重启 php5-fpm 服务:
sudo service php5-fpm restart
- 配置 Nginx 来处理 phpMyAdmin 请求,编辑
/etc/nginx/sites-available/default
,添加以下配置到 server 块中:
location ~ ^/(libraries|extensions|themes)/ {
location ~ *\.php$ {
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
location ~ .*\.php$ {
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
- 重启 Nginx 服务:
sudo service nginx restart
- 安装安全插件,如
fail2ban
来防止未授权访问:
sudo apt-get install fail2ban
- 配置 fail2ban 来保护 phpMyAdmin,编辑
/etc/fail2ban/jail.local
,添加以下内容:
[phpmyadmin]
enabled = true
filter = phpmyadmin
action = iptables-multiport[name=PHPMyAdmin, port=http,https]
logpath = /var/log/nginx/access.log
maxretry = 5
bantime = 600
- 重启 fail2ban 服务:
sudo service fail2ban restart
- 确保你的 phpMyAdmin 配置文件是安全的,编辑
/etc/phpmyadmin/config.inc.php
,确保以下设置正确:
$cfg['blowfish_secret'] = 'your_blowfish_secret';
生成一个强密钥,并替换 'your_blowfish_secret'
。
- 现在你可以通过浏览器访问
http://your_server_ip/phpmyadmin
来使用 phpMyAdmin。
确保你的服务器的防火墙设置允许访问 80 端口(HTTP)和 443 端口(HTTPS,如果你使用的话)。
评论已关闭