ReverseTlsTunnel icon indicating copy to clipboard operation
ReverseTlsTunnel copied to clipboard

ایجاد پورت به پورت در سرویس

Open Matialz7 opened this issue 1 year ago • 8 comments

سلام و خسته نباشین یه چنتا سوال داشتم الان rtt بهتره یا ftt ؟ و اینکه من تو سرویس تو مسیر cd /etc/systemd/system فایل nano tunnel.service رو ایجاد میکنم ولی میخام دوتا کامند ایجاد کنم یا پورت به پورت جدا کنم و بجای اینکه ۲ بار ران کنم میخام همشو تو سرویس ایجاد کنم برای مثال: **[Unit] Description=Reverse TLS Tunnel

[Service] Type=idle User=root WorkingDirectory=/root ExecStart=/root/RTT --iran --lport:98 --sni:splus.ir --password:123 --iran --lport:97 --sni:splus.ir --password:123

Restart=always

[Install] WantedBy=multi-user.target**

که با 2 تا پورت 97 و 98 (برای مثال) ایجاد بشه . ولی کار نمیکنه ! دستور بالا رو تست کردم ولی فقط رو پورت 98 کار میکرد تو سرویس نمیدونم کجارو اشتباه زدم تو فایل tunnel.service . قبلا که با gost کار میکردم میتونستیم جدا کنیم مثل : **[Unit] Description=GO Simple Tunnel After=network.target Wants=network.target

[Service] Type=simple ExecStart=/usr/local/bin/gost -L=tcp://:97/ip.server.com:97 -L=tcp://:98/ip.server.com:98 [Install] WantedBy=multi-user.target**

ولی تو این سرویس rtt نشد و فقط یک پورت تانل میشه میتونم بپرسم مشکلش چیه و اینکه امکان پذیر هست که جدا جدا به صورت تک پورت اجرا نکنم ؟؟!

Matialz7 avatar Oct 20 '23 14:10 Matialz7

این چیزی که شما میخواید RTT ساپورت نمیکنه فعلا . شما باید برای هر پورت به پورت یک سرویس جدا بنویسید یا همه دستور ها رو داخل یک فایل sh قرار بدید و داخل سرویس بگید اون فایل sh ران بشه

AkramiPro avatar Oct 20 '23 17:10 AkramiPro

این چیزی که شما میخواید RTT ساپورت نمیکنه فعلا . شما باید برای هر پورت به پورت یک سرویس جدا بنویسید یا همه دستور ها رو داخل یک فایل sh قرار بدید و داخل سرویس بگید اون فایل sh ران بشه

میشه اموزش اون فایل sh رو بزارین که چجوری باید ساختهشه و چجوری داخل سرویس اجرا بشه اون فایل sh ?!

Matialz7 avatar Oct 21 '23 09:10 Matialz7

سلام شما برای اینکه چند پورت مجزا در یک سرویس در سرور ایران داشته باشین باید اینطوری عمل کنید

./RTT --iran --lport:98 --add-port:99 --add-port:100 --sni:splus.ir --password:123

و وقتی اینکارو میکنید در دستور سرور خارج دقت کنید toport این باشه

--toport:multiport

radkesvat avatar Oct 21 '23 10:10 radkesvat

سلام شما برای اینکه چند پورت مجزا در یک سرویس در سرور ایران داشته باشین باید اینطوری عمل کنید

./RTT --iran --lport:98 --add-port:99 --add-port:100 --sni:splus.ir --password:123

و وقتی اینکارو میکنید در دستور سرور خارج دقت کنید toport این باشه

--toport:multiport

یعنی به این صورت ؟ [Unit] Description=Reverse TLS Tunnel

[Service] Type=idle User=root WorkingDirectory=/root ExecStart=/root/RTT --iran --lport:98 --add-port:99 --add-port:100 --sni:splus.ir --password:123

Restart=always

[Install] WantedBy=multi-user.target

و خارج به این صورت : [Unit] Description=Reverse TLS Tunnel

[Service] Type=idle User=root WorkingDirectory=/root ExecStart=/root/RTT --kharej --iran-ip:8.8.8.8 --iran-port:98 --add-port:99 --add-port:100 --toip:127.0.0.1 --toport:multiport --password:123 --sni:splus.ir

Restart=always

[Install] WantedBy=multi-user.target

درسته این ؟

Matialz7 avatar Oct 21 '23 11:10 Matialz7

خارج درست نیست ؛ اینجوری باید باشه:

[Service]
Type=idle
User=root
WorkingDirectory=/root
ExecStart=/root/RTT --kharej --iran-ip:8.8.8.8 --iran-port:98  --toip:127.0.0.1 --toport:multiport --password:123 --sni:splus.ir

Restart=always

[Install]
WantedBy=multi-user.target

radkesvat avatar Oct 21 '23 11:10 radkesvat

ضمنا توجه کنید این حالت یعنی کاربر اگه به پورت ۹۸ ایران وصل شد ؛ وصل میشه به ۹۸ خارج ؛ اگه به ۹۹ ایران وصل شد ؛ وصل میشه به ۹۹ خارج و ۱۰۰ هم به همین شکل

radkesvat avatar Oct 21 '23 11:10 radkesvat

--toport:multiport

خب با این الگو برای هر پورت ی بار باید اجرا کنیم ؟

shayangha avatar Feb 10 '24 23:02 shayangha

درود

  1. هر دو روش RTT و FTT مزایا و معایبی دارند. به طور کلی FTT کمی سریع‌تر است اما RTT امنیت بیشتری دارد. بسته به نیازتان یکی را انتخاب کنید.

  2. دلیلی که تنها یک پورت تونل می‌شود این است که اجرای چندین دستور ExecStart با هم تو سرویس ممکن نیست.

برای ایجاد دو تونل مجزا، باید دو سرویس مجزا تعریف کنیم. مثلا:

الف) tunnel1.service

ب) tunnel2.service

سپس هر سرویس را با یک دستور ExecStart مجزا اجرا کنیم.

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

مثال ؛

tunnel1.service

[Unit] Description=Tunnel 1 After=network.target

[Service] Type=simple User=root ExecStart=/root/RTT --iran --lport=97 --sni=example.com --password=1234

[Install] WantedBy=multi-user.target

tunnel2.service

[Unit] Description=Tunnel 2 After=network.target

[Service] Type=simple User=root ExecStart=/root/RTT --iran --lport=98 --sni=example.com --password=1234

[Install] WantedBy=multi-user.target

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

سپس با دستور systemctl enable tunnel1.service tunnel2.service آنها را فعال می‌کنیم تا به صورت همزمان و مستقل اجرا شوند.

Arzenow avatar Feb 15 '24 12:02 Arzenow