مقدمه#

خوش اومدین به یه پست دیگه! کانال تلگرامو حتما جوین بشین Area51

این پست صرفا جنبه آموزشی داره و بنده فروش فیلترشکن یا هیچ گونه عمل مخالف قانون رو ترویج نمیکنم. هرگونه استفاده از این پست پای خودتونه

اول اینکه مفهومی به اسم اینترنت ازاد توی ایران وجود نداره. اینترنتی که در حال حاظر داریم درواقع اینترانت (اینترنت فقط مخصوص سایتای داخلی) هست با یکسری استثناعات. عملا غیر قابل استفاده چه برای مصرف تفریحاتی (content consumption) و چه برای مصرف آموزیشیه. واسه همین برای دسترسی به یه نت عادی چه خودمون چه خانواده نیاز به فیلترشکن داریم. واسه همین توصیه میکنم واس خودتون ستاپ کنین یاد بگیرین و بعد برا خانواده ستاپ کنین. این چیزیه که این آموزش به شما یاد میده.

تاریخچه فیلترینگ#

اقا هیچکس تاریخ ماریخ دوست نداره واسه همین خلاصه میگم. فیلترینگ اول توی چین از همون ابتدای تاسیس اینترنتشون اومد و دولتشون میخواست رو نتشون کنترل داشته باشه واسه همین یه چیزی به اسم دیواره آتش چین رو بنا کردن (The great firewall of china (gfw)) این سیستم فیلترینگ تا مدت ها بود تا اینکه اولین فیلترشکن مختص دور زدنش ابدا شد که shadowsocks بود. اگه به اسمش دقت کنین میشه socks مخفی یعنی یه ورژن مودیفای شده از پروتوکل socks4/5 که میاد این فیلترشکن توسط clouwwindy ساخته شد و بعد یه مدت خفتش کردن. بعدش پروژه v2ray برای اعتراض به فیلترینگ بالا اومد و پروتوکلایی مثل vmess رو که همه شنیدین رو با خودش اورد و چون بصورت اوپن سورس اراعه شد کلی توسعه پیدا کرد تا اینکه دیگه توسعش همین چندسال پیش متوقف شد. جلوتر یه فورک به اسم Project X از این پروژه اومد که هسته v2ray رو توسعه داد (xray) و پروتوکل vless رو اراعه کرد که دیگه الان ورژنای مختلفش vless + reality/ vless vision همچنان درحال استفاده هستن

جدای از این ۲ تا هسته خیلی پروتوکل های دیگه هم وجود دارن که به شیوه های مختلفی کار میکنن. مثلا hysteria چیزی که اینجا باهاش کار میکنیم. brook, naive, ssr و غیره

چرا هیستریا؟#

هیستریا یه پروتوکل مبتنی بر udp هست و از زمان ابتدای فیلترینگ توجه فیلترشکن سازا بیشتر روی پروتوکلای tcp مثل vmess + tcp / vless + tcp + reality/ vless + tcp + vision و نظیر اینا بوده و در نتیجه مصرف این پروتوکل ها توسط کاربرا هم بیشتر بوده و به همین واسطه تمرکز سیستم فیلترینگ بیشتر روی پروتوکلای مبتنی بر tcp هست. هیستریا و سایر پروتوکلای مبتنی بر udp حساسیت کمتری روشون اعمال میشه و زمان بیشتری طول میکشه تا فیلتر بشن یا اینکه فیلتر نمیشن اصلا. از بین پروتوکلای مبتنی بر udp با توجه به مطالعات خودم هیستریا مناسب تر بنظر میومد. شیوه کارکرد کلی این پروتوکل به این صورته که میاد ترافیکش رو شبیه ترافیک طبیعی http3 جا میزنه تا فیلترینگ رو دور بزنه و قابلیت های جانبی خوبی مثل obfuscation که باعث میشه پکت ها تبدیل به پکت های رندوم udp بشن (برای اینترنتایی که http3 رو بستن) و masquarade که باعث میشه وقتی دامنه/ایپی سرور فراخانی میشه مثل یک سرور طبیعی عمل کنه (خودش رو جای reverse proxy یا یک هاستینگ فایل یا یک سایت عادی جا بزنه) این قابلیتاش که مختص فیلترینگ هست دلایلی بود که من بر اساسشون هیستریا رو انتخاب کردم

