Как заставить 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
- Введите имя сеанса в сохраненных сеансах
- Нажмите "Сохранить"
- Разверните вкладку "SSH" из списка "Категория"
- Выберите "X11" из списка "SSH"
- Установите флажок "Включить пересылку X11"
- Выберите "Сессия" из списка "Категория"
- Нажмите "Сохранить"
Запуск X-сервера в Windows
Настройка Xming
Просто запустите "Все программы> Xming Xming", и оно должно работать, если у вас настроен PuTTY.
соединительный
- Начать Xming
- Start Putty
- Дважды щелкните по сохраненной сессии, которую вы хотите
- Введите имя пользователя и пароль в соответствии с запросом
- Теперь вы сможете запускать 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>
Решение Круга сработало для меня с несколькими дополнительными шагами, как указано ниже.
Когда я входил в систему сec2-user
а затем переключился на пользователя. Убедитесь, что.Xauthority
файл копируется вoracle
дом пользователя.
cp /home/ec2-user/.Xauthority /home/oracle/
Как я проверял? я установил
yum install xclock
Потом я побежалxclock
(Подождите несколько секунд, если появится небольшое всплывающее окно с аналоговыми часами, все хорошо)
xclock