Iptables و فیلتر کردن ترافیک از مخالفان فقیر و تنبل

ارتباط مسدود کردن بازدید از منابع ممنوعه بر هر مدیری که ممکن است رسماً به دلیل عدم رعایت قانون یا دستورات مقامات مربوطه متهم شود تأثیر می گذارد.

Iptables و فیلتر کردن ترافیک از مخالفان فقیر و تنبل

چرا زمانی که برنامه ها و توزیع های تخصصی برای وظایف ما وجود دارد، چرخ را دوباره اختراع کنیم، به عنوان مثال: Zeroshell، pfSense، ClearOS.

مدیریت سوال دیگری داشت: آیا محصول مورد استفاده دارای گواهی ایمنی از کشور ما است؟

ما تجربه کار با توزیع های زیر را داشتیم:

  • Zeroshell - توسعه دهندگان حتی یک مجوز 2 ساله اهدا کردند، اما معلوم شد که کیت توزیع مورد علاقه ما، به طور غیرمنطقی، عملکرد مهمی را برای ما انجام می دهد.
  • pfSense - احترام و افتخار، در عین حال خسته کننده، عادت کردن به خط فرمان فایروال FreeBSD و به اندازه کافی برای ما راحت نیست (فکر می کنم این یک عادت است، اما معلوم شد که راه اشتباه است).
  • ClearOS - در سخت افزار ما بسیار کند بود، ما نتوانستیم به آزمایش جدی برسیم، پس چرا چنین رابط های سنگینی؟
  • Ideco SELECTA. محصول Ideco یک مکالمه جداگانه است، یک محصول جالب است، اما به دلایل سیاسی برای ما نیست، و من همچنین می خواهم آنها را در مورد مجوز برای همان لینوکس، Roundcube و غیره "نیش بزنم". آنها این ایده را از کجا دریافتند که با برش رابط به آن پــایتــون و با سلب حقوق ابرکاربر، آن‌ها می‌توانند محصول نهایی متشکل از ماژول‌های توسعه‌یافته و اصلاح‌شده از جامعه اینترنتی توزیع‌شده تحت GPL&غیره را بفروشند.

من درک می کنم که اکنون تعجب های منفی با مطالباتی برای اثبات احساسات ذهنی من به طور دقیق به سمت من می ریزد، اما می خواهم بگویم که این گره شبکه همچنین یک متعادل کننده ترافیک برای 4 کانال خارجی به اینترنت است و هر کانال ویژگی های خاص خود را دارد. . سنگ بنای دیگر نیاز به یکی از چندین رابط شبکه برای کار در فضاهای آدرس مختلف بود و من آماده اعتراف کنید که VLAN ها را می توان در همه جا که لازم است و نه ضروری استفاده کرد آماده نیست. دستگاه هایی مانند TP-Link TL-R480T+ در حال استفاده هستند - آنها به طور کلی با تفاوت های ظریف خود کاملاً رفتار نمی کنند. پیکربندی این بخش در لینوکس به لطف وب سایت رسمی اوبونتو امکان پذیر شد متعادل سازی IP: ترکیب چندین کانال اینترنتی در یک کانال. علاوه بر این ، هر یک از کانال ها می توانند در هر لحظه "سقوط" کنند و همچنین بالا بیایند. اگر به اسکریپتی علاقه مند هستید که در حال حاضر کار می کند (و ارزش انتشار جداگانه دارد)، در نظرات بنویسید.

راه حل مورد بررسی ادعا نمی کند که منحصر به فرد است، اما من می خواهم این سوال را بپرسم: "چرا یک شرکت باید با محصولات مشکوک شخص ثالث با الزامات سخت افزاری جدی سازگار شود، در حالی که می توان گزینه جایگزین را در نظر گرفت؟"

اگر در فدراسیون روسیه لیستی از Roskomnadzor وجود دارد، در اوکراین یک ضمیمه به تصمیم شورای امنیت ملی وجود دارد (به عنوان مثال. اینجا، سپس رهبران محلی نیز نمی خوابند. به عنوان مثال، لیستی از سایت های ممنوعه به ما داده شد که از نظر مدیریت باعث کاهش بهره وری در محیط کار می شود.

برقراری ارتباط با همکاران در شرکت های دیگر، که به طور پیش فرض همه سایت ها ممنوع هستند و فقط در صورت درخواست با اجازه رئیس می توانید به یک سایت خاص دسترسی پیدا کنید، با احترام لبخند بزنید، فکر کنید و "سیگار کشیدن برای مشکل"، ما به این درک رسیدیم که زندگی هنوز خوب است و ما جستجوی آنها را آغاز کردیم.

با داشتن فرصتی نه تنها برای مشاهده تحلیلی آنچه در "کتاب های زنان خانه دار" در مورد فیلتر کردن ترافیک می نویسند، بلکه همچنین برای دیدن آنچه که در کانال های ارائه دهندگان مختلف اتفاق می افتد، متوجه دستور العمل های زیر شدیم (هر تصویری کمی برش خورده است، لطفاً درک کنید ):

ارائه دهنده 1
- مزاحم نمی شود و سرورهای DNS خود و یک سرور پروکسی شفاف را تحمیل می کند. خوب؟.. اما ما به جایی که نیاز داریم دسترسی داریم (اگر به آن نیاز داشته باشیم :))

