obfsproxy
در این مقاله به توضیحات کامل درباره obfsproxy میپردازیم.

این که از اتصالات Tor یا OpenVPN استفاده می کنید، احتمالاً در یکی از این دو پلتفرم محبوب نام Obfsproxy را شنیده اید. بنابراین تصمیم گرفتیم تا در این مقاله به این موضوع بپردازیم که Obfsproxy چیست و در واقع چه کاری انجام می دهد؟ خب، ما قصد داریم در این مقاله به این موضوع بپردازیم، و همچنین به شما نشان خواهیم داد که چگونه از Obfsproxy نیز استفاده کنید.

برای خرید وی پی ان با آیپی ثابت کلیک کنید

Obfsproxy چیست؟

Obfsproxy یک زیر پروژه Tor است که می تواند برای پنهان کردن شکل ظاهری ترافیک آنلاین مورد استفاده قرار گیرد.

دلیل اصلی توسعه Obfsproxy این است که کشورهایی وجود دارند که از DPI (بازرسی بسته عمیق) برای جلوگیری از اتصالات VPN استفاده می کنند یا دولتهایی که فقط ISP ها را مجبور می کنند ترافیک SSL را فیلتر کنند. بنابراین، استفاده از Obfsproxy به طور بالقوه می تواند به شما کمک کند از مسدود شدن و فیلتر شدن ترافیک خود جلوگیری کنید.

در حالی که در ابتدا فقط برای Tor ساخته شده بود، Obfsproxy از ویژگی هایی برخوردار است که به توسعه دهندگان امکان طراحی، استقرار و آزمایش لایه های مبهم یا Obfuscation (مقاله کامل Obfuscation را در اینجا بخوانید) بیشتری را می دهد که هیچ ارتباطی با Tor ندارند. به همین دلیل، Obfsproxy شروع به استفاده از ترافیک OpenVPN نیز کرده است.

Obfsproxy چگونه کار می کند؟

به زبان ساده، Obfsproxy به تغییر نحوه جریان ترافیک آنلاین کمک می کند. دولت ها یا ISP هایی که از الگوریتم های DPI استفاده می کنند می توانند با مشاهده جریان و تصمیم گیری در مورد میزان آن (HTTP، HTTPS، SSL، VPN و غیره) ترافیک اینترنت را توسط پروتکل ها طبقه بندی کنند.

روش کار Obfsproxy با استفاده از ماژول “obfs2” است که یک بسته بندی رمزگذاری را در اطراف ترافیک مورد نظر (Tor یا OpenVPN) اضافه می کند. برای اطمینان از موفقیت رمزگذاری، ماژول از یک فرآیند مصافحه بدون الگوهای بایت قابل تشخیص استفاده می کند.

به عنوان مثال، Obfsproxy به شما امکان می دهد ترافیک OpenVPN را مبهم کنید تا مانند یک ترافیک HTTP منظم و بی ضرر به نظر برسد.

آیا Obfsproxy صد در صد تضمین شده است و کار می کند؟

نه دقیقا. گرچه کارآمد است، اما همیشه کاملاً کارا نخواهد بود. بخاطر داشته باشید که حتی اگر جریان ترافیک پوشانده شود، باز هم الگوهای قابل شناسایی مانند این موارد وجود دارد:

با استفاده از این اطلاعات، یک آزمایش آنتروپی کامل می تواند به سانسورگران دولت یا ISP شما نشان دهد که encryption handshake بیش از حد تصادفی، در مقایسه با انواع دیگر handshake است. در آن شرایط، آنها می توانند تا تهیه فرآیندی پیش بروند تا فقط پروتکل هایی که DPI تشخیص می دهد اجازه عبور را داشته باشند.

نحوه استفاده از Obfsproxy برای ترافیک OpenVPN

کل مراحل نصب OpenVPN Obfsproxy بسیار پیچیده و نسبتاً دشوار است. در حالت ایده آل، شما باید از یک سرویس VPN به جای سرور VPN خود استفاده کنید زیرا بدین ترتیب ترافیک OpenVPN مبهم است.

