Chặn Tấn Công Vào Tệp xmlrpc.php Trong WordPress Trên Directadmin

chan-tan-cong-vao-tep-xmlrpc-php-trong-wordpress-tren-directadmin

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 Tutorial
    cd /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 Tutorial
    touch 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 Tutorial
    sudo 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 Tutorial
    cp -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 Tutorial
    cd /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 linkhttp://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 Tutorial
    cd /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 Tutorial
    touch 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 Tutorial
    location =/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 Tutorial
    sudo nginx -t

 

  • Khởi động lại hệ thống
    Zhost Tutorial
    sudo 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 Tutorial
    cp -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 Tutorial
    cd /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 linkhttp://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 Tutorial
    cd /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 Tutorial
    touch 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 Tutorial
    RewriteRule ^/(xmlrpc|wp-trackback)\.php - [F,L,NC]

 

  • Khởi động lại hệ thống
    Zhost Tutorial
    sudo systemctl restart lsws

 

  • Áp dụng các thay đổi và tái tạo lại cấu hình
    Zhost Tutorial
    cd /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 linkhttp://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!