ارائه دهنده 2
- معتقد است که ارائه دهنده برتر او باید در مورد این فکر کند ، پشتیبانی فنی ارائه دهنده برتر حتی اعتراف کرد که چرا نتوانستم سایت مورد نیاز خود را باز کنم ، که منع نشده بود. فکر کنم این عکس شما رو سرگرم کنه :)

Iptables و فیلتر کردن ترافیک از مخالفان فقیر و تنبل

همانطور که مشخص شد ، آنها نام سایت های ممنوعه را به آدرس IP ترجمه می کنند و خود IP را مسدود می کنند (از این واقعیت که این آدرس IP می تواند 20 سایت را میزبانی کند اذیت نمی شوند).

ارائه دهنده 3
- اجازه می دهد تا ترافیک به آنجا برود، اما اجازه بازگشت در طول مسیر را نمی دهد.

ارائه دهنده 4
- همه دستکاری ها با بسته ها در جهت مشخص شده را ممنوع می کند.

با VPN (با احترام به مرورگر Opera) و افزونه های مرورگر چه باید کرد؟ با بازی با گره Mikrotik در ابتدا، ما حتی یک دستور العمل پرمصرف برای L7 دریافت کردیم، که بعداً مجبور شدیم آن را رها کنیم (ممکن است نام های ممنوعه بیشتری وجود داشته باشد، زمانی که علاوه بر مسئولیت مستقیم آن برای مسیرها، در 3 دوجین نیز غم انگیز می شود. بار پردازنده PPC460GT به 100 درصد می رسد.

Iptables و فیلتر کردن ترافیک از مخالفان فقیر و تنبل.

آنچه مشخص شد:
DNS در 127.0.0.1 مطلقاً نوشدارویی نیست؛ نسخه های مدرن مرورگرها هنوز به شما امکان می دهند چنین مشکلاتی را دور بزنید. محدود کردن همه کاربران به حقوق کاهش یافته غیرممکن است و ما نباید تعداد زیادی DNS جایگزین را فراموش کنیم. اینترنت ثابت نیست و سایت‌های ممنوعه علاوه بر آدرس‌های DNS جدید، آدرس‌های جدید می‌خرند، دامنه‌های سطح بالا را تغییر می‌دهند و می‌توانند کاراکتری را در آدرس خود اضافه یا حذف کنند. اما هنوز هم حق دارد چیزی شبیه به زندگی کند:

ip route add blackhole 1.2.3.4

به دست آوردن لیستی از آدرس های IP از لیست سایت های ممنوعه بسیار موثر خواهد بود، اما به دلایلی که در بالا ذکر شد، ما به ملاحظات مربوط به Iptables رفتیم. قبلاً یک متعادل کننده زنده در نسخه 7.5.1804 CentOS Linux وجود داشت.

اینترنت کاربر باید سریع باشد و مرورگر نباید نیم دقیقه منتظر بماند و به این نتیجه برسد که این صفحه در دسترس نیست. پس از جستجوی طولانی به این مدل رسیدیم:
فایل 1 -> /script/denied_host، لیست اسامی ممنوعه:

test.test
blablabla.bubu
torrent
porno

فایل 2 -> /script/denied_range، فهرست فضاهای آدرس و آدرس های ممنوعه:

192.168.111.0/24
241.242.0.0/16

فایل اسکریپت 3 -> ipt.shانجام کار با 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

استفاده از sudo به این دلیل است که ما یک هک کوچک برای مدیریت از طریق رابط WEB داریم، اما همانطور که تجربه استفاده از چنین مدلی برای بیش از یک سال نشان داده است، WEB چندان ضروری نیست. پس از پیاده سازی، تمایل به افزودن لیستی از سایت ها به پایگاه داده و غیره وجود داشت. تعداد هاست های مسدود شده بیش از 250 + یک دوجین فضای آدرس است. واقعاً هنگام رفتن به سایت از طریق اتصال https مشکلی وجود دارد ، مانند مدیر سیستم ، من از مرورگرها شکایت دارم :) ، اما این موارد خاص هستند ، بیشتر عوامل ایجاد کننده عدم دسترسی به منبع هنوز در کنار ما هستند. ، ما همچنین با موفقیت Opera VPN و افزونه هایی مانند friGate و telemetry را از Microsoft مسدود کردیم.

Iptables و فیلتر کردن ترافیک از مخالفان فقیر و تنبل

منبع: www.habr.com

اضافه کردن نظر