obfsproxy
مراحل راه اندازی obfsproxy در اینجا برای شما آورده شده است.

با این اوصاف، در اینجا یک بررسی اجمالی نسبتاً سریع از نحوه عملکرد معمول فرآیند در سیستم عامل های ویندوز وجود دارد:

مراحل مقدماتی

ابتدا لیستی از مواردی که قبل از شروع به کار نیاز دارید:

بیایید با مشتری شروع کنیم

برای مبتدیان، Python 2.7 را در پوشه پیش فرض نصب کنید. پس از آن، کامپایلر Microsoft C++ را برای پایتون 2.7 نصب کنید. اگر کمی تحقیق کنید، می بینید که هیچ کامپایلری برای نسخه های جدید پایتون وجود ندارد، به همین دلیل توصیه می کنیم از پایتون 2.7 استفاده کنید.

پس از پایان کار، نصب OpenSSL Light را شروع کنید (فقط از تنظیمات پیش فرض استفاده کنید)، و سپس رایانه خود را دوباره راه اندازی کنید.

اکنون زمان رسیدگی به پرونده های OpenVPN است. اگر قبلاً از سرویس VPN استفاده می کنید، ارائه دهنده به شما امکان دسترسی به پرونده های پیکربندی مورد نیاز شما را می دهد. در غیر این صورت، نصب کلاینت OpenVPN را ادامه دهید. پس از آن، تمام پرونده های مورد نیاز خود را در فهرست پیش فرض پیدا خواهید کرد: “C: / Program Files / OpenVPN / config” فایل پیکربندی مورد استفاده برای اتصال به سرور OpenVPN را پیدا کرده و آن را با Notepad باز کنید (توصیه می کنیم آن را در حالت Administrator اجرا کنید). پرونده را با نام دیگری ذخیره کنید تا کپی داشته باشید که در آن بتوانید بدون خطا کار کنید.

در ادامه کار، فایل پیکربندی را تغییر می دهید تا به این شکل باشد:

proto tcp-client

remote 8080

port 1194

dev tun1

secret ovpn.key

redirect-gateway def1

ifconfig 10.4.0.2 10.4.0.1

socks-proxy-retry

socks-proxy 127.0.0.1 10194

“your-server-IP” باید با آدرس IP سرور یا VPN سرور مورد استفاده شما جایگزین شود. در همان خط، می توانید شماره پورت را به چیزی غیر از “8080” تغییر دهید.

اکنون، پرونده را ذخیره کنید. مطمئن شوید که به جای فایل .txt به عنوان یک پرونده .ovpn ذخیره شده است. همچنین، پرونده اصلی را بازنویسی نکنید.

پیکربندی Obfsproxy

Command Prompt را در حالت Administrator باز کنید و دستورات زیر را یک مرتبه تایپ کنید:

cd C:\Python27\Scripts

pip install –-upgrade pip

pip install obfsproxy

obfsproxy –log-min-severity=info obfs2 –shared-secret=<some-random-key> socks 127.0.0.1:10194

رمز “some-random-key” را با رمز عبوری که می خواهید استفاده کنید جایگزین کنید.

مطمئن شوید که بعد از هر دستور Enter را بزنید. اگر بعد از دستور دوم خطایی پیدا کردید، می توانید آنها را نادیده بگیرید.

پس از پایان کار، خط فرمان باید به شما بگوید که برای ترافیک Obfsproxy آماده به کار است. هر زمان که بخواهید Obfsproxy را برای ترافیک OpenVPN مبهم اجرا کنید، باید اولین و آخرین دستورات را اجرا کنید و Command Prompt را باز بگذارید.

“اگر به دنبال اتصال ایمن VPN میگردید پیشنهاد ما به شما ChitaVPN است”

chita-Icon-buy

راه اندازی پروکسی اختیاری

شما واقعاً نیازی به انجام این مرحله ندارید، اما اگر قصد دارید از اتصال OpenVPN Obfsproxy برای تماشای محتوای مسدود شده جغرافیایی در سیستم عامل هایی مانند Netflix استفاده کنید، ضروری است. معمولاً اگر هنگام استفاده از Obfsproxy پروکسی را تنظیم نکنید، ممکن است پلتفرم های جریان روی منطقه اشتباه تنظیم شوند.

 

