مفاهیم پایه

فایروال ایران چیست؟ روش‌های فیلترینگ و تشخیص فیلتر بودن سایت یا سرور

تهیه: کلودیفای (نگارش با کمک هوش مصنوعی) · انتشار: · زمان مطالعه: ۶ دقیقه

مفاهیم پایهفایروال ایران چیست؟ روش‌هایفیلترینگ و تشخیص فیلتر بودنسایت یا سرورمجلهٔ کلودیفایclodify.net/blog
پاسخ کوتاه

وقتی از «فایروال ایران» حرف می‌زنیم معمولاً منظور سامانهٔ فیلترینگ ملی است که روی درگاه‌های ارتباطی و شبکهٔ اپراتورها، دسترسی به برخی دامنه‌ها، آی‌پی‌ها و پروتکل‌ها را محدود می‌کند. روش‌های رایج آن دستکاری پاسخ DNS، قطع اتصال بر اساس نام دامنه در TLS (SNI)، مسدود کردن آی‌پی و محدود کردن پروتکل‌هایی مثل QUIC است. صاحب سایت با چند دستور ساده (dig، curl و openssl) از یک سرور داخل ایران می‌تواند بفهمد سایتش فیلتر است، تحریم شده یا فقط مشکل فنی دارد.

«فایروال ایران» به سه چیز متفاوت گفته می‌شود

جست‌وجوی «فایروال ایران» یا «فایروال ایرانی» نتیجه‌های بسیار متفاوتی دارد، چون این عبارت برای سه چیز به کار می‌رود:

منظور توضیح این مقاله
فیلترینگ ملی (گاهی IRGFW نامیده می‌شود) سامانه‌ای در سطح شبکهٔ کشور که دسترسی به برخی مقصدها را محدود می‌کند موضوع اصلی
محصولات فایروال ساخت داخل دستگاه‌ها و نرم‌افزارهای UTM که سازمان‌ها برای شبکهٔ خود می‌خرند اشارهٔ کوتاه
فایروال روی سرور شما ابزارهایی مثل UFW یا iptables که خودتان روی سرور تنظیم می‌کنید آموزش UFW

اگر دنبال محصول فایروال سازمانی ساخت داخل هستید، معیارهای انتخاب همان معیارهای جهانی است: پشتیبانی از به‌روزرسانی امضاها، کارایی در حجم ترافیک شما، گزارش‌گیری و پشتیبانی فنی. در ادامه روی فیلترینگ ملی تمرکز می‌کنیم، چون مستقیم روی دسترسی کاربران به سایت و سرور شما اثر می‌گذارد.

فیلترینگ ملی کجا اعمال می‌شود؟

ترافیک بین‌الملل ایران از درگاه‌های محدودی عبور می‌کند که مدیریت آن‌ها با شرکت ارتباطات زیرساخت است و اپراتورها (همراه اول، ایرانسل، مخابرات و ارائه‌دهندگان اینترنت ثابت) هم روی شبکهٔ خود سازوکارهای کنترل دارند. نتیجهٔ عملی برای شما این است:

  • محدودیت ممکن است بین اپراتورها فرق کند. سایتی که روی اینترنت ثابت باز می‌شود، ممکن است روی اینترنت همراه باز نشود یا برعکس.
  • محدودیت ممکن است در طول زمان تغییر کند. در دوره‌های بحرانی، شدت محدودیت‌ها و حتی نوع آن‌ها (مثلاً محدود کردن کل ترافیک بین‌الملل) عوض می‌شود.
  • ترافیک داخلی معمولاً از فیلترینگ بین‌الملل جداست. به همین دلیل در زمان قطع اینترنت بین‌الملل، سایت‌های میزبانی‌شده در ایران معمولاً باز می‌مانند.

روش‌های رایج فیلترینگ و نشانهٔ هرکدام

