Cách cài đặt và bảo mật phpMyAdmin trên Alma Linux 8

theanh

Administrator
Nhân viên
phpMyAdmin là một ứng dụng quản lý cơ sở dữ liệu mã nguồn mở và miễn phí dành cho MySQL và MariaDB. Nó cho phép bạn quản lý, thực hiện nhiều tác vụ liên quan đến cơ sở dữ liệu và thực hiện các truy vấn từ giao diện dựa trên web. Nó được viết bằng PHP và cung cấp một giao diện mạnh mẽ và thân thiện với người dùng để quản lý cơ sở dữ liệu thông qua trình duyệt web. Nó là nền tảng chéo và có thể chạy trên nhiều hệ điều hành, bao gồm Windows, macOS, Linux và BSD.

Trong hướng dẫn này, bạn sẽ tìm hiểu cách cài đặt phpMyAdmin trên Alma Linux 8.

Điều kiện tiên quyết​

  • Một máy chủ đang chạy Alma Linux 8.
  • Tên miền hợp lệ được trỏ bằng IP máy chủ của bạn.
  • Mật khẩu gốc được cấu hình trên máy chủ.

Cài đặt LEMP Server​

Trước tiên, hãy cài đặt máy chủ web Nginx và máy chủ cơ sở dữ liệu MariaDB bằng lệnh sau:
Mã:
dnf install nginx mariadb -y
Tiếp theo, cài đặt kho lưu trữ Remi PHP bằng lệnh sau:
Mã:
dnf -y install http://rpms.remirepo.net/enterprise/remi-release-8.rpm
Tiếp theo, vô hiệu hóa mô-đun PHP mặc định và kích hoạt mô-đun Remi PHP bằng lệnh sau lệnh:
Mã:
dnf module -y reset php
dnf module install php:remi-7.4 -y
Tiếp theo, cài đặt PHP với các phần mở rộng cần thiết khác bằng lệnh sau:
Mã:
dnf install php php-cli php-common php-fpm php-curl php-gd php-mbstring php-process php-snmp php-xml php-zip php-memcached php-mysqlnd php-json php-mbstring php-pdo php-pdo-dblib php-xml unzip wget -y
Sau khi tất cả các gói được cài đặt, hãy chỉnh sửa cấu hình PHP-FPM file:
Mã:
nano /etc/php-fpm.d/www.conf
Thay đổi người dùng và nhóm từ apache sang Nginx:
Mã:
user = nginx
group = nginx
Lưu và đóng file sau đó khởi động và kích hoạt các dịch vụ Nginx, MariaDB và PHP-FPM bằng lệnh sau lệnh:
Mã:
systemctl start nginx php-fpm mariadb
systemctl enable nginx php-fpm mariadb

Tạo người dùng cho phpMyAdmin​

Tiếp theo, bạn nên tạo một người dùng riêng cho phpMyAdmin để thực hiện tất cả các tác vụ quản lý cơ sở dữ liệu. Trước tiên, hãy bảo mật MariaDB bằng cách chạy lệnh sau:
Mã:
mysql_secure_installation
Tập lệnh này sẽ đặt mật khẩu gốc, xóa người dùng ẩn danh, không cho phép đăng nhập gốc từ xa và xóa cơ sở dữ liệu thử nghiệm như được hiển thị bên dưới:
Mã:
Set root password? [Y/n] n
Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] y
Reload privilege tables now? [Y/n] y
Tiếp theo, hãy đăng nhập vào MariaDB bằng lệnh sau lệnh:
Mã:
mysql
Sau khi đăng nhập, hãy tạo cơ sở dữ liệu và người dùng bằng lệnh sau:
Mã:
MariaDB [(none)]> CREATE DATABASE phpmyadmin CHARACTER SET utf8 COLLATE utf8_unicode_ci;
MariaDB [(none)]> CREATE USER 'phpmyadmin'@'%' IDENTIFIED BY 'password';
Tiếp theo, cấp tất cả các quyền cho quản trị viên người dùng:
Mã:
MariaDB [(none)]> GRANT ALL PRIVILEGES ON *.* TO 'phpmyadmin'@'%';
Tiếp theo, xóa các đặc quyền và thoát khỏi bảng điều khiển MariaDB bằng lệnh sau:
Mã:
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

Cài đặt phpMyAdmin trên Alma Linux 8​

Tiếp theo, tải xuống phiên bản mới nhất của phpMyAdmin từ trang web chính thức của họ trang web:
Mã:
wget https://files.phpmyadmin.net/phpMyAdmin/5.1.3/phpMyAdmin-5.1.3-all-languages.zip
Sau khi tải xuống hoàn tất, hãy giải nén tệp đã tải xuống bằng lệnh sau:
Mã:
unzip phpMyAdmin-5.1.3-all-languages.zip
Tiếp theo, di chuyển thư mục đã giải nén đến thư mục gốc web Nginx thư mục:
Mã:
mv phpMyAdmin-5.1.3-all-languages /usr/share/nginx/phpmyadmin
Tiếp theo, sao chép tệp cấu hình mẫu bằng lệnh sau:
Mã:
cp /usr/share/nginx/phpmyadmin/config{.sample,}.inc.php
Tiếp theo, chỉnh sửa tệp cấu hình bằng lệnh sau lệnh:
Mã:
nano /usr/share/nginx/phpmyadmin/config.inc.php
Xác định bí mật của bạn như hiển thị bên dưới:
Mã:
$cfg['blowfish_secret'] = 'securekey';
Lưu và đóng tệp sau đó thay đổi quyền sở hữu của phpMyAdmin thư mục:
Mã:
chown -R nginx:nginx /usr/share/nginx/phpmyadmin
chown -R nginx:nginx /var/lib/php/session/

