phpMyAdmin là gì ?
PhpMyAdmin là một mã nguồn mở giúp quản trị cở sở dữ liệu MySQL và MariaDB thông qua giao diện web được viết bằng PHP.
Trước khi cài đặt phpMyAdmin Trên CentOS 7 bạn cần phải có LEMP (Linux, Nginx, MariaDB, and PHP) trên CentOS 7.
Hướng Dẫn Cài Đặt phpMyAdmin Trên CentOS 7 nhanh chóng
Bởi vì phpMyAdmin không có sẵn trên repository của CentOS nên để cài đặt cần phải có EPEL repo (Extra Packages for Enterprise Linux). Vậy nên bạn cần dùng lệnh cài đặt EPEL repo
sudo yum install epel-release
sau đó cài đặt phpMyAdmin
sudo yum install phpmyadmin
Sau khi cài đặt thành công bạn tạo một symbolic link đến folder phpMyAdmin
sudo ln -s /usr/share/phpMyAdmin /usr/share/nginx/html
Tiếp theo là restart php-fpm để có thể load lại các module cần thiết
sudo systemctl restart nginx
Giờ vào địa chỉ http://server_domain_or_IP/phpMyAdmin
để nhìn thấy giao diện phpMyAdmin.
Tăng cường bảo mật phpMyAdmin trên CentOS 7
Mặc dù giờ bạn đã xài được phpMyAdmin nhưng nó rất dễ bị hacker tấn công, vậy nên dưới đây một số hướng dẫn giúp bạn cải thiện bảo mật cho phpMyAdmin
Thay đổi đường dẫn truy cập
Chúng ta có thể thay đổi đường dẫn symbolic link đến phpMyAdmin bằng đường dẫn phức tạp hơn bằng các bước sau
# di chuyển đến folder /usr/share/nginx/html
cd /usr/share/nginx/html
ls -l
Bạn sẽ thấy symbolic link đến phpMyAdmin hiện tại kiểu như sau
-rw-r--r-- 1 root root 537 Aug 5 08:15 50x.html
-rw-r--r-- 1 root root 612 Aug 5 08:15 index.html
lrwxrwxrwx 1 root root 21 Aug 6 17:29 phpMyAdmin -> /usr/share/phpMyAdmin
Giờ bạn thay đổi symbolic link phpMyAdmin thành yourlink bằng lệnh
sudo mv phpMyAdmin yourlink
Bây giờ bạn phải sử dụng đường dẫn http://server_domain_or_IP/yourlink
để nhìn thấy giao diện phpMyAdmin.
Tăng cường bảo mật bằng xác thực Server - Web Server Authentication Gate
Đây sẽ là một xác thực từ server trước khi bạn thấy được trang phpMyAdmin . Tính năng yêu cầu OpenSSL đã cài đặt trên CentOS 7.
Tạo một password và bạn sẽ thấy được 1 password được tạo
openssl yourpass
# nó sẽ xuất hiện kết quả kiểu như : O5az.RSPzd.HE
Copy giá trị đó vào file /etc/nginx/pma_pass
sudo nano /etc/nginx/pma_pass
Và điền user và mật khẩu vào như sau
demo:O5az.RSPzd.HE
Tiếp theo chúng ta thay đổi config của Nginx như sau
sudo nano /etc/nginx/conf.d/default.conf
Và thêm vào
server {
. . .
location / {
try_files $uri $uri/ =404;
}
# thêm /yourlink ở đây
location /yourlink {
auth_basic "Admin Login";
auth_basic_user_file /etc/nginx/pma_pass;
}
. . .
}
Sau đó restart Nginx
sudo systemctl restart nginx
Và quay lại đường dẫn của bạn sẽ xuất hiện