Cách cài đặt và bảo mật phpMyAdmin trên Debian 11

theanh

Administrator
Nhân viên
phpMyAdmin là một ứng dụng miễn phí, mã nguồn mở và dựa trên web được sử dụng để quản lý cơ sở dữ liệu MySQL và MariaDB từ giao diện web. Việc tạo và quản lý cơ sở dữ liệu từ giao diện dòng lệnh rất khó đối với người dùng mới bắt đầu. phpMyAdmin cung cấp một cách dễ dàng hơn để quản lý cơ sở dữ liệu MySQL, tài khoản người dùng và đặc quyền, thực thi các câu lệnh SQL, nhập và xuất dữ liệu thông qua trình duyệt web.

Trong bài đăng này, chúng tôi sẽ chỉ cho bạn cách cài đặt và bảo mật công cụ quản trị cơ sở dữ liệu phpMyAdmin trên Debian 11.

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

  • Một máy chủ chạy Debian 11.
  • Mật khẩu gốc được cấu hình trên máy chủ.

Bắt đầu​

Trước khi bắt đầu, bạn nên cập nhật các gói hệ thống lên phiên bản mới nhất. Bạn có thể cập nhật tất cả các gói bằng lệnh sau:
Mã:
apt-get update -y
Sau khi hệ thống của bạn được cập nhật, bạn có thể tiến hành bước tiếp theo.

Cài đặt LAMP Server​

phpMyAdmin là một ứng dụng dựa trên PHP và chạy trên máy chủ web. Vì vậy, bạn sẽ cần cài đặt máy chủ LAMP trên máy chủ của mình. Bạn có thể cài đặt bằng lệnh sau:
Mã:
apt-get install apache2 mariadb-server libapache2-mod-php php-cli php-mysql php-zip php-curl php-xml php-mbstring php-zip php-gd unzip -y
Sau khi tất cả các gói được cài đặt, bạn có thể tiến hành bước tiếp theo.

Cài đặt và cấu hình phpMyAdmin​

Trước tiên, hãy tải xuống phiên bản phpMyAdmin mới nhất từ trang web chính thức của họ bằng lệnh sau:
Mã:
wget https://files.phpmyadmin.net/phpMyAdmin/5.1.1/phpMyAdmin-5.1.1-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.1-all-languages.zip
Tiếp theo, di chuyển thư mục đã giải nén đến /usr/share bằng lệnh sau:
Mã:
mv phpMyAdmin-5.1.1-all-languages /usr/share/phpmyadmin
Tiếp theo, tạo thư mục cần thiết bằng lệnh sau:
Mã:
mkdir -p /var/lib/phpmyadmin/tmp
Tiếp theo, thiết lập quyền sở hữu thích hợp cho thư mục phpMyAdmin:
Mã:
chown -R www-data:www-data /var/lib/phpmyadmin
Tiếp theo, sao chép tệp cấu hình mẫu phpMyAdmin:
Mã:
cp /usr/share/phpmyadmin/config.sample.inc.php /usr/share/phpmyadmin/config.inc.php
Tiếp theo, cài đặt pwgen và tạo khóa bí mật bằng lệnh sau:
Mã:
apt-get install pwgen -y
pwgen -s 32 1
Đầu ra:
Mã:
pau9t1SG6lmaeCFxKqeeaY5N4erIa25K
Tiếp theo, chỉnh sửa tệp config.inc.php và định cấu hình tệp đó:
Mã:
nano /usr/share/phpmyadmin/config.inc.php
Xác định khóa bí mật của bạn và bỏ chú thích các dòng sau:
Mã:
$cfg['blowfish_secret'] = 'pau9t1SG6lmaeCFxKqeeaY5N4erIa25K'; /* BẠN PHẢI ĐIỀN VÀO ĐÂY ĐỂ XÁC THỰC COOKIE! */$cfg['Servers'][$i]['controluser'] = 'pma';$cfg['Máy chủ'][$i]['controlpass'] = 'mật khẩu';$cfg['Máy chủ'][$i]['pmadb'] = 'phpmyadmin';$cfg['Máy chủ'][$i]['bookmarktable'] = 'pma__bookmark';$cfg['Máy chủ'][$i]['relation'] = 'pma__relation';$cfg['Máy chủ'][$i]['table_info'] = 'pma__table_info';$cfg['Máy chủ'][$i]['table_coords'] = 'pma__table_coords';$cfg['Máy chủ'][$i]['pdf_pages'] = 'pma__pdf_pages';$cfg['Máy chủ'][$i]['column_info'] = 'pma__column_info';$cfg['Máy chủ'][$i]['lịch sử'] = 'pma__history';$cfg['Máy chủ'][$i]['table_uiprefs'] = 'pma__table_uiprefs';$cfg['Máy chủ'][$i]['theo dõi'] = 'pma__tracking';$cfg['Máy chủ'][$i]['userconfig'] = 'pma__userconfig';$cfg['Máy chủ'][$i]['gần đây'] = 'pma__recent';$cfg['Máy chủ'][$i]['yêu thích'] = 'pma__yêu thích';$cfg['Máy chủ'][$i]['người dùng'] = 'pma__người dùng';$cfg['Máy chủ'][$i]['nhóm người dùng'] = 'pma__nhóm người dùng';$cfg['Máy chủ'][$i]['navigationhiding'] = 'pma__navigationhiding';$cfg['Máy chủ'][$i]['savedsearches'] = 'pma__savedsearches';$cfg['Máy chủ'][$i]['central_columns'] = 'pma__central_columns';$cfg['Máy chủ'][$i]['designer_settings'] = 'pma__designer_settings';$cfg['Máy chủ'][$i]['export_templates'] = 'pma__export_templates';$cfg['TempDir'] = '/var/lib/phpmyadmin/tmp';
Lưu và đóng tệp khi bạn hoàn tất.

