User Tools

Site Tools


teamviewer_из_подручных_материалов

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
teamviewer_из_подручных_материалов [2022/12/27 12:38]
val
teamviewer_из_подручных_материалов [2023/01/21 15:34] (current)
val
Line 1: Line 1:
 ====== TeamViewer из подручных материалов ====== ====== TeamViewer из подручных материалов ======
 +
 +  * [[https://​habr.com/​ru/​post/​709218/​]]
 +  * [[https://​youtu.be/​BWU1_NQZgi4|SSH-туннели,​ корпоративный TeamViewer и одноразовые пароли]]
  
 Всем привет! Всем привет!
  
-Сегодня хочу рассказать о двух случайно обнаруженных "​фичах"​ известных протоколов,​ которые позволили сложиться пазлуиз темы статьи.+Сегодня хочу рассказать о двух случайно обнаруженных "​фичах"​ известных протоколов,​ которые позволили сложиться ​"пазлу" ​из темы статьи.
  
 И так, у **сотрудника** техподдержки есть необходимость подключаться к рабочему столу **пользователя**,​ что бы совместно что-то сделать. Раз нет TeamViewer, значить надо использовать что-то похожее,​ например [[https://​ru.wikipedia.org/​wiki/​Virtual_Network_Computing|VNC]]. Тут же "​выплывают"​ проблемы: ​ И так, у **сотрудника** техподдержки есть необходимость подключаться к рабочему столу **пользователя**,​ что бы совместно что-то сделать. Раз нет TeamViewer, значить надо использовать что-то похожее,​ например [[https://​ru.wikipedia.org/​wiki/​Virtual_Network_Computing|VNC]]. Тут же "​выплывают"​ проблемы: ​
Line 10: Line 13:
   - пользователю нужно не только заранее установить VNC Server на свой компьютер,​ но и задать (и не забыть:​) пароль от него, что бы сообщить его, когда понадобится,​ сотруднику   - пользователю нужно не только заранее установить VNC Server на свой компьютер,​ но и задать (и не забыть:​) пароль от него, что бы сообщить его, когда понадобится,​ сотруднику
  
-Эти проблемы решает первая "​фича"​оказалось,​ что VNC позволяет организовывать подключение "​наоборот",​ не с клиента на сервер,​ а с сервера на клиент. В системе Windows пользователь может установить,​ например,​ пакет [[https://​www.tightvnc.com/​|TightVNC]] оставляя все опции, кроме лицензионного соглашения, "по умолчанию",​ и, не меняя и не выясняя случайно сгенерированный пароль,​ который теперь никому не понадобится+Эти проблемы решает первая "​фича" ​оказалось,​ что VNC позволяет организовать подключение "​наоборот",​ не с клиента на сервер,​ а с сервера на клиент. В системе Windows пользователь может установить,​ например,​ пакет [[https://​www.tightvnc.com/​|TightVNC]] оставляя все опции, "по умолчанию",​ и, не меняя и не выясняя случайно сгенерированный пароль,​ который теперь никому не понадобится:
  
-Здесь можно представить картинку:​)+img1.jpg
  
-Аналогично пакет нужно будет установить сотруднику техподдержки,​ серверная часть ему не нужна, можно убрать ее из автозагрузки,​ а понадобится TightVNC Viewer запущенный в Listening mode+Этот же пакет нужно будет установить сотруднику техподдержки,​ серверная часть ему не нужна, можно убрать ее из автозагрузки,​ а понадобится TightVNC Viewer запущенный в Listening mode
  
-Здесь можно представить картинку:​)+img2.jpg
  
-Если пользователи и/​или ​сотрудники работают в Linux, то аналогичной функциональностью обладает пакет x11vnc ​(https://​github.com/​LibVNC/​x11vnc/​blob/​master/​README), который в debian ориентированных дистрибутивах может быть установлен командой+Теперь,​ по просьбе сотрудника техподдержки, ​пользователю будет достаточно выбрать меню Attach Listening Viewer 
 + 
 +img3.jpg 
 + 
 +указать "​ip_адрес_компьютера_сотрудника_техподдержки"​ и нажать на кнопку "​Attach"​ 
 + 
 +img4.jpg 
 + 
 +Если пользователи работают в Linux, то необходимой функциональностью обладает пакет x11vnc, который в debian ориентированных дистрибутивах может быть установлен командой:
  
 $ sudo apt install x11vnc $ sudo apt install x11vnc
 +
 +Для предоставления своего рабочего стола сотруднику техподдержки пользователю будет достаточно набрать в терминале:​
 +
 +$ x11vnc -connect ip_адрес_компьютера_сотрудника_техподдержки
 +
 +Если и сотрудник техподдержки работает в Linux, он может установить пакет tigervnc-viewer
 +
 +$ sudo apt install tigervnc-viewer
 +
 +и, перед оказанием помощи пользователю,​ запустить в терминале команду:​
 +
 +$ vncviewer -listen
 +
 +СТОП! Как это "​ip_адрес_компьютера_сотрудника_техподдержки"?​ А если (даже наверняка) это такой же "​серый"​ адрес в локальной сети за роутером,​ как и у пользователя?​
 +
 +Эту проблему решает вторая "​фича"​ - оказалось что сервис SSH не только позволяет,​ благодаря опции GatewayPorts yes, установить подключение с компьютера сотрудника к SSH серверу и назначить внешний TCP порт для встречных соединений,​ которые можно "​направить"​ в VNC viewer, но и сгенерировать этот номер динамически.
 +
 +Команда будет выглядеть вот так (обратите внимание на 0, там где указывается номер внешнего порта):​
 +
 +ssh -R 0:​localhost:​5500 логин_сотрудника_техподдержки@ip_адрес_ssh_сервера
 +
 +И, да, VNC viewer, в режиме listen, ожидает,​ по умолчанию,​ подключения на порту 5500, и теперь его можно ограничить только интерфейсом localhost
 +
 +Теперь,​ если "​ip_адрес_ssh_сервера"​ публичный,​ пользователи смогут предоставить свой рабочий стол, указав вместо "​ip_адреса_компьютера_сотрудника_техподдержки"​ - "​ip_адрес_ssh_сервера:​сгенерированный_номер_порта" ​
 +
 +Некоторой проблемой оказалось "​выяснение"​ назначенного динамического порта, дело в том что в Linux терминале строка
 +
 +Allocated port NNNNN for remote forward to localhost:​5500
 +
 +прекрасно отображается,​ и сотрудник техподдержки может продиктовать его пользователю,​ но в Windows, не все SSH клиенты (например PuTTY) это делают,​ тут могу посоветовать MobaXTerm в нем все как в Linux
 +
 +В завершении статьи остается только посочувствовать пользователям,​ которм вместо "​каликанья"​ по "​иконке"​ и сообщения оператору номера подключения в TeamViewer приходится запускать "​страшные"​ программы с непонятными адресами,​ но мы на работе "​боремся"​ с этим создав bat файл для пользователей Windows и используя Ansible для рабочих станций Linux, после которых на рабочем столе пользователя тоже появляется "​иконка",​ по которой можно "​кликнуть"​ и ввести там 5 цифр, названных сотрудником техподдержки. Если статья вызовет интерес,​ можно будет написать продолжение на эту тему.
 +
 +Еще, из "​нехорошего",​ трафик между пользовательским VNC и ssh сервером "​летит"​ нешифрованный,​ тоже в планах поправить в будущем.
 +
 +Так же, вероятно что MeshCentral или RustDesk окажутся более удобными решениями для тех, кто ищет альтернативу TeamViewer, буду рад почитать статьи на эту тему.
 +
 +На этом все, всех с Наступающим,​ всех благ!
  
  
teamviewer_из_подручных_материалов.1672133906.txt.gz · Last modified: 2022/12/27 12:38 by val