Hướng dẫn bảo mật phpMyAdmin trên Ubuntu 18.04

Sau khi cài đặt phpMyAdmin trên Ubuntu thì việc tiến hành các cấu hình để giúp bảo mật phần mềm này là rất quan trọng đặc biệt trong trường hợp phần mềm này được sử dụng trên máy chủ kết nối internet. Nếu như hacker có thể truy cập vào được phần mềm này thì họ có thể thực hiện tất cả các thao tác của quản trị viên trên database. Trên thực tế phpMyAdmin là một trong những mục tiêu tấn công hàng đầu của hacker do tính chất quan trọng của cơ sở dữ liệu.

Do chạy trên nền tảng web nên một trong những cách đơn giản và hiệu quả để bảo mật phpMyAdmin đó là thêm lớp xác thực HTTP basic authentication. Với HTTP basic authentication được thêm vào thì trước khi người dùng có thể truy cập vào phpMyAdmin họ cần cung cấp thông tin đăng nhập của người dùng khác với người dùng để truy cập vào MySQL. Lúc này ngay cả khi ai đó có username và password của người dùng root vẫn không thể truy cập vào phpMyAdmin nếu như họ không có thông tin của người dùng để đăng nhập qua lớp HTTP basic authentication.

Cập Nhật Cấu Hình Apache

Bước đầu tiên chúng ta cần làm đó là cập nhật cấu hình của Apache web server để cho phép tập tin .htaccess viết đè lên cấu hình ban đầu của Apache.

Sử dụng một text editor bạn để mở tập tin cấu hình Apache dành cho phpMyAdmin, câu lệnh dưới đây sử dụng vim tuy nhiên bạn có thể dùng nano hoặc gedit:

$ sudo vi /etc/apache2/conf-available/phpmyadmin.conf

Và thêm vào chỉ thị AllowOverride All như sau:

<Directory /usr/share/phpmyadmin>
    Options FollowSymLinks
    DirectoryIndex index.php
    AllowOverride All
    . . .

Sau khi lưu tập tin chúng ta cần khởi động lại Apache:

$ sudo systemctl restart apache2

Tạo Tập Tin .htaccess

Tiếp theo bạn tạo một tập tin .htaccess để thêm vào các cấu hình Apache khác cho phpMyAdmin:

$ sudo nano /usr/share/phpmyadmin/.htaccess

Thêm vào tập tin này nội dung phía dưới đây:

AuthType Basic
AuthName "Restricted Files"
AuthUserFile /etc/phpmyadmin/.htpasswd
Require valid-user

Ở trên bạn lưu ý dòng chỉ thị ở dòng thứ 3 thiết lập tập tin chứa thông tin người dùng sử dụng để đăng nhập qua HTTP authentication là /etc/phpmyadmin/.htpasswd:

Tạo Tập Tin .htpasswd

Bước cuối cùng chúng ta cần làm trước khi hoàn tất quy trình bảo mật phpMyAdmin đó là tạo tập tin .htpasswd chứa thông tin người dùng đăng nhập HTTP authentication. Dù có thể tạo thủ công tuy nhiên cách đơn giản hơn đó là sử dụng câu lệnh htpasswd để tạo tập tin này:

$ sudo htpasswd -c /etc/phpmyadmin/.htpasswd my_username

Thay my_username bởi tên người dùng mà bạn muốn sử dụng. Bạn cũng sẽ được yêu cầu nhập mật khẩu mới cho người dùng này.

Kết thúc câu lệnh trên thì khi truy cập vào địa chỉ URL đăng nhập vào phpMyAdmin bạn thấy trình duyệt hiển thị một cửa sổ popup yêu cầu nhập thông tin đăng nhập:

Đăng nhập vào phpMyAdmin với HTTP Authentication

Nếu nhập thông tin đúng bạn sẽ được đưa tới trang đăng nhập phpMyAdmin.

Kết Luận

Tới đây bạn đã hoàn tất việc cấu hình bảo mật cho phpMyAdmin và sẵn sàng để sử dụng trên các máy chủ Ubuntu. Sử dụng giao diện này, bạn có thể dễ dàng tạo cơ sở dữ liệu, người dùng, bảng, v.v. và thực hiện các hoạt động thông thường như xóa và sửa đổi cấu trúc và dữ liệu.

Content must not be empty

Related Blog