Tạo Người dùng quản trị phpMyAdmin​

Luôn khuyến nghị tạo một người dùng riêng để quản lý cơ sở dữ liệu thông qua phpMyAdmin.

Đầu tiên, hãy nhập các bảng phpMyAdmin vào cơ sở dữ liệu MariaDB bằng lệnh sau:
Mã:
mysql < /usr/share/phpmyadmin/sql/create_tables.sql
Tiếp theo, hãy kết nối với shell MariaDB bằng lệnh sau:
Mã:
mysql
Sau khi kết nối, hãy cấp tất cả các quyền cần thiết cho cơ sở dữ liệu phpmyadmin bằng lệnh sau:
Mã:
MariaDB [(none)]> GRANT SELECT, INSERT, UPDATE, DELETE ON phpmyadmin.* TO 'pma'@'localhost' IDENTIFIED BY 'password';
Tiếp theo, tạo người dùng quản trị bằng lệnh sau:
Mã:
MariaDB [(none)]> CREATE USER myadmin;
Tiếp theo, cấp tất cả các quyền cho người dùng quản trị bằng lệnh sau:
Mã:
MariaDB [(none)]> CẤP TẤT CẢ CÁC QUYỀN TRÊN *.* CHO 'myadmin'@'localhost' ĐƯỢC XÁC ĐỊNH BỞI 'password' VỚI TÙY CHỌN CẤP;
Tiếp theo, xóa các quyền và thoát khỏi shell MariaDB bằng lệnh sau:
Mã:
MariaDB [(none)]> XÓA CÁC QUYỀN;
MariaDB [(none)]> THOÁT;
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Cấu hình Apache cho phpMyAdmin​

