Gnome 3.10 для общего доступа к рабочему столу --- как настроить тип безопасности для VNC?

Факты: у меня была конфигурация для совместного использования рабочего стола, которая работала до недавнего обновления рабочего стола Gnome для использования sgnome-shell 3.10. Раньше я подключался к своей машине из Windows с помощью TightVNC, и до вчерашнего дня (2014-19-1) он работал без сбоев.

Теперь происходит сбой подключения со стороны Windows ( полный журнал в pastebin) с этой ошибкой:

ошибка осторожную

Который копает логи это:

[ 5872/ 6448] 2014-01-20 12:11:18:247   List of security type is read
[ 5872/ 6448] 2014-01-20 12:11:18:247 : Security Types received (1): Unknown type (18)
[ 5872/ 6448] 2014-01-20 12:11:18:247   Selecting auth-handler
[ 5872/ 6448] 2014-01-20 12:11:18:247 + RemoteViewerCore. Exception: No security types supported. Server sent security types, but we do not support any of their.

Часть "Совместное использование" настроена так, как следует, как вы можете видеть здесь:

Настройки обмена

Диагноз: Похоже, что обновление изменило тип безопасности на новый, который не был известен провайдером VNC (это происходило в прошлом).

Вопрос: до тех пор, пока TightVNC (и весь остальной мир) не догонит, можно ли настроить внутренний VNC-сервер для использования предыдущего Типа безопасности?

4 ответа

Решение

Реальное решение: теперь я использую SSVNC на машине с Windows и x11vnc на сервере Linux. Работает с BVNC на Android тоже. Вам нужно немного опыта, чтобы заставить его работать, поэтому краткая инструкция здесь:

В Linux (следуйте инструкциям, которые дает вам x11vnc, многословно, но стоит прочитать):

x11vnc -storepasswd
x11vnc -forever -repeat -usepw -ssl -autoport 6000 

(Вы должны будете поместить последний в один из ваших сценариев входа в систему или что-то в этом роде. Не используйте парольную фразу в сгенерированном SSL-сертификате. Я использую порт 6000, чтобы не связываться с vino).

В Windows: установите бинарный клиент отсюда.

Подключайтесь и наслаждайтесь (медленным...) зашифрованным соединением.

Частичный ответ: (опубликовано ради помощи другим людям, НЕ РЕКОМЕНДУЕТСЯ); Я надеюсь, что будут другие ответы на вопрос - я буду отмечать этот ответ как правильный, так как пока нет решения).

Проблема возникла, когда проект Vino решил перейти на требование шифрования по умолчанию - к сожалению, единственный вид шифрования, поддерживаемый vino Сервер (тип 18) не поддерживается большинством средств просмотра Windows, Android и iOS. Насколько я знаю, только на основе Linux vinagre зритель поддерживает это.

Я сообщил об ошибке в проекте Vino, как в апстриме, так и в панели запуска об этой проблеме; посмотрите там для более подробной информации. По сути, кажется, что нет достаточных возможностей разработчика для реализации большего количества типов шифрования на сервере (достаточно справедливо).

Это означает, что вы можете вернуться к предыдущему небезопасному поведению, отключив шифрование для всего уровня VNC с помощью dconf-editor как это:

Нет шифрования для VNC

Большое жирное замечание означает, что все, что вы печатаете, ясно видно в сети. Пароли включены.

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

Команда выключения шифрования UNSAFE на одном лайнере для 16.04

dconf write /org/gnome/desktop/remote-access/require-encryption false

затем TigerVNC и realvnc работают из Windows.

Однако, как отметил Рмано, делать это можно только в том случае, если ваше соединение уже зашифровано на другом уровне.

Найдено сdconf dump,

Существует также запрос совместимости на стороне TigerVNC: https://github.com/TigerVNC/tigervnc/issues/307

Используйте SSH для защиты незашифрованного сеанса VNC...

Отключите неподдерживаемое клиентом требование шифрования по умолчанию.

dconf write /org/gnome/desktop/remote-access/require-encryption false

Отключите прослушивание в интерфейсе по умолчанию, используйте lo(петля)

dconf write /org/gnome/desktop/remote-access/network-interface lo

В Windows есть необходимые команды для создания ключей SSH, копирования идентификатора ssh в учетную запись vnc-tunnel и настройки переадресации порта.

Пример команды переадресации порта SSH

ssh.exe -vvv -L 5900:127.0.0.1:5900 -N -i %USERPROFILE%/.ssh/id_vnc vnc-tunnel@linux.host

Быстро найдите место для редактирования - запустите dconf-editor, введите ctl f - введите 5900 - нажмите enter и отобразится соответствующая область для отключения шифрования. Если в нескольких разделах есть 5900, нажмите "Далее", чтобы найти следующее вхождение.

Другие вопросы по тегам