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

Я всегда хотел, чтобы X11 Forwarding работал с PuTTY, а система X Window, которую я использую, это 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 работать в целом?

5 ответов

Решение

Скопировано с: http://www.math.umn.edu/systems_guide/putty_xwin32.html

Настройка Putty

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

img src = 'putty_xwin32 / default_putty_rev-sm.png

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

img src = 'putty_xwin32 / xfwd_putty_rev-sm.png

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

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

Настройка Xming

Просто запустите "Все программы> Xming Xming", и оно должно работать, если у вас настроен PuTTY.

соединительный

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

img src = 'putty_xwin32 / session_putty_rev-sm.png

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

РЕДАКТИРОВАТЬ: исправить wrong authentication protocol attempted ошибка, попробуйте включить "ForwardX11Trusted yes" в файле /etc/ssh/sshd_config, а затем перезапустите сервер OpenSSH.

У меня было 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 и запишите в него местоположение (выберите его и нажмите CTRL+C, чтобы поместить его в буфер обмена).

Запустите PuTTY, как в примере выше (скопировано с http://www.math.umn.edu/systems_guide/putty_xwin32.html)

На странице "Параметры, управляющие пересылкой по SSH X11" необходимо установить флажок "Включить пересылку по X11" и установить в качестве протокола "MIT-Magic-Cookie-1".
В поле "X файл авторизации для локального отображения" нажмите кнопку "Обзор" и, используя "Местоположение" для файла.Xauthority, который вы записали ранее, найдите файл.Xauthority. Нажмите Открыть, чтобы заполнить поле, затем вернитесь в Сеанс (в конфигурации PuTTY) и сохраните сеанс. Затем вы можете нажать кнопку Открыть.

Теперь он должен позволить вам подключиться.

Мои действия с использованием DISPLAY 20 (поскольку значение по умолчанию уже может быть использовано)

В Windows,

      C:\Program Files (x86)\Xming>xming :20 -ac

В Putty создайте обратную переадресацию портов, например 6020 на удаленном компьютере, на тот же порт в локальных окнах:

На стороне Unix:

      export DISPLAY=:20
<your visual app>

Вы можете

xauth list

затем

xauth add <your display>

Решение Круга сработало для меня с несколькими дополнительными шагами, как указано ниже.

Когда я входил в систему сec2-userа затем переключился на пользователя. Убедитесь, что.Xauthorityфайл копируется вoracleдом пользователя.

      cp /home/ec2-user/.Xauthority /home/oracle/

Как я проверял? я установил

      yum install xclock

Потом я побежалxclock(Подождите несколько секунд, если появится небольшое всплывающее окно с аналоговыми часами, все хорошо)

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