Организация вывода рабочего стола (за NAT) через защищенный туннель

Home/ИТ-рецепты/Организация вывода рабочего стола (за NAT) через защищенный туннель

Организация вывода рабочего стола (за NAT) через защищенный туннель

Постановка задачи:

  1. Имеются две машины (Windows) подключенные к интернету.
  2. Одна из них (скажем, зеленая) имеет белый ip или находится за контролируемым оборудованием с белым ip.
  3. Вторая машина (скажем, синяя) находится в серой сети, в которой имеется доступ к интернету, однако шлюз неконтролируемый и порт-форвардинг не возможен. Вероятно также вместе со шлюзом установлен фаерволл — исходящие соединения разрешены только на 80 (http) и 443 (https) порты.
  4. Необходимо обеспечить доступ к рабочему столу синей машины с зеленой.


Тривиальное и безыскусное.

Использовать TeamViewer. Минус — неконтролируемый третий сервер (сервера) в интернете.

Слишком сложное, туннель сеть-сеть.

Организовать туннель от синей машины к зеленой, в нем проложить ppp, назначить соответствующие адреса, прописать роутинг, воспользоваться стандартными средствами, вроде rdp. Минус – слишком сложное решение для поставленной задачи.

Правильное

Организовать туннель от синей машины к зеленой (stunnel), воспользоваться возможностью VNC по инициации соединения от сервера (чей рабочий стол будет передаваться) к клиенту (где рабочий стол будет показываться).

Подробное описание решения № 3

Необходимый софт:

  • stunnel
  • RealVNC (enterprise)

Процедура:

1. Устанавливаем на обе машины stunnel, при установке вводим в терминальном окне данные для самоподписанных сертификатов.
2. Устанавливаем на обе машины RealVNC.
3. Запускаем stunnel на зеленой машине с правами админа. В трее появляется значек stunnel, в контекстном меню значка — «Edit stunnel.conf». Приводим его в следующий вид (сервер-stunnel):

debug = 7
cert = stunnel.pem
options = NO_SSLv2

[vnc] accept = 1443 connect = 5500 TIMEOUTclose = 0

Сохраняем (для этого были нужны права админа). В контекстном меню значка — «Reload stunnel.conf».
4. Если зеленая машина за контролируемым оборудованием в серой сети, настраиваем порт-форвардинг с внешнего 443 порта на серый_адрес_зеленой_машины:1443.
5. В кнопке пуск зеленой машины: Программы->RealVNC->Advanced->StartListeningVNCViewer.
6. Запускаем stunnel на синей машине с правами админа. В трее появляется значек stunnel, в контекстном меню значка — «Edit stunnel.conf». Приводим его в следующий вид:

debug = 7
cert = stunnel.pem
options = NO_SSLv2

[vnc]
Client = yes
accept = 127.0.0.1:5500
connect = белый_адрес_зеленой_машины:443

Сохраняем (для этого были нужны права админа). В контекстном меню значка – «Reload stunnel.conf».

7. В кнопке пуск синей машины: Программы->RealVNC-> VNCServer. Иконка появится в трее; в контекстном меню иконки выбираем «Connect to Listening VNC Viewer».
8. В открывшемся окне пишем адрес 127.0.0.1.
9. Рабочий стол прокинут.

Leave A Comment