پرش به محتویات

آموزش راه‌اندازی تانل WST به عنوان سرور میانی

ابتدا می‌توانید این ویدئو را ببینید

برای این کار شما به یک سرور میانی نیاز دارید تا از طریق آن به سرور اصلی متصل شوید. معمولا این سرور میانی در ایران در نظر گرفته می‌شود. دیاگرام استفاده از تانل به این شکل است.

شماتیک استفاده از تانل

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

نکته: ما این اسکریپت‌ها را روی ابونتو ۲۲.۰۴ تست کردیم بنابراین بهتر هست از این نسخه استفاده کنید.

روی سرور اصلی نیز هیدیفای‌منیجر را نصب کنید که راهنمای نصب آن در اینجا وجود داره.

نصب تانل روی سرور اصلی و میانی (ایران)

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

wget "https://github.com/erebe/wstunnel/releases/download/v5.0/wstunnel-linux-x64"
به آن دسترسی اجرا بدهید.
sudo chmod +x wstunnel-linux-x64
برنامه را با کامند تغییر نام داده و به پوشه bin/ انتقال دهید.
sudo mv wstunnel-linux-x64 /bin/wstunnel

اجرای تانل روی سرور اصلی

روی سرور اصلی که هیدیفای نصب شده است، باید تانل نصب شده را اجرا کنید. با این کامند آن را بر روی پورت ۸۰۸۰ فعال نمایید.

sudo wstunnel --server ws://0.0.0.0:8080 -v

نکته: دقت کنید اگر پورت تانل را عوض کردید در هر دو سرور باید پورت‌ها یکی باشند.

  • دقت کنید بعد از زدن این کامند، پیغام WAIT for tcp connection on 0.0.0.0:8080 داده می‌شود که به معنای اجرای موفق تانل و در انتظار بودن برقراری لینک در سرور میانی است چون این تانل نیاز به برقرار ارتباط از هر دو سمت را دارد.

کار راه‌اندازی تانل روی سرور اصلی نیز تمام است.

اجرای تانل روی سرور میانی

برای راه‌اندازی تانل روی سرور میانی با استفاده از این کامند هم پورت‌های مورد نیاز جهت فروارد نمودن را باید بدهید و هم پورتی که تانل برای برقراری ارتباط استفاده می‌کند. در اینجا از پورت ۸۰۸۰ برای خود تانل استفاده شده است که سمت سرور اصلی کانفیگ شد. همینطور برنامه هیدیفای از پورت‌های ۴۴۳و۸۰ به صورت خودکار استفاده می‌کند که آن‌ها را نیز در کامند زیر قرار بدهید.

  • اگر پورت‌های دیفالت پنل هیدیفای را عوض نمودید طبق همین فرمول پورت‌های ۴۴۳و۸۰ را تغییر دهید.

  • اگر پورت دیگری را خواستید فروارد کنید طبث همین فرمول می‌توانید انجام دهید.

sudo wstunnel -L 0.0.0.0:80:localhost:80 -L 0.0.0.0:443:localhost:443 ws://[cdn_or_direct_domain_of_main_server]:8080
  • دقت شود [server_adress_or_domain] را می‌بایست با دامین CDN یا دایرکت ثبت شده در هیدیفای یا آیپی اصلی سرور جای‌گذاری کنید.
  • اگر با دامین CDN این کار را انجام بدید، از فیلتر شدن سرور اصلی نیز جلوگیری می‌کنید.
  • دقت کنید بعد از زدن این کامند، پیغام WAIT for tcp connection on 0.0.0.0:80 , WAIT for tcp connection on 0.0.0.0:443 داده می‌شود که به معنای اجرای موفق تانل و در انتظار بودن برقراری کانکشن از سمت کلاینت است.

  • اگر پورت اصلی تانل (در اینجا ۸۰۸۰) روی دیتاسنتر ایران شما فیلتر شد، می‌توانید پورت‌های دیگر را استفاده نمایید.

  • نکته خیلی مهم: اگر از دامنه‌های CDN برای برقراری تانل استفاده کردید، فق مجاز هستید از پورتهای کلادفلر استفاده کنید. یعنی برای کانکشن پورتهای https کلادفلر را فق می‌توانید استفاده نمایید و برای خود تانل پورت‌های http کلادفلر را می‌توانید استفاده نمایید. لیست پورتهای کلادفلر

