универсальная утилита туннелирования через одно TCP-соединение?

универсальная утилита туннелирования через одно TCP-соединение?

У меня есть встроенное устройство Linux (в собственной частной локальной сети, подключенной к другим сенсорным устройствам), подключенное к Интернету. Я уже могу создать безопасное прямое TCP-соединение с помощью собственного протокола между моим компьютером и устройством. Это само по себе уже является туннелем, и я могу, например, подключиться к демону SSH на устройстве (через туннель).

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

  • имеетЛинуксконечная точка туннеля, которая устанавливается на устройстве
  • имеетудобный(читай: очень прост в использовании)Окнапрограмма, действующая как локальная точка входа в туннель и позволяющая пользователю настраивать желаемые параметры туннеля (точку назначения и IP-адреса)
  • позволяет использовать несколько туннелей через одинодно TCP-соединение(важно, так как установление этого соединения происходит относительно медленно)
  • предпочтительно поддерживаетФТПсоединения (которые не будут работать, если не поддерживаются специально)
  • нетребоватьлюбой вид аутентификации (поэтому ssh-туннели, к сожалению, использовать нельзя)

Конечно, я попытался найти такую ​​программу в Google, но ничего полезного не нашел...

Практически, что-то вроде этого:

  (USER PC) 

+---------+   +-----------+
|   FTP   |-->|           |
| client  |-->| Windows   |   +----------+
+---------+   |  tunnel   |   | existing |
              | server    |-->| tunnel   | ------------->>  INTERNET 
+---------+   |           |   | server   |
| browser |-->| (wanted)  |   +----------+
+---------+   +-----------+    localhost
                localhost

     . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

                                            +-----------+
                             +----------+   | Linux     |--> l27.0.0.1:80
                             | existing |   |  tunnel   |
     INTERNET  >>------------| tunnel   |-->| client    |--> 192.168.0.1:21
                             | client   |   |           |
                             +----------+   | (wanted)  |--> 192.168.0.1:20 
                                            +-----------+
                                              localhost

                                                   (EMBEDDED DEVICE)

Существует ли такой инструмент или мне действительно нужно написать его самостоятельно?

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