روش چه اتفاقی می‌افتد نشانه برای کاربر یا مدیر سرور
دستکاری DNS پاسخ DNS برای دامنهٔ فیلترشده به آی‌پی نادرست برمی‌گردد در پاسخ dig از داخل ایران، آی‌پی‌هایی از محدودهٔ 10.10.34.x دیده می‌شود
مسدودسازی بر اساس نام دامنه (SNI) در شروع اتصال HTTPS نام دامنه خوانده و اتصال قطع می‌شود خطای Connection reset یا timeout فقط برای همان دامنه، حتی با آی‌پی درست
مسدود کردن آی‌پی همهٔ ترافیک به یک آی‌پی بسته می‌شود ping و همهٔ پورت‌ها از داخل ایران بسته‌اند، از خارج باز
محدودیت پروتکل پروتکل‌هایی مثل QUIC (HTTP/3) یا برخی پروتکل‌های رمزنگاری‌شده کند یا مسدود می‌شوند مرورگر به HTTP/2 برمی‌گردد یا اتصال‌های خاص ناپایدارند
کاهش سرعت (throttling) سرعت یا کیفیت اتصال به مقصدهای خاص عمداً کم می‌شود بارگذاری کند و قطع‌ووصل بدون خطای مشخص

یک نکتهٔ مهم: محدود شدن QUIC معمولاً سایت را از کار نمی‌اندازد، چون مرورگر خودکار به HTTP/2 روی TCP برمی‌گردد. جزئیات این رفتار را در HTTP/2 و HTTP/3 چیست و چرا گاهی کار نمی‌کند توضیح داده‌ایم.

چطور بفهمیم سایت ما در ایران فیلتر است؟

بهترین آزمون از یک سرور یا اتصال داخل ایران انجام می‌شود. اگر سرور ایران دارید، این دستورها را روی آن اجرا کنید و نام دامنه را با دامنهٔ خودتان عوض کنید.

گام ۱: مقایسهٔ پاسخ DNS

# پاسخ DNS پیش‌فرض اپراتور
dig +short example.com
# پاسخ یک DNS عمومی برای مقایسه
dig +short example.com @1.1.1.1

اگر پاسخ اول آی‌پی درست سرور شما نیست (مثلاً از محدودهٔ 10.10.34.x است) و پاسخ دوم درست است، دامنه در لایهٔ DNS فیلتر شده است. اگر پاسخ‌ها با هم فرق دارند ولی هیچ‌کدام 10.10.34.x نیست، شاید فقط انتشار DNS کامل نشده باشد؛ انتشار DNS را ببینید.

گام ۲: اتصال HTTPS با آی‌پی درست

# اتصال به آی‌پی درست، با همان نام دامنه
curl -sv -m 15 -o /dev/null --resolve example.com:443:203.0.113.10 https://example.com/

اگر این اتصال در مرحلهٔ TLS با reset یا timeout قطع شود اما همان آی‌پی با نام دامنهٔ دیگری کار کند، فیلترینگ بر اساس نام دامنه (SNI) محتمل است.

گام ۳: تست خود آی‌پی

ping -c 5 203.0.113.10
nc -vz -w 5 203.0.113.10 443

اگر از داخل ایران هیچ پورتی باز نیست ولی از خارج همه‌چیز سالم است، آی‌پی برای ایران مسدود شده است. در این حالت تعویض آی‌پی سرور (یا استفاده از CDN) معمولاً تنها راه است. دربارهٔ سابقهٔ آی‌پی‌ها در آی‌پی تمیز سرور نوشته‌ایم.

گام ۴: تست از خارج برای مقایسه

همین آزمون‌ها را از یک سرور خارج یا ابزاری مثل check-host.net تکرار کنید. فقط وقتی «از خارج سالم، از داخل خراب» است می‌توان دربارهٔ فیلترینگ نتیجه گرفت. اگر از هر دو طرف خراب است، مشکل از خود سرور است؛ راهنمای سایت باز نمی‌شود ولی اینترنت وصل است را ببینید.

فیلتر، تحریم یا ایران اکسس؟

سه مشکل کاملاً متفاوت که اغلب با هم اشتباه گرفته می‌شوند:

مشکل جهت محدودیت چه کسی اعمال می‌کند نشانهٔ رایج
فیلترینگ کاربر داخل ایران ← سایت خارجی یا داخلی شبکهٔ داخل کشور reset، timeout یا DNS نادرست
تحریم آی‌پی ایران ← سرویس خارجی خود سرویس خارجی خطای 403 یا پیام «در منطقهٔ شما در دسترس نیست»
ایران اکسس کاربر خارج از ایران ← سرور داخل ایران صاحب سرویس یا مسیر بالادست از خارج timeout، از داخل سالم

اگر روی سرور ایران apt update یا docker pull خطای 403 می‌دهد، با تحریم روبه‌رو هستید، نه فیلترینگ؛ راه‌حل در رفع خطای ۴۰۳ در apt و docker و میرور npm و pip آمده است. ایران اکسس را هم در ایران اکسس چیست جدا بررسی کرده‌ایم.

