Комментарии 87
Речь, наверное, всё же о том, что не всегда есть возможность реализовать ваш вариант. Например, клиент — это человек с ноутбуком и USB-модемом где-нибудь в регионе.
От человека не требуется никакой конфигурации, скачать файл и запустить. Так что подобный сценарий использования тоже возможен. На хабре даже была статья рассказывающая об этом решении подробнее.
У Tight нет возможности делать вот такие штуки с ID и посредником. Это действительно удобно, когда клиентов много, потому что сделать проброс на такое количество машин, и правильно настроить "слушателей" может быть очень сложно.
Видимо у ultraVNC с tightVNC разные требования к каналу.
tightVNC комфортно работает на пропадающем в дороге 3G. Иногда приходится даже какое-то простенькое видео подредактировать в premier, и залить в инет находясь при этом в поезде. По ощущениям teamviewer раньше перестаёт работать, чем tightVNC.
Стоимость лицензии на TeamViewer не забыли посмотреть?
Если достаточно активно цепляться к компам, в определенный момент некоммерческое использование начнёт вставлять палки в колёса.
Причём не хилые такие палки в колеса. Teamviewer меньше 2 минут работает раз в 10 минут. Но и за это спасибо им. Хотел купить, да оказалось, что не так и просто это сделать юрлицу, по безналу в Германию оплатить не удалось. Может сейчас что-то изменилось, да уже не хочется, столько глюков с ним.
Teamviewer хватает чтобы быстренько поставить VNC, но я ставлю не ultraVNС, а tightVNC, прекрасно работает, есть клиенты на android и ios.
И у них есть Listening viewer, что позволяет мне относительно легко подключаться к клиентам за nat.
1. Я как-то пробовал сделать удаленный доступ с адроида на линух через тимвьювер и могу сказать ровно то же самое: ТВ — это вам не работать. Ну и, как уже верно заметили выше — ТВ это коммерческое решение с серверами вне вашего контроля. То, что оно дает возможность свободного использования — это их милость а не ваше право, со всем вытекающим. Напомню что был, знаете ли, неплохой сервис хамачи…
2. Что же до статьи то в ней несколько неопределенно для кого именно делался этот доступ. Судя по «нестандартным портам» все же похоже что для некоего круга, определенного заранее. Тогда несколько непонятны претензии к vnc на тему шифрования, длины паролей итд, поскольку это в общем-то не совсем его задача, логичнее было бы поднимать vpn и уже внутри него поднимать удаленный доступ…
Значит надо добрасывать до подсетей, но у нас есть пересекающиеся подсети и это тоже может создавать проблемы.
У меня была похожая проблема, нужно было объединить две сети с пересекающимися адресами. Сначала попробовал шаманить с SNAT, но выглядело это топорно и работало на костылях. В итоге решил поднять IPv6 в локальной сети. Работает на удивление хорошо, почти все программы без труда заработали с IPv6-адресами.
Не говорю, что это идеальное решение для вашего случая, но как вариант советую рассмотреть. Конечно, этот совет большей частью для случаев, когда все машины находятся под личным управлением.
скорость как у VNC в худших его проявлениях, а удобство ммм… не очень.
В общем, мне не понравилось.
А видимо ни на чём не зарабатывают, как пишет автор, сваял на досуге.
Сайт и логотип ему делали дешёвые фрилансеры, судя по гуглу.
Попробовал, работает. Но мне не подходит, так как требуется мультиплатформенность.
Это замечательное чудо:
- Требует в обязательном порядке админских прав в момент запуска
- Прописывает себя в службы
- Иногда (потеря пакета?) в сеансе удаленного управления мышь/клавиатура отваливаются
да, запасной вариант, но уж проще AMMYY скачать (да, хром уже отказывается с оф сайта качать)
а) рвёт соединение при любом запросе UAC (это понятно и терпимо)
б) сходит с ума, если у пользователя два монитора, а тем более, если у них разное разрешение
Тем не менее, тех небольших денег, которые уплачены за ammyy не жалко, в своих рамках это отличное решение (которое работает из под wine без проблем. Иногда это важно).
Правда можно было бы STUN подключение поднимать, но я на тот момент не знал об этом протоколе.
> sudo ./install.sh
Установка в обход менеджера пакетов — ОЧЕНЬ плохая практика.
Как то делал наколеночную автоматизацию VNC с рандомными паролями как у ТВ.
Собственно суть проста: был настроен репитер с публичным доуступом, на стороне хоста .Net-программулька запускала vnc c нужными параметрами (генерила при этом пароль, который и передавала параметром) а по завершению работы сервис vnc прибивался. Выглядело топорно — окно с двумя кнопками и двумя строками — но работало стабильно и эффективно.
деплой хоста занимал не больше чем TVQS, то есть скопировать папочку и вытащить ярлык
У нас используется RealVNC — он запиливается в vpn, и таким образом всё стабильно работает больше 5 лет.
только из первых абзацев я не понял, чего хотел добиться автор. возможности ходить всем офисом на сервер или же вариант удаленного администрирования?
Спасибо за статью!
Если захотите реализовать Single Click, попробуйте noVNC. Это веб-клиент VNC, работает со всеми основными браузерами и не требует доп. плагинов (не считая WebSocket-прокси на сервере).
По-хорошему, в статью нужно добавить информацию о задаче: когда возникает, какие требования, в каких ситуациях актуальна, в каком контексте, какие варианты решения имеются и так далее. Потому что это самый первый вопрос, который появляется в процессе чтения. Лучше, чтобы такая инфа была сразу в тексте, а не где-то кусками в комментариях.
но не уверен, что он поддерживает нотацию для подключения по ID
Ну, по крайней мере соответствующее поле в интерфейсе есть.
Но есть и такой repeater, может быть речь про него.
В конце концов это WebSocket, а значит, его можно аутентифицировать как любой HTTP-запрос. Хотя возможно придется покопаться в коде.
Пока искал информацию про репитеры, нашел две интересные статьи. Настройка TightVNC для работы с repeater и статья про обход NAT.
Hamachi
// рекомендую 1.1 ветку. Она хоть и пре-релизная, но там есть вкусняшки:
1) эллиптическое шифрование,
2) лучший mesh-алгоритм (особенно актуально с Mode=switch)
3) возможность "инвайтов" (когда можно всю конфигурацию забить на сервере в скрипт генерации инвайтов, а потом просто сгенерить простой инвайт (строку), который достаточно будет просто принять на клиенте и на том будет сразу настроена сеть :)
— проблемы с переключением языка
— проблемы с отправкой комбинаций клавиш
— проблемы с передачей файлов
— и много других проблем.
Мы у себя часть решили правкой исходников и перекомпиляцией, часть — настройками. И сейчас работает практически всё как надо. Но доработана всего одна версия (1.2.0.5) и доработки обратно не возвращались.
Кроме того, у UltraVNC нет своей адресной книги, пришлось писать свою, в которой для каждого соединения можно задать любые параметры: скорость, цвета, кодирование, масштаб, и т.д. На медленных каналах тоже неплохо работает.
Гейт для протоколов RDP, VNC, ssh. Клиент — браузер. Нужно поставить и выставить наружу сервер с этой программой по http.
Сервис SystemD (/lib/systemd/system/ИМЯ-СЕРВИСА.service) для запуска SSH-туннеля до удаленной точки (чтобы к машине за NAT можно было подключаться по SSH)
[Unit]
Description=autossh Dina 12.03.2017
After=network-online.target ssh.service
# Original: https://gist.github.com/thomasfr/9707568 http://rus-linux.net/MyLDP/sec/reverse-SSH-tunnel.html
[Service]
User=user
ExecStart=/usr/bin/autossh -M 7474 -N -R 8877:localhost:2323 username@remoteserver.ru -p 5656 -XCY
[Install]
WantedBy=multi-user.target
7474 — порт для мониторинга autossh, открывается на удаленной точке, 8877 — порт, на котором на уделенной точке будет висеть SSH доступ к нашей системе, 2323 — порт SSH на локальной системе, 5656 — порт SSH на удаленной точке.
Удаленная точка — нечто с линуксом не за NAT, тогда по SSH подключаемся сначала к ней, а с нее по SSH к нашей подопытной системе.
«В разделе Authentication выставляем два пароля. Пароли должны быть одинаковыми» — когда устанавливаешь одинаковые пароли, при подключении сервер работает в режиме просмотра, а режим управления недоступен.
Это действителньо то, что вам нужно? Мы используем VNC для управления компьютерами.
2. Уточнение.
«А так как MAC-адреса и так уникальны, то почти гарантированно получаем уникальный номер с достаточно низкой вероятностью коллизии.»
Сами себе противоречите. Либо уникальны, либо «почти гарантированно уникальный». В действительности адреса MAC должны быть уникальны по стандарту, но на практике стандарт не всегда соблюдается. А ещё существуют программы, заменяющие MAC, и MAC можно подменить средствами (драйвера) ОС.
Я бы сделал генератор уникального ID на вебстраничке с записью этого ID с базу данных. Самый простой вариант — форма в гуглодоках.
3. Зря не рассматриваете VPN. Мы устанавливаем сервер VPN у обслуживаемого клиента, в результате клиент получает практически круглосуточное дистанционное обслуживание, которое для нас обходится по очень низкой себестоимости — по срочному вопросу инженер может подключиться хоть с планшета, гуляя в парке :), дополнительно клиент получает возможность дистанционной работы своих сотрудников. Технология — OpenVPN на сертификатах плюс списки доступа в блокчейне — утечка закрытого ключа опасна до момента обнаружения утечки, ключ блокируется простым удалением (точнее, заменой) записи, сервер VPN получает изменение автоматически.
4. Сам подключаюсь с GNU/Linux к UltraVNC на компьютерах с Windows из программы Remmina, в ней вполне удобная адресная книга внутреннего формата. Конечно, передача файлов не работает, но, поскольку использую VPN, это не мешает.
2. Противоречия нет. MAC-адрес, если мы, конечно, не китайцы и не занимаемся всякими грязными трюками вроде подмены MAC является уникальным. Но в то же время функция, которая преобразует MAC в число схлопывает его до 9-значного номера, которых всего 1 миллиард. То есть есть вероятность, что найдутся 2 MAC, которые дадут одинаковое число на выходе. Но с учетом количества машин которые мы подключаем, этот вопрос непринципиален. Да, можно и свой генератор с хранением номеров, ктож спорит, просто его делать дольше, чем намахать такой мини-скрипт. С другой стороны я ничем никого не ограничиваю. =)
3. У меня есть VPN до клиентов, но он не решает вопроса доступа к каждой машине. Или надо каждый компьютер подключать к нашему VPN, что не очень рационально. Плюс есть пересекающиеся подсети, что создает проблемы при маршрутизации. Плюс клиенты иногда просят помощи на рабочих местах, которые стоят за пределами офиса. Мне показалось, что такое решение будет рациональнее.
4. На этот комментарий нет особого смысла отвечать. Я рад за товарища и сам использую Remmina, но техподдержка сидит на Windows. где Remmina нет, потому вопрос адресной книги там актуален.
но почему то на предложение самим этим пользоваться морщили нос.
Смотря с какой позиции лучше. Про VPN много сказано ранее, удаленный помощник тоже непросто настроить да и подтверждений он требует прилично.
Для установления канала между клиентом и сервером он использует ssh со всеми его плюшками типа ProxyCommand, что позволяет проходить через NAT.
А такой вопрос.
Что с «не обычными» окнами? Это такие окна как примеру у файрфокса с правой стороны меню (так же окно авиры, которое по правой клавише в трее). Оно как бы есть для пользователя по TightVNC его не отображает.
Или это только косяк TightVNC? Тогда может кто знает что с ним делать?
UltraVNC как замена TeamViewer