LINUX.ORG.RU
ФорумAdmin

SSH-соединение двух компьютеров без белых айпишников

 , , ,


2

1

Дано: два компьютера в разных частях света без белых айпишников, третий компьютер с белым айпишником.
Что хочу: первые два подключаются по SSH к третьему, после на первом можно заиметь консоль второго (желательно, напрямую, не пропуская трафик через третий).
Возможно? Или проще VPN?

★★★★★

Кажись без переливания трафика через третий хост не получится.

iron ★★★★★
()

Есть всякие штуки вроде pwnat или chownat с которыми это можно сделать.

redixin ★★★★
()
Ответ на: комментарий от CYB3R

У меня пока только один компьютер с IPv6.

Со второго туннель пробрось.

tailgunner ★★★★★
()

vpn проще

anonymous
()

просенький ssh туннель же, и траффик шифрованый, альтернатива только - если хватит доступа, то можно узнавать IP подключеных по ssh (считай любой логин в консоль не с локалхоста, в логах оно точно есть)

Dred ★★★★★
()

подними IPV6 черед teredo/miredo

snaf ★★★★★
()

VPN или SSH туннели с коррекцией маршрутизации, но это сложнее, ИМХО.

sT331h0rs3 ★★★★★
()

На первом компе:

ssh -f -N -R 10022:localhost:22 БЕ.Л.ЫЙ.IP

На втором:

ssh -f -N -R 11022:localhost:22 БЕ.Л.ЫЙ.IP

Подключение с первого ко второму:

ssh -p 11022 БЕ.Л.ЫЙ.IP

Подключение со второго к первому:

ssh -p 10022 БЕ.Л.ЫЙ.IP

Также, для автоматизации процесса можно использовать авторизацию по ключу и autossh

r0ck3r ★★★★★
()

Плюсую STUN, это единственный реальный способ слать трафик напрямую из изложенных здесь. Еще можешь попробовать вот так, но надо будет синхронизировать запуск клиента и сервера (пункт 8 и 9 здесь)

anonymous
()

не совсем то, но пригодится, для второй тачке чуть изменить

#!/usr/bin/ipython import subprocess, paramiko

if subprocess.call(«ping ...... -c 1», shell=True) ==0: if subprocess.call(«ifconfig tun0», shell=True) == 1: subprocess.call(«ssh -p 22 -f -w 0:0 .... true», shell=True) subprocess.call(«ifconfig tun0 10.10.10.2 pointopoint 10.10.10.1», shell=True) key=paramiko.RSAKey.from_private_key_file(filename=«/root/.ssh/id_rsa») client=paramiko.SSHClient() client.load_system_host_keys() client.connect("......", port=22, username=«root», pkey=key) stdout, stdin, stderr =client.exec_command(«ifconfig tun0 10.10.10.1 pointopoint 10.10.10.2») stdout, stdin, stderr =client.exec_command(«route add -net 192.168.0.0/24 gw 10.10.10.2») client.close()

dcopm999
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.