MyTetra Share
Делитесь знаниями!
Команды обратного туннеля (Reverse SSH Tunnel) — полный справочник
Время создания: 01.09.2026 20:38
Автор: alensav
Текстовые метки: Команды обратного туннеля (Reverse SSH Tunnel) — полный справочник
Раздел: Termux_Туннель
Запись: alensav/MyTetra2/main/base/1788284323tup3n0apvk/text.html на raw.githubusercontent.com

Команды обратного туннеля (Reverse SSH Tunnel) — полный справочник


Базовые команды

1. Самый простой обратный туннель

bash

# На телефоне (Termux) — подключаемся к Ubuntu и пробрасываем порт 8022 обратно

ssh -R 8022:localhost:8022 alensav26@192.168.1.124

2. С явным указанием порта SSH (если Ubuntu слушает не на 22)

bash

ssh -p 2222 -R 8022:localhost:8022 alensav26@192.168.1.124

3. Без входа в оболочку (только туннель)

bash

ssh -fN -R 8022:localhost:8022 alensav26@192.168.1.124

4. С отладкой (чтобы видеть ошибки)

bash

ssh -v -R 8022:localhost:8022 alensav26@192.168.1.124


С ключами (без пароля)

5. Скопировать ключ с телефона на Ubuntu

bash

# На телефоне — показать ключ

cat ~/.ssh/id_ed25519.pub


# На Ubuntu — добавить ключ

echo "ssh-ed25519 AAA..." >> ~/.ssh/authorized_keys

6. Туннель с ключом (уже без пароля)

bash

ssh -i ~/.ssh/id_ed25519 -R 8022:localhost:8022 alensav26@192.168.1.124


Проброс нескольких портов

7. Проброс нескольких портов одновременно

bash

ssh -R 8022:localhost:8022 -R 5900:localhost:5900 alensav26@192.168.1.124

8. Проброс порта с другого хоста в сети

bash

# Пробрасываем порт с другого устройства (например, 192.168.1.50:80) через телефон

ssh -R 8080:192.168.1.50:80 alensav26@192.168.1.124


Постоянный туннель (автопереподключение)

9. С автоматическим переподключением (autossh)

bash

# Установка autossh в Termux

pkg install autossh -y


# Запуск с автопереподключением

autossh -M 0 -o "ServerAliveInterval 60" -o "ServerAliveCountMax 3" -R 8022:localhost:8022 alensav26@192.168.1.124

10. В фоне с автопереподключением

bash

autossh -M 0 -f -o "ServerAliveInterval 60" -o "ServerAliveCountMax 3" -R 8022:localhost:8022 alensav26@192.168.1.124


🛠️ Полезные опции


Опция

Что делает

-f

Запуск в фоне

-N

Не выполнять команды (только туннель)

-v

Подробный вывод (отладка)

-vv

Ещё более подробный вывод

-p

Указать порт SSH-сервера

-i

Указать файл ключа

-o "ServerAliveInterval 60"

Проверка соединения каждые 60 секунд


📱 После установки туннеля

11. Подключиться к Termux через туннель (из Ubuntu)

bash

ssh -p 8022 u0_a368@localhost

12. Запустить команду в Termux через туннель (без входа)

bash

ssh -p 8022 u0_a368@localhost "pkg list-installed"

13. Скопировать файлы через туннель

bash

# Из Ubuntu в Termux

scp -P 8022 file.txt u0_a368@localhost:/sdcard/


# Из Termux в Ubuntu

scp -P 8022 u0_a368@localhost:/sdcard/file.txt .


Продвинутые сценарии

14. Туннель через публичный сервер (для доступа из интернета)

bash

# На телефоне — подключаемся к VPS и пробрасываем порт

ssh -R 8022:localhost:8022 user@vps-server.com

15. SOCKS5 прокси через туннель

bash

# На телефоне — создаём динамический прокси

ssh -D 1080 -R 8022:localhost:8022 alensav26@192.168.1.124


# Теперь в Ubuntu можно использовать localhost:1080 как SOCKS5 прокси

16. Проброс порта из Ubuntu на телефон (прямой туннель)

bash

# На телефоне — пробрасываем порт Ubuntu к себе

ssh -L 8080:localhost:80 alensav26@192.168.1.124


# Теперь на телефоне можно открыть localhost:8080 и увидеть веб-сервер Ubuntu


Памятка: структура туннеля

text

Телефон (Termux) Ubuntu (ноутбук)

| |

| ssh -R 8022:localhost:8022 ------> |

| |

| (туннель установлен) |

| |

| | ssh -p 8022 u0_a368@localhost

| <------ подключение через порт 8022 ------|

| |

v v


⚠️ Типичные ошибки и их решение


Ошибка

Решение

Connection refused

SSH-сервер на Ubuntu не запущен

Connection timed out

Неправильный IP или телефон в другой сети

Host key verification failed

Выполнить ssh-keygen -R IP_адрес

Permission denied

Неправильный пароль или ключ

Channel setup failed

Порт уже занят


📋 Быстрый старт (копируйте и вставляйте)

bash

# 1. На Ubuntu — убедитесь, что SSH работает

sudo systemctl start ssh


# 2. На телефоне — установите туннель

ssh -R 8022:localhost:8022 alensav26@192.168.1.124


# 3. На Ubuntu (в новом терминале) — подключитесь к Termux

ssh -p 8022 u0_a368@localhost


Какой вариант вам нужен? Если хотите настроить автоматический туннель при загрузке Termux, или пробросить графику (VNC/RDP) — я помогу! 😊

 
MyTetra Share v.0.67
Яндекс индекс цитирования