
Hướng Dẫn Chặn Tấn Công xmlrpc.php Trên WordPress Khi Sử Dụng DirectAdmin
Giới thiệu
Chặn tấn công vào tệp xmlrpc.php là một trong những biện pháp quan trọng giúp tăng cường bảo mật cho website WordPress, đặc biệt khi website vận hành trên môi trường DirectAdmin. Tệp xmlrpc.php thường xuyên trở thành mục tiêu của các cuộc tấn công brute force, DDoS hoặc khai thác lỗ hổng nhằm chiếm quyền kiểm soát website.
Trong bài viết này, ZHOST sẽ hướng dẫn bạn cách chặn truy cập vào xmlrpc.php bằng cách chỉnh sửa cấu hình trên 3 WebServer phổ biến: Apache, Nginx và OpenLiteSpeed khi sử dụng DirectAdmin. Việc cấu hình đúng cách sẽ giúp website của bạn giảm thiểu rủi ro bảo mật và hoạt động ổn định hơn.
Vì sao cần chặn truy cập xmlrpc.php?
Tệp xmlrpc.php được WordPress sử dụng để hỗ trợ các tính năng như:
-
Đăng bài từ ứng dụng di động
-
Kết nối với các dịch vụ bên thứ ba
-
Pingback và trackback
Tuy nhiên, trong thực tế:
-
xmlrpc.phpít khi được sử dụng -
Lại thường xuyên bị kẻ xấu khai thác để tấn công website
Do đó, chặn truy cập vào xmlrpc.php là giải pháp bảo mật cần thiết, đặc biệt với các website WordPress không sử dụng XML-RPC.
Chặn tấn công với Apache + Directadmin.
- Truy cập vào Server với quyền root qua SSH
- Đi tới đường dẫn lưu trữ các tệp mẫu tùy chỉnh (khi bạn chỉnh sửa hoặc tạo mới các mẫu cấu hình cho DirectAdmin, bạn có thể lưu chúng vào thư mục này để đảm bảo rằng các thay đổi của bạn không bị ghi đè bởi các cập nhật hệ thống hoặc DirectAdmin.)
Zhost Tutorialcd /usr/local/directadmin/data/templates/custom/
- Tạo các tệp trống để chứa cấu hình tùy chỉnh
Zhost Tutorialtouch virtual_host2.conf.CUSTOM.4.post virtual_host2_secure.conf.CUSTOM.4.post touch virtual_host2_secure_sub.conf.CUSTOM.4.post virtual_host2_sub.conf.CUSTOM.4.post chmod 644 virtual_host2.conf.CUSTOM.4.post virtual_host2_secure.conf.CUSTOM.4.post chmod 644 virtual_host2_secure_sub.conf.CUSTOM.4.post virtual_host2_sub.conf.CUSTOM.4.post
- Mở từng tệp và thêm đoạn code sau ở cuối file
Zhost Tutorial<Location ~ "/xmlrpc.php"> Order allow,deny Deny from all ErrorDocument 403 "Sorry, you are not allowed to view this page!" </Location>
- Khởi động lại hệ thống
Zhost Tutorialsudo systemctl restart apache2
- Sao chép nội dung của tệp đầu tiên vào các tệp khác:
Zhost Tutorialcp -p virtual_host2.conf.CUSTOM.4.post virtual_host2_secure.conf.CUSTOM.4.post cp -p virtual_host2.conf.CUSTOM.4.post virtual_host2_secure_sub.conf.CUSTOM.4.post cp -p virtual_host2.conf.CUSTOM.4.post virtual_host2_sub.conf.CUSTOM.4.post
- Áp dụng các thay đổi và tái tạo lại cấu hình cho tất cả các virtual host hiện có
Zhost Tutorialcd /usr/local/directadmin/custombuild/ ./build rewrite_confs
- Hãy đảm bảo rằng Apache của bạn đã khởi động lại, sau đó thử truy cập vào link
http://www.domain.com/xmlrpc.php=> Bạn sẽ thấy thông báo “Sorry, you are not allowed to view this page!”.
Chặn tấn công với Nginx + Directadmin.
- Truy cập vào Server với quyền root qua SSH
- Đi tới đường dẫn lưu trữ các tệp mẫu tùy chỉnh (khi bạn chỉnh sửa hoặc tạo mới các mẫu cấu hình cho DirectAdmin, bạn có thể lưu chúng vào thư mục này để đảm bảo rằng các thay đổi của bạn không bị ghi đè bởi các cập nhật hệ thống hoặc DirectAdmin.)
Zhost Tutorialcd /usr/local/directadmin/data/templates/custom/
- Tạo các tệp trống để chứa cấu hình tùy chỉnh
Zhost Tutorialtouch nginx_server.conf.CUSTOM.4.post nginx_server_secure.conf.CUSTOM.4.post touch nginx_server_secure_sub.conf.CUSTOM.4.post nginx_server_sub.conf.CUSTOM.4.post chmod 644 nginx_server.conf.CUSTOM.4.post nginx_server_secure.conf.CUSTOM.4.post chmod 644 nginx_server_secure_sub.conf.CUSTOM.4.post nginx_server_sub.conf.CUSTOM.4.post
- Mở từng tệp và thêm đoạn code sau ở cuối file
Zhost Tutoriallocation =/xmlrpc.php { deny all; }
- Lưu tệp cấu hình và kiểm tra cú pháp của tệp cấu hình Nginx để đảm bảo không có lỗi
Zhost Tutorialsudo nginx -t
- Khởi động lại hệ thống
Zhost Tutorialsudo systemctl restart nginx
- Sao chép nội dung của tệp đầu tiên vào các tệp khác
Zhost Tutorialcp -p nginx_server.conf.CUSTOM.4.post nginx_server_secure.conf.CUSTOM.4.post cp -p nginx_server_secure.conf.CUSTOM.4.post nginx_server_secure_sub.conf.CUSTOM.4.post cp -p nginx_server_secure_sub.conf.CUSTOM.4.post nginx_server_sub.conf.CUSTOM.4.post
- Áp dụng các thay đổi và tái tạo lại cấu hình
Zhost Tutorialcd /usr/local/directadmin/custombuild/ ./build rewrite_confs
- Hãy đảm bảo rằng Nginx của bạn đã khởi động lại, sau đó thử truy cập vào link
http://www.domain.com/xmlrpc.php=> Bạn sẽ thấy lỗi 403: “403 Forbidden”.
Chặn Tấn công Với OpenLiteSpeed + Directadmin.
- Truy cập vào Server với quyền root qua SSH
- Đi tới đường dẫn lưu trữ các tệp mẫu tùy chỉnh (khi bạn chỉnh sửa hoặc tạo mới các mẫu cấu hình cho DirectAdmin, bạn có thể lưu chúng vào thư mục này để đảm bảo rằng các thay đổi của bạn không bị ghi đè bởi các cập nhật hệ thống hoặc DirectAdmin.)
Zhost Tutorialcd /usr/local/directadmin/data/templates/custom/
- Tạo các tệp trống để chứa cấu hình tùy chỉnh
Zhost Tutorialtouch openlitespeed_vhost.conf.CUSTOM.5.post chown diradmin:diradmin openlitespeed_vhost.conf.CUSTOM.5.post
- Mở tệp và thêm dòng code sau ở cuối file
Zhost TutorialRewriteRule ^/(xmlrpc|wp-trackback)\.php - [F,L,NC]
- Khởi động lại hệ thống
Zhost Tutorialsudo systemctl restart lsws
- Áp dụng các thay đổi và tái tạo lại cấu hình
Zhost Tutorialcd /usr/local/directadmin/custombuild/ ./build rewrite_confs
- Hãy đảm bảo rằng OpenLiteSpeed của bạn đã khởi động lại, sau đó thử truy cập vào link
http://www.domain.com/xmlrpc.php=> Bạn sẽ thấy lỗi 403: “403 Forbidden”.
Hoàn tất cấu hình chặn truy cập xmlrpc.php
Sau khi thực hiện đúng các bước tương ứng với WebServer bạn đang sử dụng, tệp xmlrpc.php sẽ bị từ chối truy cập hoàn toàn, giúp giảm đáng kể nguy cơ bị tấn công vào website WordPress.
Kết luận
Việc chặn truy cập xmlrpc.php trên WordPress khi sử dụng DirectAdmin là bước bảo mật quan trọng giúp website tránh các cuộc tấn công brute force và khai thác lỗ hổng phổ biến. Dù bạn đang sử dụng Apache, Nginx hay OpenLiteSpeed, việc cấu hình đúng cách sẽ giúp hệ thống an toàn và ổn định hơn.
ZHOST khuyến nghị người dùng nên kết hợp thêm các biện pháp bảo mật khác như firewall, giới hạn đăng nhập, cập nhật WordPress định kỳ để nâng cao mức độ an toàn cho website. Chúc các bạn thành công!