چیا نیاز دارم؟#

  • یه سرور (vps)
  • دانش سطحی از لینوکس

برای سرور خریدن معمولا دو تا رویکرد دارین

1- اتصال مستقیم: این یعنی شما یه سرور خارج تهیه میکنین و پروکسی رو روی اون ستاپ میکنین و بطور مستقیم بهش وصل میشین

client(شما) --> kharej_server --> free internet (اینترنت ازاد)

2- تونل: این یعنی شما یک سرور ایران و یک سرور خارج تهیه میکنین روی دوتاشون پروکسی ستاپ میکنین و به سرور ایران وصل میشین. چرا اینکارو میکنن؟ بخاطر اینکه روی دیتاسنتر های سرورا سخت گیری فیلترینگ کمتره و مثلا اگه پروتوکل vless + tcp + reality بعد یه هفته فیلتر بشه با روش تونل ممکنه دیرتر فیلتر بشه یا اصلا فیلتر نشه. که البته قبلا اینجوری بود و الان بسته به دیتاسنتر سخت گیری روی فیلترینگ متفاوته

client(شما) --> iran_server --> kharej_server --> free internet
لوکیشن سرور رو کجا انتخاب کنیم؟#

هر لوکیشنی یه مزیتی داره که من بصورت خلاصه براتون مینویسم

بطور خلاصه:

لوکیشن توضیحات
ایران مناسب برای تونل
اروپا پینگ مناسب، مناسب گیمینگ
آمریکا دسترسی به سرویس‌های بیشتر
امارات/دوبی پینگ عالی، قیمت بالا
ترکیه بهترین تعادل قیمت/کیفیت
  • ایران: سرور ایران بصورت تکی فقط بدرد تونل میخوره و کاربرده دیگه ای نداره
  • اروپا (آلمان/هلند/فرانسه/نوروژ): این لوکیشنا عموما پینگ خوبی میدن و علاوه بر استفاده کلی بدرد مصارف گیمینگ هم میخورن
  • آمریکا: امریکا پینگش به خوبی اروپا نخواهد بود و معمولا چیزی بین 200-300 ms پینگ هندشیکتون با کلاودفلیر هست بسته به لوکیشن و دیتاسنتر ولی مزیتایی که داره اینه که به خیلی از سرویسا دسترسی (زودتر) خواهید داشت (مثلا اوایلی که gemini اومده بود فقط با ایپی امریکا میشد دسترسی داشت)
  • امارات/دوبی: این دسته جزو سرور لاکچریا حساب میشن از اینا معمولا سرور vps گیر نمیارین و اکثرا فقط vds میتونین پیدا کنین و قیمتاشونم بالاست. ولی در عوض پینگ خوبی دارن و اون یذره پینگ بیشترو تو گیم میتونین بگیرین
  • ترکیه: ترکیه عملا بهترین لوکیشنه هم پینگ خوب رو دارین هم قیمت پایین میشه پیدا کرد ولی خب اکثرا ایپیاشون کثیف هست و ممکنه از همون اول ایپیتون فیلتر باشه

یکسری نکات جانبی راجب خرید سرور بگم. اول دیتاسنتر و روتینگ خیلی تاثیر داره و سرور دوبی داشتم که پینگ ۳۰۰ میداده و این وابسته به روتینگش با ایران هست که میتونین trace کنین و ببینین از کجا میگزره (جزییاتو اینجا کاور نمیکنم از Chatgpt بپرسین)

دوم بحث فیلتر بودن ایپی هست که اگه از دیتاسنتر های معروف مثل Hetzner تهیه کنین احتمال فیلتر بودن ایپی خیلی زیاده و عملا سرورتون بدرد نخور میشه. که توصیه میکنم قبلش از پشتیبانی ایپی تست بگیرین و یا اگه فروشنده looking glass داشت (ابزاریه که ایپی تست اراعه میده) حتما برسی کنین

سوم اینکه یکسری ایپیا کلا کثیفن و سرورای گیم اونا رو به عنوان vpn تشخیص میدن و این وابسته به دیتاسنتر ارایه دهنده هست که معمولا دیتاسنتر معروفا مثل Hetzner این مشکل رو دارن. جدا از گیم سرویس هایی مثل Spotify هم بعد یه مدت این ایپی هارو بلاک میکنن. معمولا از مشکل رو با ارایه دهنده های کوچیک تر نخواهین داشت

