Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

👻 GhostRPC Tunnel

گوست‌آر‌پی‌سی (GhostRPC) یک تونل و وب‌سرور لایه ۷ (L7) فوق‌سریع و ایمن است که تماماً با زبان قدرتمند Rust توسعه یافته است. این پروژه به صورت ویژه برای عبور از محدودیت‌های شدید شبکه‌ای و دور زدن فیلترینگ‌های پیشرفته طراحی شده است؛ با بهره‌گیری از مالتی‌پلکسینگ HTTP/2، مسیریابی بدون‌کپی (Zero-Copy) و سیستم دفاع فعال، سرور شما در برابر هرگونه اسکنر و سیستم‌های مانیتورینگ نامرئی خواهد ماند.


🚀 ویژگی‌های کلیدی

  • وب‌سرور داخلی و Reverse Proxy: بدون نیاز به برنامه‌های سنگین مثل Nginx، می‌توانید مستقیماً فایل‌های استاتیک، سایت‌های PHP/WordPress (با FastCGI) و یا پنل‌های کاربری و سوکت‌های سیستم را پشت این تونل میزبانی کنید.
  • مسیریابی پیشرفته و سریع (SNI Multiplexing & Web Server): لایه‌های مسیریابی قدرتمندی در برنامه تعبیه شده‌اند که همگی با استفاده از تشخیص هوشمند SNI کار می‌کنند. به لطف این تکنولوژی، شما می‌توانید چندین سرویس مختلف را روی یک پورت مشترک (مثلاً 443) اجرا کنید و برنامه با خواندن نام دامنه (SNI)، ترافیک هر کاربر را به مقصد متفاوت و مشخصی هدایت می‌کند:
    • مسیر sni_proxy (سمت سرور): خواندن پکت خام ClientHello و فوروارد مستقیم و بسیار سریع به مقصدهای مختلف بدون رمزگشایی (Zero-Copy).
    • مسیر port_mappings (سمت کلاینت): هدایت ترافیک پورت‌های محلی کلاینت به مقصدهای ریموت در سرور از طریق بستر امن تونل.
    • مسیر web_server: قابلیت وب‌سرور داخلی (مشابه Caddy) که از ۳ حالت مختلف (reverse_proxy, static, fastcgi) برای لایه ۷ پشتیبانی می‌کند.
  • دفاع فعال (Camouflage): در صورت مراجعه افراد متفرقه، سیستم‌های کاوشگر، یا ربات‌های سانسورچی، ترافیک آن‌ها به‌طور خودکار به یک سایت معتبر (مانند ubuntu.com) یا یک فایل نمایشیِ محلی هدایت می‌شود تا ماهیت واقعی سرور کاملاً پنهان بماند.
  • مدیریت خودکار گواهینامه‌های SSL: نیازی به دردسرهای تمدید SSL ندارید! با دادن توکن Cloudflare یا Arvancloud، سیستم به صورت کاملاً خودکار تمامی گواهی‌های دامنه‌ها را ایجاد و تمدید می‌کند و حتی می‌تواند آن‌ها را مستقیماً برای برنامه‌های دیگر شما (مثل پنل‌های X-UI و سنایی) کپی کند.
  • مدیریت هوشمند منابع (Anti-Loop): به لطف استفاده از تکنولوژی‌های Async زبان راست، اتصال‌های زنده (Keep-Alive) و سیستم‌های Backoff، سرور شما در برابر اختلالات شبکه مقاوم است و مصرف پردازنده و رم در پایین‌ترین سطح ممکن نگه داشته میشود.
  • تغییرات بدون قطعی (Hot-Reload): فایل تنظیمات را ویرایش کنید و با ذخیره کردن آن، تغییرات در کسری از ثانیه و بدون قطع شدن اتصال‌های فعالِ کاربران، در سیستم اعمال میشوند!
  • کلاینت هوشمند (High Availability & Failover):
    • اسکنر آی‌پی: سمت کلاینت با اسکن دوره‌ای لیست آی‌پی‌های تمیز کلودفلر، همواره به بهترین و سریع‌ترین آی‌پی‌ها متصل می‌شود.
    • پایداری تضمین‌شده: اگر ارتباط تونل با یکی از سرورها (SNI) قطع شود، کلاینت بلافاصله ترافیک port_mappings آن را از طریق تونلِ سرورهای دیگر (SNIهای جایگزین) به مقصد هدایت می‌کند تا هیچ قطعی احساس نشود.
    • قابلیت share_sni: این پارامتر به شما کنترل کامل می‌دهد: اگر مقدار آن 0 باشد، ترافیک سایر تونل‌های قطع شده اجازه عبور از این تونل را ندارند. اما اگر عدد طبیعی (مثلاً 1 یا 2) باشد، سایر ترافیک‌ها می‌توانند در صورت قطعی، از این تونل استفاده کنند؛ سیستم همیشه تونلی را برای جایگزینی انتخاب می‌کند که عدد share_sni آن کوچکتر (اولویت بالاتر) باشد.

📦 راهنمای نصب و راه‌اندازی

برای راه‌اندازی سریع پروژه و ساخت سرویس آن در لینوکس، تنها کافیست دستورات زیر را وارد کنید:

curl -sSL https://raw.githubusercontent.com/ArashAfkandeh/GhostRPC/main/install.sh | sudo bash

اسکریپت نصب تمامی کارها از جمله استخراج فایل‌ها و ایجاد منوی مدیریت ابزار را به صورت اتوماتیک انجام می‌دهد. پس از پایان نصب، می‌توانید از هر کجای سرور با اجرای دستور زیر، سرویس خود را مدیریت کنید:

ghostrpc

با استفاده از این منوی جذاب و گرافیکی (CLI) می‌توانید وضعیت سرویس را مانیتور کنید، تونل را استارت، استاپ، ری‌استارت، آپدیت و یا حتی به طور کامل از سرور حذف (Uninstall) کنید!

GhostRPC CLI Menu


🛠️ تنظیمات

تنظیمات برنامه در دو فایل /root/GhostRPC/server.toml (برای سرور خارج) و /root/GhostRPC/client.toml (برای سرور ایران) قرار دارند. نمونه‌های قرار داده شده به صورت کاملاً ساده و گویا طراحی شده‌اند و شما را از هرگونه پیچیدگی بی‌نیاز می‌کنند.

💡 نکته بسیار مهم (ویژگی Hot-Reload): سیستم هوشمند GhostRPC به لحظه تغییرات فایل‌های کانفیگ (*.toml) را مانیتور می‌کند. این یعنی هیچ نیازی نیست که قبل از تنظیم کانفیگ‌ها، سرویس را متوقف کنید! کافیست در منوی ghostrpc سرویس را Start کنید و سپس با خیال راحت فایل کانفیگ خود را ویرایش کنید؛ تغییرات بلافاصله و بدون ری‌استارت شدن برنامه یا قطعی کاربران، اعمال خواهند شد.

About

این برنامه یک تونل ارتباطی سریع با واسطه‌ Cloudflare CDN و بر بستر HTTP/2 (همراه با فرمت‌دهی gRPC) می‌باشد که برای عبور از سیستم‌های فیلترینگ طراحی شده است.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages