LINUX.ORG.RU
ФорумTalks

sshuttle

 , , sshuttle,


2

1

Делюсь хорошим.

Нужен питон на локальном хосте и на хосте, к которому есть доступ через ssh. На локальном хосте нужен sudo или root (видимо, чтобы править iptables). На удаленном хосте рут не нужен. Всё, больше не нужно ничего. На локальном хосте ставим клиента (питоновский скрипт), на сервере не нужно ставить ничего (ну, кроме питона, если его не было).

Есть в репозитории древней убунты. Но можно поставить из pip.

Запускаем:

sshuttle --dns -r user@remote.host 0.0.0.0/0

просит сначала локальный пароль для sudo, потом пароль пользователя хоста ssh (если доступ через пароль - это настройки ssh). Дальше идете в браузер по делам. Когда дела закончили, в консольку и ctrl+c.

Из моих мини-проблем. Репозиторная версия из синаптика не запустилось локально на дефолтном питоне 3.5 (там скорее всего моя вина, я в свое время его калечил, но не суть). При этом в системе есть параллельный Питон постарше. Репозиторную версию удалил, переустановил из pip для 3.9:

python3.9 -m pip install sshuttle

Всё завелось. На сайте написано, что на сервере тоже должен быть питон не младше 3.9, но заработало с 3.5, которая была там (но если бы были проблемы, для этой ситуации есть параметр командной строки, чтобы указать, какой питон запускать на сервере).

Юникс-вей эталонный. Кайф

★★★★★

Последнее исправление: bender (всего исправлений: 2)

Это для тех кто неосилил документацию ssh?

Kolins ★★★★★
()

Не нужно ничего ставить. Всё есть в ssh.

ssh -nNTD 0.0.0.0:1080 user@host

поднимает socks-прокси до удаленного хоста.

ALiEN175
()

Автору не нравится, что ssh tunneling TCP-over-TCP, при этом он заявляет:

sshuttle assembles the TCP stream locally, multiplexes it statefully over an ssh session, and disassembles it back into packets at the other end. So it never ends up doing TCP-over-TCP. It’s just data-over-TCP, which is safe.

Не уверен, что эта проблема у автора лечится, разве что веществами вызвана.

chupasaurus
()

Для socks5 в ssh, про который тут все дружно вспомнили, нужно на сервере делать всякие net.ipv4.ip_forward = 1 от рута.

А для этой штуки это не требуется? То есть можно копеечный шаред-хостинг с питоном как впн использовать?

pisemsky
()
Ответ на: комментарий от pisemsky

Что за вздор? Ничего там не нужно.

То есть можно копеечный шаред-хостинг с питоном как впн использовать?

Всегда можно было (но только tcp)

MagicMirror ★★★
()
Последнее исправление: MagicMirror (всего исправлений: 1)
Ответ на: комментарий от MagicMirror

в socks5 через в ssh можно и udp трафик пускать, сам только в прошлом году об этом узнал, до этого был уверен что только tcp, видно на подкорке после squid прописалось, что аська в udp через squid работать не будет.

s-warus ★★★★
()
Ответ на: комментарий от MagicMirror

И правда, убрал эту настройку на сервере, а всё работает как работало.

Похоже она от экспериментов с wireguard осталась, а в голове отложилось, что без неё ничего не будет работать.

pisemsky
()

в следующий раз про pyenv почитай

rtxtxtrx ★★★
()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)