Chặn địa chỉ IP Address trên Nginx Web Server


Website của bạn bị tấn công DOS, DDOS,… Đó là 1 vấn đề có thể xảy ra khi bạn public website của mình trên Internet. Hay đơn giản ai đó đang crawl hết dữ liệu hoặc spam vào form contact của bạn vậy. Dạo này 1 website của mình cũng đang bị spam, gửi traffic ảo liên tục dù mình chẳng bao giờ chơi xấu ai. Đó là 1 thủ đoạn nhằm đánh sập trang web của bạn hay ít nhất làm website của bạn mất uy tín trên các công cụ tìm kiếm.

Vì vậy bài viết này sẽ giúp các bạn chặn / block 1 địa chỉ IP hoặc 1 dải địa chỉ IP trên Nginx Web Server.

Chặn địa chỉ IP trên Nginx

Chặn 1 địa chỉ IP

Để chặn / block 1 địa chỉ IP chúng ta cần sửa file Virtual Hosts, các file Virtual Host của Nginx Server trên Linux được đặt ở thư mục /etc/nginx/sites-available/

location / {
    ...
    deny    192.168.1.10;
    ...
}

Thêm dòng deny vào trong block location như trên. Nó sẽ chặn IP có địa chỉ IP là 192.168.1.10

Sau đó reload lại Nginx

sudo systemctl reload nginx

Chặn 1 dải địa chỉ IP

deny   192.168.1.0/24;

Nó sẽ chặn toàn bộ IP trong dải 192.168.1.x

Chặn toàn bộ nhưng chỉ cho phép 1 địa chỉ IP được phép truy cập

# allow 192.168.1.10
allow   192.168.1.10;

# drop rest of the world 
deny    all;

Thay đổi hiển thị trang báo lỗi truy cập 403 Forbidden

Sau khi chặn địa chỉ IP nó sẽ hiển thị trang báo lỗi 403

Để thay đổi hiển thị theo mong muốn của bạn, thì tạo 1 file 403.html và đặt chúng vào file Virtual Host của bạn

server {
    ...
    error_page   403  /403.html;
    ...
}

Nguồn: vinasupport.com

             
SHARE

Bài viết liên quan

mode_edit Bình luận của bạn

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

account_circle
web