Доброго времени суток.
Извиняюсь за возможно некорректно поставленный вопрос. Суть вопроса поясню на примере. Представим следующее клиент-серверное взаимодействие:
Сервер (например ssh) имеет «белый» IP и доступен из интернета, клиент имеет внутренний IP (вида 192.168.x.x), находится за роутером, который пропускает все исходещие из локальной сети соедиения, а входящие из интернета, соответсвтенно, режет. Вопрос в том, может ли клиент инициировать TCP-соединение с сервером (по тому же ssh), а потом передать управление администратору на сервере?
В реальности, суть моей проблемы такова, необходимо удалённо по ssh помочь кое-чем клиенту, но до него не достучаться из-за описанного выше. То бишь устанавливаемое с ним соединение (TCP-туннель) мною с сервера до него не дойдёт, однако инициируемый им туннель будет работать. Могу ли я, каким-то образом (и если да, то каким) дать ему доступ к серверу, чтоб он создал канал связи, но использовать этот канал самому? Если такое возможно, то какими средствами, фича ssh или протокола ?
Очевидны варианты - настройка роутера и поднятие vpn, но трудоёмко и как-то не Ъ. В принципе, теоритически, такое возможно, если правильно «заполнить» служебные поля tcp-пакетов, чтобы, фактически новое соединение воспинималось роутером как старый туннель, созданный из локальной сети.