kiến thức Chặn Website bằng giao thức NAT trên MikroTik (có bao gồm chuyển hướng đến màn hình cảnh báo)

  • Người tạo chủ đề Người tạo chủ đề hoanganhkiet.264
  • Ngày bắt đầu Ngày bắt đầu

hoanganhkiet.264

Senior Member
Chào các bác, vừa qua mình có nghiên cứu, vọc vạch ra một cách khá hữu ích để các bác chặn Website lạ, độc hại, chuyển hướng quảng cáo, ... bằng giao thức NAT trên các loại Router MikroTik.
So với việc chặn bằng DNS, chặn bằng NAT sẽ trỏ thẳng vào điểm đích mà mình đã khai báo trong danh sách NAT, cụ thể là địa chỉ IP của Website cần chặn sẽ trỏ thẳng vào địa chỉ IP localhost (127.0.0.1) hoặc 0.0.0.0, dù máy Client đang gán bất kỳ DNS nào.
Nay mình sẽ hướng dẫn các bác chi tiết việc cấu hình chặn Website bằng giao thức NAT cho các bác cùng nhau tham khảo, nếu các bác nào có cách chặn nào triệt & hay hơn có thể góp ý cho mình để mình nghiên cứu thêm. :love:

Đầu tiên, các bác vào mục IP > Firewall > Address Lists, tiến hành khai báo các Website cần chặn vào một danh sách, ở đây mình đặt tên là "BLACKLIST-Malware, Advertising" .
1772641150780.webp


Tiếp theo, các bác vào tab Raw, tạo 2 Rule với chain là "prerouting" & output", mỗi loại chain lần lượt khai báo Src. Address List & Dst. Address List là danh sách Website cần chặn mà các bác đã khai báo ở trên ("BLACKLIST-Malware, Advertising" ), In. Interface & Out. Interface khai báo là nguồn mạng vào, thí dụ như Interface quay số PPPoE của Router ("pppoe-out1"), tất cả 2 rule này đều chọn Action là drop.
Công dụng của 2 Rule này là chặn tất cả các kết nối của Website đã khai báo trong danh sách đi từ trong LAN ra ngoài Internet & ngược lại (chặn 2 chiều với toàn bộ giao thức - Protocol).
1772641317488.webp


Vào tab NAT, tạo 2 Rule với chain là "dstnat", Dst. Address List là danh sách Website cần chặn ("BLACKLIST-Malware, Advertising" ), Protocol các bác chỉnh thành TCP, khai báo Dst. Port lần lượt 2 Rule là: 80 & 443.
1772641910746.webp

Sau khi khai báo xong, các bác qua tab Action chọn là dst-nat, tiến thành khai báo 2 mục To Addresses & To Ports:
*Như ở tựa đề bài viết, mình có nói là "chuyển hướng đến màn hình cảnh báo", nên 2 mục này mình khai báo là trỏ thẳng vào PC Server đang chạy IIS Service của Windows Server (Dịch vụ cung cấp Website mặc định của Windows Server - Internet Information Services).
Trong trường hợp các bác không có Host để chuyển hướng đến màn hình cảnh báo, các bác khai báo To Addresses là 0.0.0.0 hoặc 127.0.0.1, To Ports "để trống".
1772642253071.webp

Ngoài ra, các bác có thể khai báo thêm 1 Rule "dstnat" với ProtocolICMP, nó có công dụng địa chỉ IP/Website nằm trong danh sách cần chặn sẽ Ping thấy như 1 IP/Website Public bình thường, vì khi chặn ở Firewall RAW, IP/Website nằm trong danh sách chặn sẽ không thể Ping thấy.
(Tab Action các bác khai báo là "dst-nat", To Addresses khai báo là IP của Google "8.8.8.8" , To Ports "để trống")
1772642587639.webp


Mình sẽ thử nghiệm cho các bạn xem:
Mình sẽ thử nghiệm trên 1 Website như trên hình (Website này là chuyên ẩn danh Link chuyển hướng quảng cáo sàn cam trên nền tảng Facebook, nó được bao bọc như 1 bài viết có hình ảnh đính kèm thông thường), chưa mở các Rule chặn.
1772642982202.webp

Sau khi mở các Rule chặn lên, và đây là kết quả:
1772643112455.webp


Video test thực tế
1772643809711.webp

Với cách làm này, các bác sử dụng trong mạng nội bộ có thể tránh được các Website độc hại, chưa quảng cáo, ... một cách triệt hạ.
Một số lưu ý khi sử dụng cách này:
  • Không có tác dụng khi máy Client đang sử dụng VPN.
  • Vì phải tự khai báo Website cần chặn, nên các bác phải chịu khó thu thập Website độc hại, chuyển hướng quảng cáo, ... và khai báo trong Address Lists, khuyến khích nên sử dụng kèm theo chặn quảng cáo, Web độc hại bằng DNS (AdGuard, NextDNS, ...)


*Các Website trong danh sách mình thu thập và dò tìm tại website "urlquery.net" .


Cám ơn các bác đã xem bài post của mình. :love:
 
nghe cao siêu thế, thế là chặn được mọi web theo yêu cầu à fen ? đổi dns cũng ko ăn thua ?
Theo lý thuyết thì traffic đi qua Mik có thể route traffic gọi đến DNS truyền thống về DNS của mik luôn, còn bật DoH với DoT thì chưa rõ
 
chặn kiểu này nghe chừng hơi nhọc :v
viết script cho nó tự parse từ các list block rồi áp vào đi thím
chứ ko thì chặn luôn ở DNS hoặc FW policy cho đỡ nhức đầu

t thấy trỏ thẳng vào con mik vẫn không ổn lắm, có tăng cpu ko nhỉ
nếu cpu usage tăng cao quá thì cũng ko ổn.
 
t thấy trỏ thẳng vào con mik vẫn không ổn lắm, có tăng cpu ko nhỉ
nếu cpu usage tăng cao quá thì cũng ko ổn.
trỏ thẳng vào Mik thì chắc chắn cpu phải oằn mình là đương nhiên, nó phải lọc gói tin và so sánh với rule xem, hợp lệ mới cho qua. Nói chung là sẽ tốn tài nguyên lắm
 
Sao ko cài luôn Adguard Home cho đỡ nhọc?
cách này mình vọc ra được thôi nha bác, lý thuyết là chặn tốt nhưng mà cực ở chỗ phải khai báo Domain/IP cần chặn và thêm trong Address Lists của MikroTik, nên nếu xài vào thực tế thì ko khả thi, chặn bằng DNS cho nó đơn giản. :D
 
các bác cho hỏi, mình muốn limit băng thông mạng khi truy cập youtube, facebook bằng Mikrotik thì làm sao nhỉ?
 

Thống kê chủ đề

Ngày tạo
hoanganhkiet.264,
Người trả lời cuối
kenrai123,
Trả lời
12
Lượt xem
3.779
Quay lại
Lên đầu trang