Туннелирование TCP / IP-подключения через подключение к удаленному рабочему столу

существует удаленный сервер Windows в частной сети, к которой я могу подключиться через подключение к удаленному рабочему столу. Я хотел бы иметь возможность устанавливать соединения TCP/IP с моего компьютера на другие компьютеры в сети этого сервера.

подключение к удаленному рабочему столу позволяет совместно использовать принтеры, диски и другие локальные ресурсы через подключение. Есть ли способ "туннелировать" соединение TCP / IP через RDC?

Я хотел бы что-то похожее на порт-форвардинга через SSH. Я не вижу никакого способа сделать это через RDC, но я надеюсь, что возможность есть, и я просто не знаю об этом.

4
задан Kristopher Johnson
19.03.2023 2:39 Количество просмотров материала 3272
Распечатать страницу

4 ответа

Я не думаю, что вы можете туннелировать через RDP, однако, если бы Вы были к rdp на сервер, а затем инициировать туннель ssh обратно к вашему клиенту ваши машины будут подключены по ssh. Вы можете переадресовывать как удаленные, так и локальные порты, чтобы все было наоборот

EDIT

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

6
отвечен Charles Gargent 2023-03-20 10:27

Если вы используете rdesktop на стороне клиента (вместо собственного клиента Windows), вы можете использовать rdp2tcp.

Он позволяет управлять перенаправлением портов TCP через RDP-соединение.

16
отвечен Nicolas Collignon 2023-03-20 12:44

Я не нашел ничего лучше, чем rdp2tcp для использования с сервером Windows, который не разрешал доступ администратора или маршрутизацию сети интерфейс-интерфейс. Вам нужно будет сделать ООП патч на вашем rdesktop, чтобы заставить это работать (перейдите на последние страницы, чтобы найти ту, которая соответствует последней версии rdesktop). Я использовал компилятор MinGW для компиляции Windows конца туннеля.

документация также превосходна и сжата.

Что может показаться незначительным: если вы используете имя "addin" С " - " в нем, rdesktop не удается правильно проанализировать командную строку. Это может быть bashism, что требует правильного выхода, но я не уверен.

обратите внимание, что, насколько я могу понять, это не "истинный" TCP-туннель, который "видит" блоки данных протокола TCP, поскольку это было бы невозможно без прав администратора на стороне Windows. Это больше похоже на прокси socks с оконечной точкой, которая предварительно настроена (не очень косвенные, хотя). Он также имеет фактический прокси-сервер socks, если вам это нравится.

Я легко управлял интерактивным сеансом SSH с ним, но он не задерживал передачу файлов SSH (дал "виртуальный канал отключен" в консоли rdesktop (rdp2tcp работает как его дочерний процесс с stdout/stdin dup2'Ed/piped rdesktop, но без изменения stderr)). Был постоянный источник назвал RDP2TCP_PING_TIMEOUT, который выглядел, как тайм-аут, образуемых для проведения в тоннеле. Предполагая, что какое-то регулирование в промежуточной сети, увеличение этого с 5 до 900, казалось, сделало трюк, и он задержался для передачи до 100 МБ (потребовалось около 15 минут в этой конкретной сети).

помимо этого, однако, было обнаружено, что rdp2tcp получает SIGPIPE, который, как он утверждал, получил из-за разрыва в трубе rdesktop, хотя я не мог найти никаких доказательств того, что это происходит либо из кода rdesktop, либо из вывода "lsof", который показал количество каналов для rdesktop до и после триггера SIGPIPE не изменяется.

Если это произойдет, необходимо перезапустить rdesktop и, возможно, Windows-сторону туннеля. Вы можете использовать rsync и возобновить передачу файлов, и, возможно, вы можете автоматизировать весь процесс восстановления.

все это предполагало Linux в качестве вашего клиента. Я не пробовал исправленный rdesktop на Windows из-за какой-то несвязанной проблемы, которую я имел с Cygwin / X. Я думаю, что это должно работа.

кроме того, мой опыт был с SSH, но огромные передачи файлов любыми другими средствами, вероятно, ударят по тем же проблемам.

1
отвечен wolf 2023-03-20 15:01

Я думаю, что вы можете использовать перенаправление локального порта на RDP:

A -> B -> C

A-Windows или Mac, B-Linux, а C-Windows. Если вы хотите RDP к C от A и C напрямую не добраться с затем на

ssh username@B -L 7777:C:3389

открыть RD client, затем пункт 127.0.0.1: 7777 использовать имя пользователя и пароль C. Я попробовал это с Mac, но должен работать для Windows.

0
отвечен Srinivas Nukala 2023-03-20 17:18

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх