Iptables và lọc lưu lượng truy cập từ những người bất đồng chính kiến ​​nghèo và lười biếng

Sự liên quan của việc chặn các lượt truy cập vào các tài nguyên bị cấm sẽ ảnh hưởng đến bất kỳ quản trị viên nào có thể bị buộc tội chính thức vì không tuân thủ luật pháp hoặc lệnh của cơ quan có liên quan.

Iptables và lọc lưu lượng truy cập từ những người bất đồng chính kiến ​​nghèo và lười biếng

Tại sao phải phát minh lại bánh xe khi có các chương trình và bản phân phối chuyên dụng cho nhiệm vụ của chúng ta, ví dụ: Zeroshell, pfSense, ClearOS.

Ban quản lý còn có một câu hỏi khác: Sản phẩm được sử dụng có giấy chứng nhận an toàn từ tiểu bang của chúng tôi không?

Chúng tôi đã có kinh nghiệm làm việc với các bản phân phối sau:

  • Zeroshell - các nhà phát triển thậm chí còn tặng giấy phép 2 năm, nhưng hóa ra bộ công cụ phân phối mà chúng tôi quan tâm, một cách phi logic, đã thực hiện một chức năng quan trọng đối với chúng tôi;
  • pfSense - tôn trọng và danh dự, đồng thời nhàm chán, làm quen với dòng lệnh của tường lửa FreeBSD và không đủ thuận tiện cho chúng tôi (tôi nghĩ đó là vấn đề của thói quen, nhưng hóa ra đó là một cách sai lầm);
  • ClearOS - trên phần cứng của chúng tôi, nó hoạt động rất chậm, chúng tôi không thể tiến hành thử nghiệm nghiêm túc, vậy tại sao lại có giao diện nặng như vậy?
  • Ideco SELECTA. Sản phẩm Ideco là một cuộc trò chuyện riêng, một sản phẩm thú vị, nhưng vì lý do chính trị không dành cho chúng tôi và tôi cũng muốn “cắn” họ về giấy phép cho cùng một Linux, Roundcube, v.v. Họ lấy ý tưởng từ đâu mà cắt giao diện thành Python và bằng cách tước bỏ quyền siêu người dùng, họ có thể bán một sản phẩm hoàn chỉnh được tạo thành từ các mô-đun được phát triển và sửa đổi từ cộng đồng Internet được phân phối theo GPL&v.v.

Tôi hiểu rằng bây giờ những câu cảm thán tiêu cực sẽ đổ về phía tôi với yêu cầu chứng minh cảm xúc chủ quan của tôi một cách chi tiết, nhưng tôi muốn nói rằng nút mạng này cũng là bộ cân bằng lưu lượng cho 4 kênh bên ngoài Internet và mỗi kênh có những đặc điểm riêng . Một nền tảng khác là sự cần thiết của một trong nhiều giao diện mạng để hoạt động trong các không gian địa chỉ khác nhau, và tôi sẳn sàng thừa nhận rằng Vlan có thể được sử dụng ở mọi nơi khi cần thiết và không cần thiết chưa sẵn sàng. Có những thiết bị đang được sử dụng, chẳng hạn như TP-Link TL-R480T+ - nhìn chung, chúng hoạt động không hoàn hảo với những sắc thái riêng. Có thể cấu hình phần này trên Linux nhờ trang web chính thức của Ubuntu Cân bằng IP: kết hợp nhiều kênh Internet thành một. Hơn nữa, mỗi kênh có thể “rơi” bất cứ lúc nào và tăng lên. Nếu bạn quan tâm đến một tập lệnh hiện đang hoạt động (và tập lệnh này đáng được xuất bản riêng), hãy viết bình luận.

Giải pháp đang được xem xét không được cho là duy nhất, nhưng tôi muốn đặt câu hỏi: “Tại sao doanh nghiệp phải thích ứng với các sản phẩm đáng ngờ của bên thứ ba với yêu cầu nghiêm trọng về phần cứng khi có thể xem xét một phương án thay thế?”

Nếu ở Liên bang Nga có danh sách Roskomnadzor thì ở Ukraine có phụ lục về Quyết định của Hội đồng An ninh Quốc gia (ví dụ. đây), thì lãnh đạo địa phương cũng không ngủ. Ví dụ: chúng tôi được cung cấp danh sách các trang web bị cấm, theo quan điểm của ban quản lý, làm giảm năng suất ở nơi làm việc.

Giao tiếp với đồng nghiệp ở các doanh nghiệp khác, nơi mặc định tất cả các trang web đều bị cấm và chỉ khi được yêu cầu với sự cho phép của sếp, bạn mới có thể truy cập vào một trang web cụ thể, mỉm cười tôn trọng, suy nghĩ và “hút thuốc trước vấn đề”, chúng tôi hiểu ra rằng cuộc sống vẫn tốt và chúng tôi bắt đầu tìm kiếm của họ.

Có cơ hội không chỉ phân tích những gì họ viết trong “sách của các bà nội trợ” về lọc lưu lượng truy cập mà còn để xem những gì đang xảy ra trên kênh của các nhà cung cấp khác nhau, chúng tôi nhận thấy các công thức sau (vui lòng xem mọi ảnh chụp màn hình một chút) hiểu khi hỏi):

Nhà cung cấp 1
— không bận tâm và áp đặt các máy chủ DNS của riêng nó và một máy chủ proxy minh bạch. Chà?.. nhưng chúng tôi có quyền truy cập vào nơi chúng tôi cần (nếu chúng tôi cần :))

Nhà cung cấp 2
- tin rằng nhà cung cấp hàng đầu của anh ấy nên suy nghĩ về điều này, bộ phận hỗ trợ kỹ thuật của nhà cung cấp hàng đầu thậm chí còn thừa nhận lý do tại sao tôi không thể mở trang web tôi cần, điều này không bị cấm. Tôi nghĩ bức ảnh sẽ làm bạn thích thú :)

Iptables và lọc lưu lượng truy cập từ những người bất đồng chính kiến ​​nghèo và lười biếng

Hóa ra, họ dịch tên của các trang web bị cấm thành địa chỉ IP và chặn chính IP đó (họ không bận tâm vì địa chỉ IP này có thể lưu trữ 20 trang web).

Nhà cung cấp 3
— cho phép giao thông đi đến đó, nhưng không cho phép nó quay lại dọc theo tuyến đường.

Nhà cung cấp 4
— cấm mọi thao tác với các gói theo hướng được chỉ định.

Phải làm gì với VPN (đối với trình duyệt Opera) và plugin trình duyệt? Lúc đầu, chơi với nút Mikrotik, chúng tôi thậm chí còn nhận được một công thức sử dụng nhiều tài nguyên cho L7, sau đó chúng tôi đã phải từ bỏ (có thể có nhiều tên bị cấm hơn, thật đáng buồn khi, ngoài trách nhiệm trực tiếp đối với các tuyến đường, trên 3 tá biểu thức tải bộ xử lý PPC460GT đạt 100%).

Iptables và lọc lưu lượng truy cập từ những người bất đồng chính kiến ​​nghèo và lười biếng.

Điều gì đã trở nên rõ ràng:
DNS trên 127.0.0.1 hoàn toàn không phải là thuốc chữa bách bệnh, các phiên bản trình duyệt hiện đại vẫn cho phép bạn vượt qua những vấn đề như vậy. Không thể giới hạn tất cả người dùng bị giảm quyền và chúng ta không được quên số lượng lớn DNS thay thế. Internet không tĩnh và ngoài các địa chỉ DNS mới, các trang web bị cấm còn mua địa chỉ mới, thay đổi tên miền cấp cao nhất và có thể thêm/xóa ký tự trong địa chỉ của chúng. Nhưng vẫn có quyền sống một cái gì đó như:

ip route add blackhole 1.2.3.4

Sẽ khá hiệu quả nếu lấy danh sách địa chỉ IP từ danh sách các trang web bị cấm, nhưng vì những lý do đã nêu ở trên, chúng tôi đã chuyển sang cân nhắc về Iptables. Đã có bộ cân bằng trực tiếp trên bản phát hành CentOS Linux 7.5.1804.

Internet của người dùng phải nhanh và Trình duyệt không nên đợi nửa phút, kết luận rằng trang này không khả dụng. Sau một thời gian dài tìm kiếm, chúng tôi đã tìm thấy mô hình này:
Tệp 1 -> /script/denied_host, danh sách những cái tên bị cấm:

test.test
blablabla.bubu
torrent
porno

Tệp 2 -> /script/denied_range, danh sách các không gian địa chỉ và địa chỉ bị cấm:

192.168.111.0/24
241.242.0.0/16

Tệp tập lệnh 3 -> ipt.shthực hiện công việc với ipables:

# считываем полезную информацию из перечней файлов
HOSTS=`cat /script/denied_host | grep -v '^#'`
RANGE=`cat /script/denied_range | grep -v '^#'`
echo "Stopping firewall and allowing everyone..."
# сбрасываем все настройки iptables, разрешая то что не запрещено
sudo iptables -F
sudo iptables -X
sudo iptables -t nat -F
sudo iptables -t nat -X
sudo iptables -t mangle -F
sudo iptables -t mangle -X
sudo iptables -P INPUT ACCEPT
sudo iptables -P FORWARD ACCEPT
sudo iptables -P OUTPUT ACCEPT
#решаем обновить информацию о маршрутах (особенность нашей архитектуры)
sudo sh rout.sh
# циклически обрабатывая каждую строку файла применяем правило блокировки строки
for i in $HOSTS; do
sudo iptables -I FORWARD -m string --string $i --algo bm --from 1 --to 600 -p tcp -j REJECT --reject-with tcp-reset;
sudo iptables -I FORWARD -m string --string $i --algo bm --from 1 --to 600 -p udp -j DROP;
done
# циклически обрабатывая каждую строку файла применяем правило блокировки адреса
for i in $RANGE; do
sudo iptables -I FORWARD -p UDP -d $i -j DROP;
sudo iptables -I FORWARD -p TCP  -d $i -j REJECT --reject-with tcp-reset;
done

Việc sử dụng sudo là do chúng tôi có một bản hack nhỏ để quản lý thông qua giao diện WEB, nhưng theo kinh nghiệm sử dụng mô hình như vậy trong hơn một năm cho thấy, WEB không quá cần thiết. Sau khi triển khai, có mong muốn thêm danh sách các trang web vào cơ sở dữ liệu, v.v. Số lượng máy chủ bị chặn là hơn 250 + chục không gian địa chỉ. Thực sự có vấn đề khi truy cập một trang web thông qua kết nối https, chẳng hạn như quản trị viên hệ thống, tôi có khiếu nại về trình duyệt :), nhưng đây là những trường hợp đặc biệt, hầu hết các nguyên nhân dẫn đến việc thiếu quyền truy cập vào tài nguyên vẫn đứng về phía chúng tôi , chúng tôi cũng đã chặn thành công Opera VPN và các plugin như friGate và đo từ xa từ Microsoft.

Iptables và lọc lưu lượng truy cập từ những người bất đồng chính kiến ​​nghèo và lười biếng

Nguồn: www.habr.com

Thêm một lời nhận xét