Hướng dẫn cài đặt và bảo mật PhpMyAdmin với Nginx trên CentOS 7
Tổng quan
phpMyAdmin là phần mềm miễn phí được viết bằng ngôn ngữ PHP nhằm xử lý việc quản trị MySQL / MariaDB thông qua gia diện Web.
phpMyAdmin xử lý một loạt các hoạt động phổ biến trên MySQL / MariaDB trên giao diện Web UI như: managing databases, tables, columns, relations, indexes, users, permissions… thay vì phải xử lý chúng thông qua dòng lệnh. Điều này mang lại sự tiện lợi và dễ dàng hơn cho người sử dụng.
Cài đặt PhpMyAdmin
Đầu tiên, ta cài đặt wget và unzip để hỗ trợ việc giải nén phpMyAdmin
yum install -y wget unzip
Cài đặt phpMyAdmin
cd /usr/share
wget https://files.phpmyadmin.net/phpMyAdmin/5.0.2/phpMyAdmin-5.0.2-all-languages.zip
Ta giải nén PhpMyAdmin
unzip phpMyAdmin-5.0.2-all-languages.zip
mv phpMyAdmin-5.0.2-all-languages phpMyAdmin
Sau khi giải nén thành công ta xóa file zip để giải phóng bộ nhớ cho máy chủ
rm -rf phpMyAdmin-5.0.2-all-languages.zip
rm -rf /usr/share/phpMyAdmin/setup
Ta link phpMyAdmin đến đường dẫn Website
ln -s /usr/share/phpMyAdmin /usr/share/nginx/html/phpMyAdmin
Chỉnh sửa file cấu hình phpmyadmin
mv /usr/share/phpMyAdmin/config.sample.inc.php /usr/share/phpMyAdmin/config.inc.php
vi /usr/share/phpMyAdmin/config.inc.php
# Thêm vào đoạn 32 ký tự ngẫu nhiêm để tránh lỗi blowfish
$cfg['blowfish_secret'] = 'Uueqe:VAzkzsEl6RvM}Z;CO0EoPW=GI3';
$cfg['TempDir'] = '/usr/share/phpMyAdmin/tmp/';
Tạo thư mục chứa tempdir
mkdir -p /usr/share/phpMyAdmin/tmp
Chỉnh sửa quyền sở hữu phpmyadmin
chown -R nginx:nginx /usr/share/phpMyAdmin/tmp
Cấu hình bảo mật PhpMyAdmin
Ta mở file cấu hình nginx (thư mục default sẽ là /etc/nginx/conf.d/)
vi /etc/nginx/conf.d/default.conf
server {
listen 80;
server_name localhost;
access_log /var/log/nginx/access.log main;
error_log /var/log/nginx/error.log;
root /usr/share/nginx/html;
index index.html index.htm index.php;
location ~ .php$ {
try_files $uri $uri/ =404;
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_pass unix:/var/run/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_intercept_errors on;
if (-f $request_filename)
{
fastcgi_pass unix:/var/run/php-fpm.sock;
}
}
# Thêm đoạn bên dưới vào file cấu hình
location ~ ^/phpmyadmin {
rewrite ^/* /phpMyAdmin last;
}
location ~ ^/pma {
rewrite ^/* /phpMyAdmin last;
}
location ^~ /phpMyAdmin/log/ {
deny all;
}
location ^~ /phpMyAdmin/libraries/ {
deny all;
}
location ^~ /phpMyAdmin/templates/ {
deny all;
}
location ^~ /phpMyAdmin/tmp/ {
deny all;
}
}
Ta kiểm tra bằng cách vào đường dẫn http://IPaddress/phpMyAdmin/
Giao diện chính của PhpMyAdmin
Kết luận
Vậy ta đã cài đặt và cấu hình thành công PhpMyAdmin. Bây giờ bạn có thể tạo mới cơ sở dữ liệu, người dùng, các bảng và thực hiện các truy vấn MySQL thông qua giao diện PhpMyAdmin. Chúc các bạn thành công!