Nginx – Blocking an IP address list
Ở bài viết này chúng ta sẽ sử dụng Nginx chặn theo IP nhé!
Bài lab mình thực hiện trên Ubuntu 22.04 với Nginx v1.18, nó sẽ có liên quan đến bài viết các bạn có thể tham khảo
Nginx – Blocking access từ một quốc gia – Nhan Hoa Knowledgebase
root@tudv-test-fpt:/etc/nginx# nginx -v nginx version: nginx/1.18.0 (Ubuntu) root@tudv-test-fpt:/etc/nginx# cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=22.04 DISTRIB_CODENAME=jammy DISTRIB_DESCRIPTION="Ubuntu 22.04.1 LTS" root@tudv-test-fpt:/etc/nginx#
Cài đặt nginx server, nếu như bạn đã cài đặt, bạn hãy bỏ qua bước này
apt-get update apt-get install nginx
Chỉnh sửa file cấu hình default
vi /etc/nginx/sites-available/default
Và thêm vào 1 đoạn sau
include /etc/nginx/blacklist.conf;
Đây là file cấu hình trước khi chỉnh sửa
Sau khi chỉnh sửa
Tạo file chặn IP như sau
vi /etc/nginx/blacklist.conf deny 45.117.80.0/22; deny 58.186.44.179; allow all;
chown www-data:www-data /etc/nginx/blacklist.conf
service nginx restart
Chặn như vậy là chặn site default
Mình sẽ chặn cho vhost site1.itvn.xyz thì cũng tương tự
Chỉnh sửa file config
vi /etc/nginx/sites-available/site1.itvn.xyz.conf
service nginx restart
Kiểm tra truy vấn
Như vậy Nhân Hòa đã hướng dẫn các bạn cấu hình chặn access theo IP và dải IP trên 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