SSH-туннелирование за NAT-брандмауэрами

SSH-туннелирование за NAT-брандмауэрами

У меня есть openssh-сервер. На Ubuntu 14.04x за брандмауэром (у меня нет прав администратора) я хочу создать ssh-туннель из моего Kali Linux rolling, который использует привязку с мобильного устройства, которое находится за брандмауэром. У меня нет прав администратора. Возможно ли это? У меня есть удаленный рабочий стол Chrome, который позволяет получить доступ к командной строке к машине Ubuntu, которая имеет открытый доступ vpn. Сервер и открытый ssh-сервер.

решение1

  Ubuntu----Firewall1----Internet----Firewall2----Kali

И вы хотите подключиться по SSH к Ubuntu с Kali, не имея доступа ни к одному из брандмауэров.

Вам необходимо иметь две вещи.

1) Какой-то способ для входящего соединения пройти через Firewall1 и попасть на хост Ubuntu. Какой порт не имеет значения, если что-то NAT-включено. Это должен быть порт TCP.

2) Firewall2 должен разрешить подключение ИЗ внутренней сети В Интернет через тот же порт, что и #1.

Без обоих этих факторов вы не достигнете своей цели.

Возможные альтернативы

  • Проверьте IPv6 — если на обоих концах есть функциональный IPv6, то NAT перестает быть проблемой. Однако правила брандмауэра все еще могут нуждаться в корректировке.

  • Используйте третью сторону - сервер оболочки где-то в Интернете, и как Ubuntu, так и Kali поддерживают сеанс ssh с настроенными обратными туннелями. Так что из Kali вы можете подключиться по SSH к shellbox с опцией -R. Подробнее об этом наКак работает обратное SSH-туннелирование?

  • Обойдите брандмауэр, проложив и управляя собственным подключением. Это может означать установку DSL или оптоволоконного соединения на обоих концах. Недостатком здесь является стоимость и разрешение. Вы можете обойтись сотовым подключением, но оно очень быстро становится дорогим.

  • Просто не надо. Если вам скучно на работе/в школе, и это просто отвлекает, возможно, вам нужна более сложная и увлекательная работа.

решение2

Если какое-либо из устройств брандмауэра поддерживает UPnP, вы можете использовать его для настройки переадресации портов. Существует несколько доступных утилит командной строки, которые вы можете использовать для отправки вызовов UPnP.

Один из таких наборов утилит можно найти здесь:http://people.ds.cam.ac.uk/ssb22/setup/upnp.html
Вам, скорее всего, понадобится необходимый модуль Python, который вы можете установить с помощью pip install --user miniupnpc.

Использование очень простое:

./upnp-add-port 22222 22

Это перенаправит порт 22222на устройстве межсетевого экрана на порт 22на вашем компьютере.

Команда upnp-portsдолжна отобразить что-то вроде этого:

./upnp-ports
TCP:22222 -> 192.168.0.139:22   upnp-add-port 22222

Связанный контент