یک اسکریپت مدیریتی کامل برای نصب و پیکربندی WaterWall با پروتکل HalfDuplex
- 🔍 تشخیص خودکار معماری: بهصورت خودکار معماری سیستم (ARM64 یا AMD64) را تشخیص میدهد
- 📥 دانلود و نصب خودکار: نسخه مناسب WaterWall v1.40 را دانلود و نصب میکند
- 📁 نصب در مسیر متمرکز: همه فایلها در
/waterwallقرار میگیرند - 🔧 پیکربندی ساده: منوی تعاملی برای پیکربندی ایران یا خارج
- 🔌 پشتیبانی از پورتهای متعدد: تک پورت، چند پورت (comma-separated) و بازه پورت (range)
- 🎨 رابط کاربری زیبا: منوی رنگی و جذاب
- 📊 نمایش وضعیت: بررسی وضعیت نصب و اجرای Tunnel
- 🚀 مدیریت ساده: شروع و توقف آسان Tunnel
- سیستم عامل Linux (Debian/Ubuntu/CentOS)
- دسترسی root یا sudo
- اتصال به اینترنت برای دانلود
# یا دانلود و اجرای مستقیم
bash <(curl -Ls https://raw.githubusercontent.com/DIGITALVORTEX-TEAM/DIGITALVORTEX-WaterWall/main/DIGITALVORTX-waterwall.sh)
- از منوی اصلی گزینه
1 - INSTALL COREرا انتخاب کنید - اسکریپت بهصورت خودکار معماری سیستم را تشخیص میدهد
- نسخه مناسب WaterWall دانلود و نصب میشود
- همه فایلها در
/waterwallقرار میگیرند
- گزینه
2 - Config HalfDuplex Tunnelرا انتخاب کنید - نوع سرور را انتخاب کنید:
- IRAN Server: استفاده از HalfDuplexClient
- Kharej/Foreign Server: استفاده از HalfDuplexServer
- آدرس Listener (پیشفرض: 0.0.0.0)
- پورتهای Listener (مثال:
8447,8447,8448,8449یا8447-8450) - IP سرور خارج
- پورتهای Connector به سرور خارج
- آدرس Listener (پیشفرض: 0.0.0.0)
- پورتهای Listener (مثال:
8443,8443,8444,8445یا8443-8446) - IP سرور ایران
- پورتهای Connector به سرور ایران
- گزینه
4 - Start Tunnelرا انتخاب کنید - Tunnel در یک screen session اجرا میشود
- برای مشاهده لاگها:
screen -r WaterWall
{
"name": "iran_server_config",
"nodes": [
{
"name": "iran_multi_port_listener",
"type": "TcpListener",
"settings": {
"address": "0.0.0.0",
"port": [8447, 8448, 8449, 8450],
"nodelay": true,
"multiport-backend": "iptables"
},
"next": "halfduplex_client"
},
{
"name": "halfduplex_client",
"type": "HalfDuplexClient",
"settings": {},
"next": "foreign_connector"
},
{
"name": "foreign_connector",
"type": "TcpConnector",
"settings": {
"address": "FOREIGN_SERVER_IP",
"port": [8443, 8444, 8445, 8446],
"nodelay": true,
"fastopen": false,
"domain-strategy": "ipv4"
},
"next": null
}
]
}{
"name": "foreign_server_config",
"nodes": [
{
"name": "foreign_multi_port_listener",
"type": "TcpListener",
"settings": {
"address": "0.0.0.0",
"port": [8443, 8444, 8445, 8446],
"nodelay": true,
"multiport-backend": "iptables"
},
"next": "halfduplex_server"
},
{
"name": "halfduplex_server",
"type": "HalfDuplexServer",
"settings": {},
"next": "iran_connector"
},
{
"name": "iran_connector",
"type": "TcpConnector",
"settings": {
"address": "IRAN_SERVER_IP",
"port": [8447, 8448, 8449, 8450],
"nodelay": true,
"fastopen": false,
"domain-strategy": "ipv4"
},
"next": null
}
]
}/waterwall/
├── Waterwall # فایل اجرایی اصلی
├── core.json # تنظیمات هسته
├── dev-ir.json # تنظیمات Tunnel
├── log/ # پوشه لاگها
│ ├── core.log
│ ├── network.log
│ └── dns.log
└── libs/ # کتابخانههای مورد نیاز
# مشاهده لاگهای Tunnel
screen -r WaterWall
# خروج از screen (بدون توقف Tunnel)
Ctrl+A سپس D
# توقف Tunnel
screen -X -S WaterWall quit
# مشاهده وضعیت
sudo ./DIGITALVORTX-waterwall.sh
# سپس گزینه 3 - Status Tunnel
# مشاهده فایل کانفیگ
cat /waterwall/dev-ir.json | jq '.'
# ویرایش دستی کانفیگ
sudo nano /waterwall/dev-ir.json- 📦 Repository GitHub
- 📥 دانلود مستقیم اسکریپت
- 📚 مستندات WaterWall
- 📖 Installation Guide
- 🔌 HalfDuplex Client
- 🔌 HalfDuplex Server
⚠️ برای نصب و اجرا به دسترسی root نیاز دارید⚠️ قبل از شروع، مطمئن شوید که پورتهای مورد نظر باز هستند⚠️ تنظیمات iptables بهصورت خودکار در کانفیگ اعمال میشود (multiport-backend)⚠️ IP سرور مقابل را با دقت وارد کنید
# بررسی اتصال به اینترنت
ping github.com
# دانلود دستی
wget https://github.com/radkesvat/WaterWall/releases/download/v1.40/Waterwall-linux-gcc-x64.zip# بررسی وجود فایلها
ls -la /waterwall/
# بررسی لاگها
tail -f /waterwall/log/core.log
tail -f /waterwall/log/network.log# بررسی پورتهای استفاده شده
netstat -tulpn | grep LISTEN
# یا
ss -tulpn | grep LISTENاین پروژه تحت مجوز MIT منتشر شده است.
DIGITALVORTX
از radkesvat برای توسعه WaterWall تشکر میکنیم.
⭐ اگر این پروژه برای شما مفید بود، لطفاً آن را ستاره دهید!