Mọi site WordPress đều có file 'wp-config.php'. File cấu hình WordPress đặc biệt này là một trong những file quan trọng nhất. File chứa nhiều tham số cấu hình có thể sửa đổi để tăng cường bảo mật. Trong bài này, chúng tôi chỉ cách bảo mật site WordPress bằng file cấu hình.
Cách Bảo Mật Site WordPress Bằng File wp-config?
1. Thay Đổi Tiền Tố Cơ Sở Dữ Liệu
Bạn từng xem bảng database WordPress? (Truy cập qua tài khoản web host) Mặc định, database có 11 bảng. Mỗi bảng có chức năng riêng. Ví dụ: wp_posts lưu thông tin bài viết, trang, menu điều hướng. Vì chức năng mỗi bảng xác định trước, hacker biết nơi lưu chi tiết site. Ví dụ, muốn khai thác user, họ nhắm vào bảng 'wp_users'.
WordPress dùng tiền tố 'wp_' cho tất cả bảng mặc định. Thay đổi thành tiền tố duy nhất giúp ẩn tên bảng và bảo mật site. Để làm điều này, mở file 'wp-config'.
Bước 1: Để truy cập wp-config.php, mở tài khoản web host vào cPanel. Chọn File Manager, sẽ thấy trang như sau:
Bước 2: Bên tay trái, có thư mục public_html. Trong thư mục này, bạn tìm thấy file wp-config.
Trong file 'wp-config' đặt các dòng sau:
[code]$table_prefix = ‘wp_’;[/code] Bạn cần thay đổi thành cái gì đó ngẫu nhiên như: [code]$table_prefix = ‘agora_’;[/code]
Điều này sẽ đổi tên bảng trong database từ 'wp_users' thành 'wp_agora_users', 'wp_posts' thành 'wp_agora_posts', v.v.
2. Vô Hiệu Hóa Chỉnh Sửa File Theme/Plugin
Trong dashboard WordPress, có tùy chọn chỉnh sửa file plugin/theme. Nghĩa là với quyền truy cập dashboard và đủ quyền, ai cũng có thể chỉnh sửa theme/plugin của bạn.
Mặc dù công cụ tiện lợi nếu muốn cấu hình lại plugin, nhưng nó nguy hiểm trong tay hacker. Ví dụ, hacker xâm nhập site nhờ exploit. Dễ dàng họ thêm malware vào plugin/theme hiện có. Chúng có thể giấu backdoor để sau này khai thác truy cập site khi muốn. Bạn có thể ngăn chặn và bảo mật site bằng cách vô hiệu hóa tùy chọn chỉnh sửa file. Chỉ cần đặt mã sau vào file cấu hình WordPress:
[code]define(‘DISALLOW_FILE_EDIT’,true);[/code]
3. Ngăn Người Dùng Cài Đặt/Cập Nhật Plugin & Theme
Vô hiệu hóa chỉnh sửa file chỉ cung cấp một cấp độ bảo mật. Nó không ngăn hacker cài plugin độc hại để khai thác site. Khi họ có quyền truy cập admin panel cùng quyền user phù hợp, họ có thể cài theme/plugin giả mạo. Nếu bạn không thường cài plugin, bạn có thể vô hiệu hóa tùy chọn bằng cách thêm mã sau vào file cấu hình WordPress:
[code]define(‘DISALLOW_FILE_MODS’,true);[/code]
4. Buộc Sử Dụng 'FTP'
Ngăn cài đặt/cập nhật plugin/theme có thể hạn chế và không thực tế cho site thường cài plugin. Hơn nữa, cập nhật theme/plugin rất quan trọng cho bảo mật. Phương án thay thế để đảm bảo plugin được cài bởi user hợp lệ là buộc cung cấp chi tiết 'FTP'. Ngay khi Admin Panel bị xâm nhập, hacker không thể cài plugin giả mạo trừ khi họ có thông tin FTP của bạn.
Chỉ cần thêm dòng sau vào 'wp-config.php':
[code]define(‘FS_METHOD’, ‘ftpext’);[/code]
Nếu web host/server hỗ trợ 'FTPS' thì thêm dòng sau vào file cấu hình:
[code]define(‘FTP_SSL’, true);[/code]
Nếu web host/server hỗ trợ 'SFTP' thì thêm dòng sau:
[code]define(‘FS_METHOD’, ‘ssh2’);[/code]
5. Thay Đổi Security Keys
Bạn không cần nhập thông tin đăng nhập mỗi lần truy cập site. Bao giờ thắc mắc trình duyệt lưu thông tin như thế nào? Sau khi đăng nhập, thông tin được lưu mã hóa trong cookie trình duyệt. Security keys là biến ngẫu nhiên giúp cải thiện mã hóa. Nếu site bị hack, thay đổi secret keys sẽ vô hiệu hóa cookie và buộc mọi user hoạt động phải đăng xuất tự động. Một khi bị đẩy ra, hacker mất quyền truy cập WordPress admin.
Bạn có thể tạo bộ security keys mới và đặt vào file 'wp-config'. Nó giúp bảo mật site WordPress.
6. Ẩn File 'wp-config.php'
Trong mọi site WordPress, file wp-config có vị trí mặc định. Do đó, thay đổi vị trí file có thể ngăn nó rơi vào tay hacker. May mắn thay, WordPress cho phép thư mục 'wp-config' nằm bên ngoài cài đặt WordPress. Ví dụ, nếu WordPress cài trong public_html, file config mặc định nằm trong public_html. Nhưng bạn có thể di chuyển wp-config ra ngoài public_html và nó vẫn hoạt động.
7. Bảo Mật File wp-config.php
File cấu hình dễ bị tấn công khiến việc bảo mật nó trở nên cấp thiết. Cách làm là thay đổi vị trí để hacker không tìm thấy ở vị trí mặc định. Mặc dù một số developer phản đối, nhưng nhiều người thấy đây là ý tưởng tốt. Xem cuộc thảo luận này.
Biện pháp bảo mật khác là giới hạn quyền file. Đặt quyền file thành 600 để chỉ chủ sở hữu thật sự mới chỉnh sửa wp-config. Để đổi quyền file wp-config, chọn file rồi chọn 'Permission'.
Sau đó bạn cần thêm các dòng sau vào file .htaccess để ngăn hacker tải trực tiếp wp-config từ trình duyệt.
# protect wpconfig.php <files wp-config.php> order allow,deny deny from all </files>
Lời Kết
Với đó, chúng tôi đã bao phủ cách bảo mật site WordPress bằng file wp-config nhưng đây chỉ là một trong nhiều cách cải thiện bảo mật site. Một số biện pháp khác: dùng plugin bảo mật, SSL, username/password mạnh và duy nhất, xác thực HTTP, 2FA… Nhưng trước khi triển khai bất kỳ phương pháp nào, bạn phải backup site. Nếu sự cố xảy ra, khôi phục backup và site chạy lại ngay.