راه اندازی#

خب اقا این مرحله رو وقتی شروع کنین که سرور رو خریدین. وقتی سرور رو میخرین ازتون میپرسه که سیستم عامل رو چی انتخاب کنم (که اگر قبلا انتخاب کردین موردی نداره داخل پنل دنبال گزینه rebuild بگردین و دوباره سیستم عامل رو انتخاب کنین تا سرور رو براتون از اول بسازه) برای سیستم عامل معمولا گزینه های مختلفی در اختیارتون میزارن از جمله

  • debian
  • ubuntu
  • rocky/alpine linux
  • centos
  • freebsd
  • windows

که توصیه میکنم برای شروع از debian یا ubuntu شروع کنین. این دوتا سیستم عامل نسبت به بقیه محبوب تر و معروف تر هستن و کارکرد راحت تری هم دارن. به اروری هم بر بخورین راحت تر جوابشو توی گوگل گیر میارین و بیشتر آموزش ها هم بر مبنای همینا ساخته میشن ما اینجا ubuntu 20.04 رو انتخاب میکنیم. توجه کنین که اگه منابع سرورتون کمه ورژنای پایین تر مثل debian 10/11 یا ubuntu 20 رو بجای 22 انتخاب کنین که به مشکل نخورین اگه خواستین ببینین الان چه سیستم عاملی نصبه روی سرور میتونین از این دستور استفاده کنین

cat /etc/os-release | grep PRETTY_NAME

خب یادم رفت بگم وقتی سرور رو خریدین براتون معمولا داخل ایمیل مشخصات سرور ارسال میشه که شامل ایناست

user:  یوزرنیمتون هست
password: پسورد
ssh port: پورت ssh

یوزرنیم بطور پیشفرض root هست و پورت ssh هم 22 هست که اینا میتونه متغییر باشه

حالا این مشخصات رو یجایی یادداشت کنین و بریم که باهم وارد سرور بشیم. برای دسترسی به یک سرور لینوکسی از ssh(secure shell) استفاده میکنیم. این ابزار کمک میکنه که به یک محیط shell در سرور دسترسی داشته باشیم و کارامونو با کامند راه بندازیم. ssh بطور پیشفرض روی ویندوز نصبه و البته شما میتونین از ابزار های جانبی هم مثل putty و termius و tabby استفاده کنین که مشخصات رو ذخیره میکنن و قابلیتای دیگه ای در اختیارتون میزارن. اینجا ما با ssh میریم جلو

داخل ویندوز cmd رو باز میکنین و دستور زیر رو میزنین

ssh <username>@<server_ip> -p <server_port>

مثلا برای سرور من میشه

که اینجا ازتون رمز رو میپرسه و رمز سرور رو وارد میکنین و وارد میشین

اولین کاری که داخل سرور میکنین همیشه اپدیت و آپگرید کردن پکیج های نصب شده روی سرورتون به ورژن اخر هست که با دستورای زیر به ترتیب انجام میشه

sudo apt update

sudo apt upgrade -y

بعدش باید برای نصب اسکریپت از گیتهاب پکیج گیت رو نصب کنین


sudo apt install git -y

خب حالا میریم سراغ اصل کار. برای این مرحله من اومدم با اتوماتیک کردن فرایند ستاپ هیستریا این کارو واستون مثل اب خوردن کردم. بطوری که شما فقط اسکریپت زیر رو نصب و اجرا میکنین و نوع پروکسی ای که میخواین براتون راه اندازی کنه رو انتخاب میکنین.

دستور زیر رو داخل سرور وارد کنین


git clone https://github.com/meower1/Supernova

خب این میاد پوشه ای که اسکریپت راه اندازی داخلشه رو از گیتهاب واستون دانلود میکنه. حالا با کامند زیر وارد پوشه میشیم


cd Supernova/

سپس با دستور اول بهش پرمیشن های لازم برای اجرا شدن رو میدیم و با دستور دوم اون رو با دسترسی super user یا همون ادمین ران میکنیم


sudo chmod +x supernova.sh

