Giới thiệu
phpMyAdmin là một công cụ quản trị cơ sở dữ liệu MySQL dựa trên web thuận tiện, có thể giúp bạn tiết kiệm hàng tấn thời gian từ việc quản lý cơ sở dữ liệu theo lệnh. Trong bài viết này, tôi sẽ chỉ cho bạn cách cài đặt và bảo mật phpMyAdmin trên ứng dụng One-Click WordPress.
Điều kiện tiên quyết
Tôi giả sử rằng bạn đã triển khai ứng dụng WordPress One-Click từ đầu và đã đăng nhập bằng root. Người dùng không root sẽ cần sử dụng sudo
lệnh.
Bước một: Cài đặt phpMyAdmin
Truy cập trang web chính thức của phpMyAdmin từ trình duyệt của bạn, nhấp vào liên kết phpMyAdmin-4.4.7-all-languages.tar.bz2
để tải xuống tệp lưu trữ có cùng tên về máy cục bộ của bạn. Sau đó tải nó lên thư mục /var/www/html
trên VPS của bạn bằng WinSCP hoặc một công cụ SFTP tương tự.
Giải nén tệp lưu trữ bằng các lệnh sau từ thiết bị đầu cuối của bạn:
cd /var/www/html
tar -jxvf phpMyAdmin-4.4.7-all-languages.tar.bz2
Để bảo vệ phpMyAdmin khỏi sự truy cập trái phép, bạn nên đổi tên thư mục mới được tạo phpMyAdmin
thành một tên riêng và khác thường. Chúng tôi sử dụng pmapma
ở đây.
mv phpMyAdmin-4.4.7-all-languages pmapma
Bây giờ, chúng ta cần tạo một tệp cấu hình cho phpMyAdmin. Tạo một bản sao của tệp config.default.php
và đổi tên thành config.inc.php
:
cd pmapma
cp config.sample.inc.php config.inc.php
Chỉnh sửa config.inc.php
với trình soạn thảo văn bản vi.
vi config.inc.php
Điền vào bí mật blowfish, để lại bất kỳ tham số khác.
$cfg['blowfish_secret'] = 'InputRandomCharactersHere';
Thay thế InputRandomCharactersHere
bằng bất kỳ ký tự nào, không quá 46 bit và không để trống.
Lưu và bỏ vi.
:wq
Bước ba: Cấp quyền
Truy cập http://your_host_IP/pmapma
từ trình duyệt của bạn. Bạn sẽ gặp một lỗi cho phép vào thư mục /var/lib/php/fpm/session/
. Bạn có thể sửa lỗi bằng cách thay đổi chủ sở hữu của thư mục này thành nginx
.
chown nginx /var/lib/php/fpm/session/
Làm mới trang từ trình duyệt của bạn, bạn sẽ thấy rằng dấu nhắc lỗi biến mất. Bây giờ bạn có thể đăng nhập với thông tin gốc của MySQL. Bạn có thể lấy nó từ tập tin /root/.my.cnf
.
cat /root/.my.cnf
Bước bốn: Bảo mật phpMyAdmin
phpMyAdmin là một công cụ mạnh mẽ, bạn sẽ không bao giờ muốn người dùng trái phép truy cập vào nó. Vì vậy, chúng ta có thể thêm một cổng xác thực bổ sung vào giao diện đăng nhập phpMyAdmin.
Đầu tiên, bạn cần tạo một mật khẩu được mã hóa từ thiết bị đầu cuối của bạn.
openssl passwd
Nhập và xác nhận mật khẩu mà bạn muốn sử dụng. Sau đó, một phiên bản được mã hóa của mật khẩu bạn nhập sẽ hiển thị trên màn hình. Viết nó ra giấy, chúng tôi sẽ sử dụng nó sau. Mật khẩu được mã hóa phải giống như thế này:
rs4D8QYVwojBI
Bây giờ, tạo một tệp xác thực trong thư mục lưu trữ bản mã Nginx /etc/nginx/htpasswd/
. Chúng tôi sẽ sử dụng tên tệp pma
ở đây, hãy nhớ thay thế bằng tên tệp của riêng bạn.
vi /etc/nginx/htpasswd/pma
Thêm tên người dùng bạn muốn sử dụng và mật khẩu được mã hóa mà bạn vừa tạo vào tệp này theo định dạng sau.
pmauser:rs4D8QYVwojBI
Hãy nhớ thay thế tên người dùng pmauser
và mật khẩu được mã hóa rs4D8QYVwojBI
bằng tên riêng của bạn.
Lưu và bỏ vi.
:wq
Tiếp theo, bạn cần sửa đổi các tệp vhost trong /etc/nginx/conf.d
: wordpress_http.conf
và wordpress_https.conf
.
Trong trường hợp lỗi cấu hình, tạo một bản sao lưu của chúng.
cp /etc/nginx/conf.d/*.conf /root/
Trong tệp wordpress_http.conf
, tìm khối bắt đầu bằng location ^~ /wp-admin/ {
, nó phải là:
location ^~ /wp-admin/ {
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/htpasswd/wpadmin;
location ~* \.(htaccess|htpasswd) {
deny all;
}
location ~ \.php(?:$|/) {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_pass php-handler-http;
fastcgi_read_timeout 60s;
}
}
Tạo một bản sao cho toàn bộ khối ngay bên dưới nó, sau đó sửa đổi wp-admin
trong dòng đầu tiên pmapma
và wpadmin
trong dòng thứ ba thành pma
. Không sửa đổi bất kỳ nội dung khác.
location ^~ /pmapma/ {
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/htpasswd/pma;
location ~* \.(htaccess|htpasswd) {
deny all;
}
location ~ \.php(?:$|/) {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_pass php-handler-http;
fastcgi_read_timeout 60s;
}
}
Hãy nhớ thay thế tên thư mục pmapma
và tên tệp pma
bằng tên riêng của bạn.
Lưu và bỏ vi.
:wq
Ngoài ra, bạn cần tìm một khối tương tự trong tệp wordpress_https.conf
và sửa đổi tệp theo cùng một cách.
Cuối cùng, để thay đổi có hiệu lực, bạn cần khởi động lại máy chủ web.
service nginx restart && service php-fpm restart
Đó là nó. Bạn đã cài đặt và bảo mật phpMyAdmin trên Ứng dụng WordPress Vultr One-Click.