Tiếp theo, bạn sẽ cần tạo tệp cấu hình máy chủ ảo Apache cho phpMyAdmin. Bạn có thể tạo nó bằng lệnh sau:
Mã:
nano /etc/apache2/conf-available/phpmyadmin.conf
Thêm các dòng sau:
Mã:
Alias /phpmyadmin /usr/share/phpmyadmin Options SymLinksIfOwnerMatch DirectoryIndex index.php   AddType application/x-httpd-php .php   SetHandler application/x-httpd-php  php_value include_path . php_admin_value upload_tmp_dir /var/lib/phpmyadmin/tmp php_admin_value open_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/:/usr/share/php/php-gettext/:/usr/share/php/php-php-gettext/:/usr/share/javascript/:/usr/share/php/tcpdf/:/usr/share/doc/phpmyadmin/:/usr/share/php/phpseclib/ php_admin_value mbstring.func_overload 0    AddType application/x-httpd-php .php   SetHandler application/x-httpd-php  php_value include_path . php_admin_value upload_tmp_dir /var/lib/phpmyadmin/tmp php_admin_value open_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/:/usr/share/php/php-gettext/:/usr/share/php/php-php-gettext/:/usr/share/javascript/:/usr/share/php/tcpdf/:/usr/share/doc/phpmyadmin/:/usr/share/php/phpseclib/ php_admin_value mbstring.func_overload 0 # Ủy quyền để thiết lập   AuthType Basic AuthName "phpMyAdmin Setup" AuthUserFile /etc/phpmyadmin/htpasswd.setup  Require valid-user # Không cho phép truy cập web vào các thư mục không cần Require all denied Require all denied Yêu cầu tất cả bị từ chối
Lưu và đóng tệp khi bạn hoàn tất, sau đó bật tệp cấu hình phpMyAdmin bằng lệnh sau:
Mã:
a2enconf phpmyadmin.conf
Tiếp theo, tải lại dịch vụ Apache để áp dụng các thay đổi:
Mã:
systemctl reload apache2
Bạn có thể kiểm tra trạng thái của dịch vụ Apache bằng lệnh sau:
Mã:
systemctl status apache2
Bạn sẽ thấy đầu ra sau:
Mã:
? apache2.service - Máy chủ HTTP Apache Đã tải: đã tải (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) Đang hoạt động: đang hoạt động (đang chạy) kể từ Tue 2021-08-17 10:16:28 UTC; 2 giây trước Tài liệu: https://httpd.apache.org/docs/2.4/ Tiến trình: 45027 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS) PID chính: 45031 (apache2) Nhiệm vụ: 6 (giới hạn: 2341) Bộ nhớ: 14,6M CPU: 89ms CGroup: /system.slice/apache2.service ??45031 /usr/sbin/apache2 -k start ??45032 /usr/sbin/apache2 -k start ??45033 /usr/sbin/apache2 -k start ??45034 /usr/sbin/apache2 -k start ??45035 /usr/sbin/apache2 -k start ??45036 /usr/sbin/apache2 -k start17 tháng 8 10:16:28 debian systemd[1]: Đang khởi động Máy chủ Apache HTTP...

Truy cập phpMyAdmin​

Tại thời điểm này, phpMyAdmin đã được cài đặt và cấu hình. 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:



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 Đi. Bạn sẽ thấy bảng điều khiển phpMyAdmin trên trang sau:


Bảo mật phpMyAdmin​

Bạn nên bảo mật phpMyAdmin bằng xác thực hai yếu tố. Bạn có thể thực hiện việc này bằng chức năng xác thực và ủy quyền .htaccess.

Đầu tiên, hãy chỉnh sửa tệp cấu hình phpMyAdmin:
Mã:
nano /etc/apache2/conf-available/phpmyadmin.conf
Thêm dòng "AllowOverride All" vào khối máy chủ sau:
Mã:
 Tùy chọn FollowSymLinks DirectoryIndex index.php AllowOverride All
Lưu và đóng tệp khi bạn hoàn tất, sau đó khởi động lại dịch vụ Apache:
Mã:
systemctl restart apache2
Tiếp theo, tạo tệp .htaccess và xác định loại xác thực Apache:
Mã:
nano /usr/share/phpmyadmin/.htaccess
Thêm các dòng sau:
Mã:
AuthType BasicAuthName "Tệp bị hạn chế"AuthUserFile /usr/share/phpmyadmin/.htpasswdRequire valid-user
Lưu và đóng tệp, sau đó tạo người dùng bằng lệnh sau:
Mã:
htpasswd -c /usr/share/phpmyadmin/.htpasswd secureuser
Bạn sẽ được yêu cầu đặt mật khẩu như hiển thị bên dưới:
Mã:
Mới password:Nhập lại mật khẩu mới:Đang thêm mật khẩu cho người dùng secureuser

Xác minh phpMyAdmin​

Lúc này, phpMyAdmin được bảo mật bằng xác thực bổ sung. Để xác minh, hãy mở trình duyệt web của bạn và truy cập phpMyAdmin bằng URL . Bạn sẽ được yêu cầu nhập tên người dùng và mật khẩu bổ sung như hiển thị bên dưới:



Sau khi cung cấp tên người dùng và mật khẩu, bạn sẽ được chuyển hướng đến trang đăng nhập phpMyAdmin thông thường.

Kết luận​

Xin chúc mừng! Bạn đã cài đặt và bảo mật phpMyAdmin thành công trên Debian 11. Bây giờ bạn có thể khám phá phpMyAdmin và bắt đầu quản lý cơ sở dữ liệu của mình từ trình duyệt web.
 
Back
Bên trên