Nginx – Blocking the access to URLs

Tác giả: 13/08/2023

Với những request mang tính độc hại, chúng ta cần ngăn chặn để phòng ngừa rủi ro và tránh tiêu hao tài nguyên máy chủ.

Hôm nay Nhân Hòa sẽ sử dụng Nginx để chặn nhé!

Cài đặt Nginx

apt-get update

apt-get install nginx

Chỉnh sửa tệp cấu hình Nginx cho trang web mặc định.

vi /etc/nginx/sites-available/default

Thêm dòng sau vào tệp cấu hình.

if ($request_uri ~* (rss|feed|xmlrpc|faq) ){

    return 403;

}

Đoạn cấm truy cập đối với các yêu cầu có liên quan đến các tài liệu RSS, feeds, giao thức XML-RPC hoặc các trang FAQ. Khi điều kiện được đáp ứng, mã return 403; sẽ trả về mã trạng thái HTTP 403 (Forbidden) cho yêu cầu.

Thay đổi dòng này, nhập từ mà bạn muốn từ chối truy cập trên URL.

if ($request_uri ~* (rss|feed|xmlrpc|faq) ){

File cấu hình ban đầu:

server {

        listen 80 default_server;

        listen [::]:80 default_server;

        root /var/www/html;

        index index.html index.htm index.nginx-debian.html;

        server_name _;

        location / {

                try_files $uri $uri/ =404;

        }

}

Đây là sau khi chỉnh sửa

server {

        listen 80 default_server;

        listen [::]:80 default_server;

        root /var/www/html;

        index index.html index.htm index.nginx-debian.html;

        server_name _;

        location / {

if ($request_uri ~* (rss|feed|xmlrpc|faq) ){

    return 403;

}

                try_files $uri $uri/ =404;

        }

}

 

Và khởi động lại Nginx

service nginx restart

Trong ví dụ, máy chủ Nginx sẽ từ chối quyền truy cập vào bất kỳ URL nào chứa các từ sau.

rss

feed

xmlrpc

faq

Từ một máy tính Linux từ xa, hãy thử truy cập một URL bị chặn.

curl -I  http://www.itvn.xyz/rss

curl -I  http://www.itvn.xyz/rss/tag01

curl -I  http://www.itvn.xyz/test/feed

curl -I  http://www.itvn.xyz/wordpress/xmlrpc.php

Sẽ trả về mã sau:

HTTP/1.1 403 Forbidden

Server: nginx/1.18.0 (Ubuntu)

Date: Aug, 12 Apr 2023 00:21:09 GMT

Content-Type: text/html

Content-Length: 162

Connection: keep-alive

Nếu người dùng cố gắng truy cập URL có chứa các từ bị cấm, yêu cầu sẽ bị từ chối.

Bạn có thể từ chối quyền truy cập vào các URL có chứa các từ cụ thể trên máy chủ Nginx

Hẹn gặp lại các bạn tại các bài viết sau tại wiki.nhanhoa.com

 

Trả lời