ساده ترین راه برای تنظیم پروکسی انجام این کار با افزونه مرورگری است که در بالا پیوند دادیم. پس از نصب، فقط تنظیمات ProxySwitchy را باز کرده و یک نمایه جدید ایجاد کنید. “پیکربندی دستی” را انتخاب کنید و سپس جزئیات زیر را وارد کنید:

نام نمایه را هرچه می خواهید بگذارید، اما هنوز اتصال را روشن نکنید. فقط زمانی که اتصال به سرور OpenVPN برقرار کردید این کار را انجام دهید.

راه اندازی سرور

قبل از شروع، لازم به ذکر است که اگر سرور OpenVPN خود را بر روی AWS (خدمات وب آمازون) اجرا می کنید، ممکن است لازم باشد یک قانون جدید اضافه کنید که مانع مسدود شدن ترافیک Obfsproxy توسط فایروال نمونه EC2 می شود.

برای پیکربندی سرور، باید PuTTy را شروع کنید زیرا از آن برای اتصال به سرور از طریق SSH استفاده می کنید. برای اطمینان از باز بودن درگاه 1194، باید فایل پیکربندی OpenVPN را در فایلدلر خود بررسی کنید. پایتون معمولاً باید قبلاً نصب شده باشد (مخصوصاً اگر از توزیع های مدرن لینوکس استفاده می کنید). اگر اینطور نیست، این کار را ادامه دهید.

سپس، دستورات زیر را یکبار در ترمینال PuTTy وارد کنید:

 

sudo yum install gcc
sudo pip install obfsproxy
obfsproxy –log-min-severity=info obfs2 –dest=127.0.0.1:1194 –shared-secret=<some-random-key> server 0.0.0.0:8080

-نسخه های قدیمی لینوکس ممکن است از “apt-get” به جای “yum” استفاده کنند.

-“برخی از کلیدهای تصادفی” باید با گذرواژه ای که برای مشتری استفاده می کنید جایگزین شود

اگر همه چیز درست پیش برود، ترمینال پیامی را نمایش می دهد که به شما می گوید سرور OpenVPN در حال شنیدن درگاه خاصی برای ترافیک Obfsproxy است.

در صورتی که قبلاً اشتراک VPN از ارائه دهنده ای دارید که سرورهای آن از Obfsproxy پشتیبانی می کنند، واقعاً نیازی به انجام هیچ کاری ندارید، زیرا ارائه دهنده قبلاً همه چیز را از طرف شما انجام داده است.

ایجاد ارتباط از طریق Obfsproxy

تنها کاری که باید انجام دهید این است که OpenVPN GUI/client را اجرا کنید در حالی که Obfsproxy در Command Prompt و پایانه PuTTy شما اجرا می شود. وقتی می بینید که نماد OpenVPN سبز می شود، به این معنی است که اتصال برقرار شده است.

اکنون، اگر می خواهید برخی از نمایش های مسدود شده از نظر جغرافیایی را تماشا کنید، فقط مرورگر خود را باز کنید (در این مورد Chrome) و نمایه ای را که برای برنامه افزودنی ProxySwitchy خود ایجاد کرده اید انتخاب کنید.

آیا روش ساده تری برای انجام این کار وجود دارد؟

بله، همانطور که قبلاً نیز اشاره کردیم، اگر از سرویس VPN استفاده می کنید، مبهم کردن ترافیک OpenVPN بسیار ساده تر است زیرا پیکربندی سرور توسط ارائه دهنده انجام می شود و همچنین به شما دسترسی به فایل های پیکربندی OpenVPN از پیش تنظیم شده را نیز به شما ارائه می دهند.

حداکثر، فقط باید GUI OpenVPN را نصب کرده و Obfsproxy را همانطور که در این مقاله ذکر کردیم پیکربندی کنید. همچنین می توانید پروکسی اختیاری را در مرورگر اضافه کنید تا مطمئن شوید مسدودسازی جغرافیایی مشکلی ایجاد نمی کند.