اثر فیلترینگ روی سرورهای ایران و خارج

  • سرور ایران: به همان محدودیت‌های کاربران داخل ایران روبه‌روست؛ برخی سرویس‌ها و APIهای خارجی از روی آن در دسترس نیستند. اگر برنامهٔ شما به API خارجی وابسته است، این را پیش از انتخاب محل سرور بسنجید.
  • سرور خارج: خودش محدودیتی ندارد، اما ممکن است آی‌پی یا دامنهٔ آن برای کاربران داخل ایران مسدود شود. برای سرویس‌هایی که کاربر ایرانی دارند، آی‌پی سرور خارج را همان ساعت اول تحویل از داخل ایران تست کنید.
  • آی‌پی مشترک: اگر روی یک آی‌پی مشترک (مثلاً هاست اشتراکی) سایت‌های دیگری هم هستند، فیلتر شدن آی‌پی به‌خاطر یک سایت دیگر، سایت شما را هم از دسترس خارج می‌کند. سرور مجازی با آی‌پی اختصاصی این ریسک را ندارد؛ میزبانی سایت روی سرور مجازی را ببینید.

صاحب سایت برای کم کردن ریسک چه کند؟

  1. وابستگی‌های خارجی را کم کنید. فونت، کتابخانه‌های JavaScript و تصاویر را روی سرور خود یا CDN بگذارید تا فیلتر بودن یک CDN خارجی، سایت شما را نیمه‌کاره نکند.
  2. آی‌پی اختصاصی داشته باشید تا سرنوشت سایتتان به همسایه‌های آی‌پی گره نخورد.
  3. از داخل ایران پایش کنید. فقط پایش از خارج کافی نیست؛ وضعیت دسترسی کاربران ایرانی را در دیده‌بان شبکهٔ کلودیفای و با تست‌های بالا بسنجید.
  4. اگر سایت به اشتباه مسدود شده، از مسیرهای رسمی اعلام‌شده درخواست بررسی بدهید و نتیجهٔ تست‌ها را ضمیمه کنید.
  5. برای کاربران داخل ایران، سرور ایران را در نظر بگیرید. برای سایت‌هایی که مخاطب اصلی‌شان داخل کشور است، سرور مجازی ایران در روزهای محدودیت بین‌الملل پایدارتر است.

سؤالات متداول

آی‌پی 10.10.34.34 یا 10.10.34.35 در پاسخ DNS یعنی چه؟

این آدرس‌ها از محدودهٔ خصوصی هستند و وقتی در پاسخ DNS یک دامنهٔ عمومی دیده شوند، نشانهٔ شناخته‌شدهٔ فیلتر بودن آن دامنه در لایهٔ DNS داخل ایران‌اند.

فایروال ایران روی سایت‌های داخلی هم اثر دارد؟

فیلترینگ برای سایت‌های داخلی هم ممکن است اعمال شود، اما محدودیت‌های بین‌الملل (مثل قطع یا کندی اینترنت بین‌الملل) معمولاً روی سایت‌هایی که در ایران میزبانی شده‌اند اثر مستقیم ندارند.

چرا یک سایت روی وای‌فای باز می‌شود ولی روی اینترنت همراه نه؟

سازوکار و شدت محدودیت بین اپراتورها می‌تواند متفاوت باشد. برای تشخیص، همان آزمون‌ها را روی هر دو اتصال تکرار کنید؛ روش‌های دیگر را در اینترنت ایران الان اختلال دارد؟ آورده‌ایم.

تعویض DNS مشکل فیلتر را حل می‌کند؟

فقط اگر فیلترینگ در لایهٔ DNS باشد و مسدودسازی دیگری وجود نداشته باشد. در بیشتر موارد، مسدودسازی SNI یا آی‌پی هم هم‌زمان فعال است و تعویض DNS کافی نیست.

فایروال سرور خودم را چطور تنظیم کنم؟

روی سرور لینوکس از UFW شروع کنید، فقط پورت‌های لازم را باز کنید و پیش از فعال‌سازی، SSH را باز بگذارید. آموزش کامل: فایروال UFW در اوبونتو.

آماده‌اید؟ سرورتان را بسازید.

از ۱٬۲۰۰ تومان در ساعت · پرداخت ریالی

سرورتان را همین حالا بسازید.

ساعتی بپردازید. هر وقت خواستید حذف کنید.