کار در راه‌اندازی تانل ws در سرور میانی تمام است.

راه‌اندازی سرویس تانل در سرور اصلی

تنها نیاز است سرویس آن را نیز ایجاد نمایید تا در صورت ریست شدن سرور، تانل به صورت خودکار اجرا گردد. برای این کار از تانل ایجاد شده با Ctrl+c خارج شوید، سپس با یک ویرایشگر متنی (در اینجا nano) فایل سرویس را در مسیر اصلی کرنل ایجاد کنید.

sudo nano /etc/systemd/system/wstunnel.service

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

[Unit]
Description=wstunnel
After=network.target

[Service]
Type=simple
WorkingDirectory=/bin
ExecStart= wstunnel --server ws://0.0.0.0:8080 -v
Restart=on-failure

[Install]
WantedBy=multi-user.target

برای خروج از ویرایشگر متنی ابتدا Ctrl+s بزنید تا فایل ذخیره شود سپس با Ctrl+x از برنامه خارج شوید.

حالا سرویس اصلی کرنل را ریست کرده و سرویس ساخته شده را فعال و استارت کنید.

sudo systemctl daemon-reload
sudo systemctl enable wstunnel.service
sudo systemctl start wstunnel.service
حالا برای چک کردن ایتکه سرویس فعال شده است این کامند را بزنید و چک کنید حتما سرویس Active باشد.
sudo systemctl status wstunnel.service

اگر به هر دلیل سرویس فعال نبود، یکی از مراحل قبل احتمالا به درستی انجام نشده است.

اراه‌اندازی سرویس تانل در سرور میانی

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

sudo nano /etc/systemd/system/wstunnel.service
سپس در فایل باز شده، متن زیر را کپی کنید تا سرویس مورد نظر تعریف شود.

[Unit]
Description=wstunnel
After=network.target

[Service]
Type=simple
WorkingDirectory=/bin
ExecStart= wstunnel -L 0.0.0.0:80:localhost:80 -L 0.0.0.0:443:localhost:443 ws://[cdn_or_direct_domain_of_main_server]:8080
Restart=on-failure

[Install]
WantedBy=multi-user.target
  • دقت کنید که cdn_or_direct_domain_of_main_server را با مشخصات دامنه دایرکت یا CDN خود جای‌گذاری کنید.
  • برای خروج از ویرایشگر متنی ابتدا Ctrl + s بزنید تا فایل ذخیره شود سپس با Ctrl + x از برنامه خارج شوید.

حالا سرویس اصلی کرنل را ریست کرده و سرویس ساخته شده را فعال و استارت کنید.

sudo systemctl daemon-reload
sudo systemctl enable wstunnel.service
sudo systemctl start wstunnel.service
حالا برای چک کردن ایتکه سرویس فعال شده است این کامند را بزنید و چک کنید حتما سرویس Active باشد.
sudo systemctl status wstunnel.service

اگر به هر دلیل سرویس فعال نبود، یکی از مراحل قبل احتمالا به درستی انجام نشده است.

تعریف سرور میانی در هیدیفای‌منیجر

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

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

همانند همیشه در هیدیفای‌منیجر بهتر است کانفیگ‌ها را از لینک سابسکریپشن جدا کنید. بنابراین برای دامنه سرور میانی ثبت شده نیز می‌توانید در تنظیمات دامنه مربوط به سابسکریپشن، تیک مربوط به دامنه سرور میانی را بزنید تا کانفیگ‌های آن به دامنه سابسکریپشن اضافه گردند.

فرض شود که دامنه مربوط به سابسکریپشن sublink.hiddify.com باشد، مطابق با تصویر زیر جلو بروید تا کار انجام شود.

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

حذف تانل از سرور میانی و سرور اصلی

ابتدا باید سرویس را متوقف و غیر فعال کنید.

sudo systemctl daemon-reload
sudo systemctl stop wstunnel.service
sudo systemctl disable wstunnel.service
سپس برنامه و سرویس ایجاد شده را حذف کنید.
sudo rm -f /etc/systemd/system/wstunnel.service /bin/wstunnel

لینک پروژه WS Tunnel


اخرین بروزرسانی: 20 دسامبر 2024

نظرات