sudo ./supernova.sh

حالا اسکریپت اجرا میشه و باید مشابه عکس زیر توی این منو باشین

Menu

خب الان همونطور که واضحه گزینه اول برای ما هیستریا رو راه اندازی میکنه پس 1 رو توی ترمینال تایپ میکنیم و اینتر میزنیم.

کارکرد اسکریپت به این صورت هست که میاد هسته هیستریا رو که همون برنامه فیلترشکن ما هست داخل یک داکر کانتینر (یک ابزار ایزولیشن و امنیتی هست که در همین حد ازش بدونین کافیه) اجرا میکنه و یک فایل کانفیگ براتون مینویسه و باهاش هسته رو ران میکنه.

در انتها اسکریپت بهتون یه لینک به شکل زیر میده که شما اون لینک رو کپی میکنین و داخل برنامه هایی که هیستریا رو ساپورت میکنن اضافه میکنین و وصل میشین

نمونه لینک:

hy2://[email protected]:8443?insecure=1#Hysteria%F0%9F%87%AC%F0%9F%87%A7

راه اندازی سمت کاربر#

Android :

Windows :

Linux (Debian based):

Ios/MacOS :

بعد از کپی کردن لینکی که توی سرورمون دریافت کردیم و نصب برنامه واردش میشیم و به این صورت عمل میکنیم

برای اندروید:#

nekobox1

nekobox2

الان یه پروفایل جدید واسمون اضافه میشه. روش کلیک میکنیم و دکمه موشک پایین صفحه رو میزنیم به همین سادگی!

برای ویندوز/ مک#

روی ویندوز باید اول هسته رو به سینگ باکس تغییر بدیم بعد میتونیم وصل بشیم

nekoray1

nekoray2

برای ایفون هم شبیه اندروید عمل میکنین چیز خاصی نداره

streisand1

برای مکبوک گزینه تان مود کار نمیکنه و باید از یک برنامه جانبی به اسم proxifier کمک بگیریم. طریقه کارکردش اینطور هست که ما داخل نکوری به کانفیگ که وصل شدیم برای اینکه کل سیستم بتونه از کانفیگ استفاده کنه تمام سیستم رو با برنامه پروکسیفایر پروکسی میکنیم

برنامه رو از اینجا نصب میکنیم Proxifier دانلود که کردیم وارد برنامه میشیم. ازمون کلید برای فعالسازی میخواد که این رو وارد میکنیم

3CWNN-WYTP4-SD83W-ASDFR-84KEA

وارد که شدین طبق تصاویر عمل کنین

nekoray1

nekoray2

nekoray3

nekoray4

nekoray5

nekoray6

الان تمام سیستمتون باید پروکسی شده باشه و بتونین از فیلترشکنتون برای برنامه های دیگه هم استفاده کنین

تنظیمات هیستریا#

اینجا چندتا کامند بدرد بخور برای مدیریت سرویس هیستریا بهتون میگم

مسیر کانفیگ هیستریا (اگه خواستین رمزی چیزیو عوض کنین) /root/Supernova/hysteria/config.yaml

برای متوقف کردن و راه اندازی دوباره

sudo docker stop hysteria

sudo docker start hysteria

برای پاک کردن هیستریا

sudo docker rm -f hysteria

چک کردن لاگ ها برای رفع ایراد

sudo docker logs hysteria

ساخت ساب اسکریپشن#

خب اقا این بخش مربوط به ستاپ کردن واسه خانواده میشه. شما تا اینجا لینک یک یا چندتا کانفیگو دارین حالا میخواین اینارو بدین دست خانواده. ولی خانواده یکیش تهرانه یکیش اصفحانه و دیر به دیر میبینینشون و زیادم دانش تکنیکی ندارن. یه دور همی گیر میارین لینک سابو میزنین رو گوشیشون و گزینه auto update رو فعال میکنین و دیگه هر تغییری بدین رو کانفیگا از سمت خودتون واسه اونام اعمال میشه و زحمت شما کم تر میشه. واسه این کار آموزش ویدعویی خوب هست یه چندتا لینک میکنم ۵ دقیقه ببینین ستاپ کنین

https://youtu.be/m-nMbHRUUSU?si=RmVjW5tC-NXR3FLb