Cấu hình Nginx cho phpMyAdmin​

Tiếp theo, bạn sẽ cần tạo tệp cấu hình máy chủ ảo Nginx cho phpMyAdmin. Bạn có thể tạo tệp này bằng lệnh sau:
Mã:
nano /etc/nginx/conf.d/phpmyadmin.conf
Thêm các dòng sau:
Mã:
server { listen 80; server_name phpmyadmin.example.com; root /usr/share/nginx/phpmyadmin; access_log /var/log/nginx/phpmyadmin_access.log; error_log /var/log/nginx/phpmyadmin_error.log; index index.php; location / { try_files $uri $uri/ /index.php?$args; } location ~ \.php$ { try_files $uri =404; fastcgi_intercept_errors on; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_pass unix:/run/php-fpm/www.sock; }
}
Lưu và đóng tệp sau đó xác minh Nginx xem có lỗi cấu hình cú pháp nào không bằng lệnh sau lệnh:
Mã:
nginx -t
Bạn sẽ nhận được kết quả sau:
Mã:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Tiếp theo, khởi động lại dịch vụ Nginx để áp dụng thay đổi:
Mã:
systemctl restart nginx php-fpm
Bây giờ bạn có thể xác minh trạng thái Nginx bằng lệnh sau:
Mã:
systemctl status nginx
Bạn sẽ thấy thông báo sau đầu ra:
Mã:
? nginx.service - The nginx HTTP and reverse proxy server Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled) Drop-In: /usr/lib/systemd/system/nginx.service.d ??php-fpm.conf Active: active (running) since Fri 2022-04-15 10:06:39 UTC; 3s ago Process: 85445 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS) Process: 85443 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS) Process: 85442 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS) Main PID: 85449 (nginx) Tasks: 2 (limit: 11412) Memory: 3.8M CGroup: /system.slice/nginx.service ??85449 nginx: master process /usr/sbin/nginx ??85450 nginx: worker process
Apr 15 10:06:39 linux systemd[1]: nginx.service: Succeeded.
Apr 15 10:06:39 linux systemd[1]: Stopped The nginx HTTP and reverse proxy server.
Apr 15 10:06:39 linux systemd[1]: Starting The nginx HTTP and reverse proxy server...
Apr 15 10:06:39 linux nginx[85443]: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
Apr 15 10:06:39 linux nginx[85443]: nginx: configuration file /etc/nginx/nginx.conf test is successful
Apr 15 10:06:39 linux systemd[1]: nginx.service: Failed to parse PID from file /run/nginx.pid: Invalid argument
Apr 15 10:06:39 linux systemd[1]: Started The nginx HTTP and reverse proxy server.

Cấu hình Tường lửa​

Tiếp theo, bạn sẽ cần cho phép dịch vụ HTTP đi qua tường lửa. Bạn có thể cho phép bằng lệnh sau:
Mã:
firewall-cmd --permanent --zone public --add-service http
Tiếp theo, tải lại tường lửa để áp dụng các thay đổi:
Mã:
firewall-cmd --reload

Truy cập Giao diện người dùng web phpMyAdmin​

Bây giờ, hãy mở trình duyệt web của bạn và truy cập phpMyAdmin bằng URL . Bạn sẽ thấy trang đăng nhập phpMyAdmin:




p1.png



Cung cấp tên người dùng, mật khẩu quản trị viên của bạn và nhấp vào nút Go. Sau khi đăng nhập, bạn sẽ thấy bảng điều khiển phpMyAdmin:


p2.png



Nhấp vào nút Databases. Bạn sẽ thấy trang sau:


p5.png



Cung cấp tên cơ sở dữ liệu mà bạn muốn tạo và nhấp vào nút Tạo.


p6.png



Chọn cơ sở dữ liệu bạn muốn xóa và nhấp vào nút Thả để xóa cơ sở dữ liệu. Bạn sẽ thấy trang sau:


p7.png



Nhấp vào nút OK để xác nhận và xóa các cơ sở dữ liệu đã chọn.

Kết luận​

Xin chúc mừng! Bạn đã cài đặt thành công phpMyAdmin với Nginx trên Alma Linux 8. Bây giờ bạn có thể quản lý cơ sở dữ liệu MySQL và MariaDB của mình thông qua trình duyệt web. Hãy thoải mái hỏi tôi nếu bạn có bất kỳ câu hỏi nào.
 
Back
Bên trên