@vahidfarid
Vahid Farid
1 year
اضافه شدن امکانات TLS1.3 به توزیع‌های xray و برخی کلاینت‌ها، دست فیلترکننده رو به شدت بسته. این‌ها که امروز میخوام بگم رو درست استفاده کنید تا برای فیلترچی تقریبا نامرئی بشین. من روی v2rayNG توضیح میدم، شما مشابهشو رو اپ خودتون پیدا کنید: uTLS, alpn & allowinsecure ۱/۱۰
Tweet media one
56
192
1K

Replies

@vahidfarid
Vahid Farid
1 year
میخوام داستان بگم که تا حد امکان ساده باشه برای همگی. وقتی ما میخوایم به یه سرور وصل بشیم، تو قدم اول با ارسال نام دامنه به DNS، آدرس سرور استعلام میشه تا بعد درخواست به اون آدرس ارسال بشه. تو همین قدم، قبلا تو مسیر، فیلترچی می‌دید کجا داریم میریم. ۲/۱۰
Tweet media one
2
3
147
@vahidfarid
Vahid Farid
1 year
اما با معرفی سرویس DNS امن (DoT & DoH) این مساله حل شد. کلادفلر این سرویس رو داره و جای نگرانی نیست. اپ v2rayNG هم وقتی کانفیگ روی حالت tls باشه، این سرویس رو فعال میکنه. یعنی این مرحله رد شد و فیلترچی متوجه نشد ما میخوایم به سمت کدوم دامنه بریم. ۳/۱۰
Tweet media one
2
2
136
@vahidfarid
Vahid Farid
1 year
بعد ترافیک میره به سمت آدرس سرور شما. اینجا اگه cdn نباشه، فیلترچی ادرس سرور شما رو میبینه و مسدودش میکنه. راه حلش اینه که با ریورس پراکسی (یا همون cdn) بین راه، سرورتون رو مخفی کنید. مثلا وقتی سرور رو میذارید رو حالت پراکسی رو کلادفلر، فیلترچی کلادفلر رو میبینه جای شما. ۴/۱۰
Tweet media one
2
0
139
@vahidfarid
Vahid Farid
1 year
تا الان مسیر امنه و کسی ندیده، اما وقتی cdn استفاده میکنیم، تمام ترافیک اول میره مثلا روی کلادفلر بعد باید بره سمت سرور ما. خب کلادفلر از کجا میفهمه باید ترافیک رو بفرسته سمت سرور ما؟ چون کل ترافیک رمز شده و cdn نمیتونه هدر رو ببینه. همونطور که فیلترچی نمیبینه. ۵/۱۰
3
0
133
@vahidfarid
Vahid Farid
1 year
برای حل این مشکل، مفهومی به اسم SNI پیش‌بینی شده. همین SNI که تقریبا تو تمام کانفیگ‌های v2ray میبینیم. اینجاس که فیلترچی ما رو خفت میکنه چون SNI به اصطلاح clear text ارسال میشه و بین راه میشه خوندش. چیکار کنیم؟ برگردم روی توییت اول. همون سه تا متغیر و راهکار TLS1.3، عاشقشم. ۶/۱۰
3
1
148
@vahidfarid
Vahid Farid
1 year
توی این راهکار TLS1.3، دوباره مفهوم جدیدی تحت عنوان ECH معرفی شد. از طریق افزونه‌ی ALPN در اخرین نسخه‌ی TLS، تبادل این بخش از داده با cdn هم رمزنگاری میشه. چون مفهوم خیلی جدیده، هنوز استاندارد سازی به معنای کامل نشده و پیاده‌سازی‌های مختلفی روی این داستان وجود داره. ۷/۱۰
Tweet media one
2
1
135
@vahidfarid
Vahid Farid
1 year
برای همین وقتی توی تنظیمات uTLS میریم، چند تا گزینه مثل chrome و firefox داره که مطابق روش پیاده‌سازی تو این بروزرها کار می‌کنه. برای cdn کلادفلر ما از گزینه‌ی chrome تو بخش uTLS استفاده می‌کنیم. خود alpn هم که پروتکل صحبت سرورها تو لایه‌ی اپ هست که روی h2+http/1.1 میگذاریم. ۸/۱۰
Tweet media one
8
1
122
@vahidfarid
Vahid Farid
1 year
خب تا اینجای کار، کاملا نامرئی شدیم :) الان ریسکش چیه؟ کجا ممکنه گیر فیلترچی بیوفتیم؟ یه خطری ما تو tls/ssl داریم به اسم جعل گواهی. یعنی حالا که فیلترچی نمیتونه هیچی رو ببینه، میاد گواهی‌ها رو جعل میکنه که با اون گواهی جعلی، ترافیک رو رمزگشایی کنه و بتونه بخونه. چیکار کنیم؟ ۹/۱۰
1
2
121
@vahidfarid
Vahid Farid
1 year
گزینه‌ی allowinsecure برای همین پیش‌بینی شده که معمولا هم خاموش یا همون false هستش. به صورت پیش‌فرض کلاینت‌ها همیشه گواهی رو ارزیابی میکنن و اعتبارش رو چک میکنن. پس بذارید همونطوری خاموش بمونه. اینو گذاشتن که اگه بخواید از گواهی‌های نامعتبر یا self-signed استفاده کنید، بشه. ۱۰/۱۰
7
1
129
@vahidfarid
Vahid Farid
1 year
اضافه کنم، همونطور که قبلا گفتم تو هیچکدوم از توزیع‌های فعلی، گزینه‌ی uTLS تو کانفیگ دریافتی یا ارسالی شما ذخیره نمیشه و حتما بعد از گرفتن کانفیگ، ویرایش کنید و اینو اصلاح کنید. تو نسخه جدید v2rayNG که الان تو وضعیت pre-release هست، این مشکل مرتفع شده و به زودی میاد رو گوگل پلی.
3
1
138
@R8win
راوی وطن نداره
1 year
@vahidfarid برای فعال کردن DoH یا DoT باید در تنظیمات کلاینت dns سرورهای بخصوصی وارد کنیم ( مثل tls://dns.google) یا مثلا 8.8.8.8 هم بزنیم خودش میفهمه؟
1
0
11
@vahidfarid
Vahid Farid
1 year
@R8win اپ v2rayNG که خودش تنظیماتشو داره و روی dns 1.1.1.1 کلادفلر تنظیم شده. باید dns شما از این پروتکل پشتیبانی کنه. هم گوگل و هم کلادفلر پشتیبانی میکنن. از dns های متفرقه‌ی isp ها یا خود سازمان ها اگه استفاده کنید، احتمالش زیاده پشتیبانی نکنن.
2
0
15
@dingeloz
دینگلوز
1 year
@vahidfarid ممنونم از راهنمایتون. اون security در v2ray چی هست؟ معمولا رو حالت auto هست ولی وقتی none میشه pingخیلی بهتر میشه
1
0
0
@vahidfarid
Vahid Farid
1 year
@dingeloz ارتباطی با پینگ نداره تاجایی که میدونم. اون روش کد کردن بادی درخواست هستش که باید در کلاینت و سرور یکسان باشه. وقتی از tls استفاده می‌کنیم دیگه نیازی به اون نداریم، چون دوبار رمزنگاری فقط حجم اطلاعات رو زیاد و لود سرور رو بالا میبره.
1
0
7
@ghostofnikaas
far.srah97
1 year
@vahidfarid توضیحات عالی و ساده و روان
1
0
2
@vahidfarid
Vahid Farid
1 year
0
0
2
@alireza_9092
اینجانب؛علیرضا
1 year
@vahidfarid پس چرا میگن روی randomized باشه تا فینگر پرینت باقی نمونه؟ کدوم بهتره؟
1
0
2
@vahidfarid
Vahid Farid
1 year
@alireza_9092 فقط خالی نباشه. شما رندوم بذارید یا chrome زیاد تفاوت نداره. کلادفلر با الگوریتم chrome راحت کار میکنه. باقیشم احتمالا اوکیه. فینگرپرینت که حتما میمونه ولی خطری نداره چون رمزنگاری شده. مهم اینه sni دیده نشه که با utls و alpn مخفی میشه.
0
0
11
@vocallbay
🏴 سیمبو
1 year
@vahidfarid با این روشی که فرمودید پس چرا اون آموزش سگارو گذاشته فیلتر میشه؟ تو خیلی هاش هم باید آی‌پی عوض کرد‌
2
0
4
@vahidfarid
Vahid Farid
1 year
@vocallbay ببینید این روش‌ها درنهایت ترافیک رو سالم میفرسته سمت کلادفلر. حالا اگه آی‌پی کلادفلر رو چشم بسته ببندن، دیگه ترافیک نمیره خب. مشکل ولی اینجاس که حدود ۴۰ درصد از ۱۰کا وبسایت تاپ دنیا و ۲۰ درصد از کل وبسایت‌هتی فعال دنیا از مسیر کلادفلره. وقتی ببندن سرویس‌های دیگه ای هم مسدود میشه.
1
0
18