2013-05-04 06:02:20 +0000 2013-05-04 06:02:20 +0000
16
16

Как заставить X11 Forwarding работать на Windows с PuTTY и Xming?

Я всегда хотел получить X11 Forwarding для работы с PuTTY, а X Window System, которую я использую, это Xming. Когда я запускаю Xming и устанавливаю новое соединение с моим сервером, я получаю следующее после команды:

$ firefox
PuTTY X11 proxy: wrong authentication protocol attemptedPuTTY X11 proxy: wrong authentication protocol attemptedError: cannot open display: localhost:10.168

$ google-chrome
PuTTY X11 proxy: wrong authentication protocol attempted
(google-chrome:7083): Gtk-WARNING **: cannot open display: localhost:10.168

$ gedit
PuTTY X11 proxy: wrong authentication protocol attempted
**(gedit:6990): WARNING**: Could not open X display
PuTTY X11 proxy: wrong authentication protocol attemptedCannot open display:
Run 'gedit --help' to see a full list of available command line options.

$ gnome-system-monitor
PuTTY X11 proxy: wrong authentication protocol attempted
**(gnome-system-monitor:7024): WARNING**: Could not open X display
PuTTY X11 proxy: wrong authentication protocol attempted
(gnome-system-monitor:7024): Gtk-WARNING **: cannot open display: localhost:10.168

Как исправить эти ошибки и заставить X11 Переадресация работать в целом?

Ответы (2)

16
16
16
2015-06-01 13:27:12 +0000

У меня было 2 проблемы, и я обнаружил, что этот вопрос имеет самые близкие к моим проблемы, так что подумал, что мое решение будет полезным для других, кто придет сюда, пытаясь решить ту же самую проблему, что и я. В моей системе есть Cygwin/X (xinit 1.3.4-5) и PuTTY (0.64). Мне удалось докопаться до сути, установив оба –listen tcp на локальном startxbin и передав путь к .Xauthority на putty.

Во-первых, в связи с “PuTTY X11 proxy: не удалось подключиться к переадресованному X-серверу: Ошибка сети: Ошибка "Соединение отказано”, необходимо заставить X-сессию прослушивать соединения: Откройте cygwin терминал и отредактируйте /usr/bin/startxwin найдите строку….

defaultserverargs="-multiwindow"

и поменяйте его на…

defaultserverargs="-multiwindow -listen tcp"

Во-вторых, в ответ на ошибку “Авторизация нужна, но протокол авторизации не указан”, вам нужно заставить шпаклевку использовать правильные маркеры xauth (что-то странное происходит внутри шпаклевки, так что xauth list локально не дает маркеров, которые переадресованное соединение может использовать, передавая их в xauth add <token>, они, кажется, должны быть установлены PuTTY при соединении, чтобы они работали).
Найдите путь, в домене windows, где находится ваш файл ~/.Xauthority, запустив (снова в терминале cygwin)

cd ~
explorer .

Проверьте свойства файла .Xauthority и запишите в него Location (выберите его и нажмите CTRL+C, чтобы поместить в буфер обмена).

Запустить PuTTY, как в примере выше (скопировано из COPY4_guide/putty_xwin32.html )

На странице ‘Options control SSH X11 forwarding’ необходимо установить галочку ‘Enable X11 forwarding’, а в качестве протокола установить ‘MIT-Magic-Cookie-1’.
В поле ‘X authority file for local display’ (Файл полномочий X для локального отображения) щелкните Browse (Обзор) и с помощью Location (Местоположение) к файлу .Xauthority (Полученные ранее полные .Xauthority) найдите файл .Xauthority (Полученные ранее полные .Xauthority). Щелкните Open для заполнения поля, затем вернитесь к сеансу (в конфигурации PuTTY) и сохраните сеанс. Затем щелкните Open.

Теперь должно быть разрешено подключение.

9
9
9
2013-05-06 18:23:38 +0000

Скопировано с: _COPY4_guide/putty_xwin32. html

Configuring Putty

  • Добавить имя хоста Unix
  • Переключить протокол на SSH
  • Введите имя сессии в сохраненных сессиях
  • Нажмите ‘Сохранить’

  • Расширьте вкладку ‘SSH’ в списке ‘Категория’
  • Выберите ‘X11’ из списка ‘SSH’
  • Установите флажок ‘Включить пересылку X11’

  • Выберите ‘Сессия’ из списка ‘Категория’
  • Нажмите ‘Сохранить’

Запуск X-сервера в Windows

Настройка Xming

Просто запустите “All Programs > Xming Xming”, и он должен работать, если у вас настроена PuTTY.

Подключение

  • Запустить Xming
  • Запустить Putty
  • Дважды щелкните по сохраненной сессии, которую вы хотите

  • Введите имя пользователя и пароль по запросу

  • Теперь вы должны иметь возможность запускать X-приложения с хоста на вашем локальном рабочем столе

EDIT: Чтобы исправить ошибку wrong authentication protocol attempted, попробуйте включить “ForwardX11Trusted yes” в файле /etc/ssh/sshd_config, а затем перезапустить сервер OpenSSH.

Похожие вопросы

16
7
4
3
5