Как я могу включить доверенную переадресацию X11 в Putty (с Xming) или избавиться от одной секунды задержки при запуске X11 приложения?

Вопрос или проблема

Я заметил задержку в одну секунду перед запуском Midnight Commander или mcedit в Putty. У меня ушло время, прежде чем я понял, что это вызвано включенной пересылкой X11. mc -X запускается сразу.

К сожалению, запуск любого X11 приложения имеет такую же задержку. Может быть, я придираюсь, но это сводит меня с ума. Особенно потому, что некоторые пользователи упомянули причину и решение: xming не поддерживает безопасность X11, поэтому Linux должен ждать времени ожидания сети. У меня это занимает секунду, а у других – 30 секунд, согласно некоторым обсуждениям.

Решение – это доверенная пересылка X11, включенная с помощью параметра командной строки -Y для ssh. К сожалению, в Putty этого параметра нет. Есть ли какой-то другой способ включить доверенную пересылку в Putty?

Опция -Y или ForwardX11Trusted для клиента ssh отключает контроль доступа для удаленных X клиентов. Putty не предлагает это, но Xming, запущенный с -ac, также отключает контроль доступа.

Эта страница с советами по Xming описывает 2 способа отключения контроля доступа при запуске Xming: использование параметра -ac или модификация файла.

Стало ли лучше после перезапуска Xming с отключенным контролем доступа?

—-


Этот первый ответ оставлен для справки.

-C может замедлить связь в быстрой сети (смотрите страницу руководства ssh), поэтому я думаю, что это не поможет в вашей ситуации.

putty 0.67 имеет как -X (включает пересылку X11 в SSH), так и -C (включает сжатие), см. 3.8.3 Стандартные параметры командной строки в документации.

Сжатие улучшает производительность при использовании с ssh.
Следующая команда была протестирована с удаленным сервером:

PUTTY.EXE -X -C -ssh 10.0.0.2

Сообщите мне, стало ли лучше с обеими опциями -X и -C в вашей среде?

PuTTY достаточно безопасен с пересылкой X11. Обратите внимание, что может потребоваться установить xauth на вашем Linux. После входа в систему по SSH проверьте, определена ли переменная DISPLAY автоматически. Ее значение должно быть localhost:… или что-то подобное. Если нет, вам следует изменить конфигурацию на IPv4 только в вашем /etc/ssh/sshd_config, перезапустить службу ssh и попробовать снова.

Ответ или решение

Чтобы включить доверенную пересылку X11 через PuTTY с использованием Xming и устранить задержку в одну секунду при запуске X11 приложений, важно учитывать несколько ключевых аспектов и шагов. Ниже приведён исчерпывающий ответ, который поможет решить проблему.

1. Основные причины задержки

При использовании X11 пересылки в PuTTY с Xming вы можете заметить задержку перед запуском графических приложений, таких как Midnight Commander или mcedit. Как упоминалось, это связано с тем, что Xming по умолчанию использует механизмы контроля доступа, которые могут вызывать таймауты из-за отсутствия ответов от удалённого X11 сервера.

2. Включение доверенной пересылки X11

Хотя параметр -Y (доверенная пересылка) не поддерживается напрямую в PuTTY, есть обходные пути для достижения аналогичного результата.

Шаги для настройки:

  1. Запуск Xming с отключённым контролем доступа:

    Вам необходимо запустить Xming с параметром -ac, который отключает контроль доступа для удалённых X-клиентов. Для этого:

    • Откройте командную строку (cmd) и выполните следующую команду:
      Xming -ac
    • Этот параметр позволяет всем клиентам подключаться без необходимости их предварительной авторизации, что с устранит задержку.
  2. Настройка PuTTY:

    • Откройте PuTTY и перейдите в раздел Connection > SSH > X11.
    • Убедитесь, что флажок Enable X11 forwarding установлен.
    • Перейдите в Session и сохраните настройки.
  3. Проверка установки xauth:

    Убедитесь, что на удалённом сервере установлен пакет xauth, который требуется для управления авторизацией X11. Вы можете проверить его наличие с помощью команды:

    dpkg -l | grep xauth

    Если его нет, установите его:

    sudo apt install xauth

3. Проверка переменной окружения DISPLAY

После установки соединения проверьте, правильно ли установлена переменная окружения DISPLAY на удалённом сервере. Это можно сделать с помощью команды:

echo $DISPLAY

Если значение переменной не начинается с localhost, то вам может понадобиться изменить настройки в файле /etc/ssh/sshd_config, добавив или изменив строку на:

X11UseLocalhost no

После внесения изменений перезапустите SSH сервис:

sudo systemctl restart sshd

4. Дополнительные рекомендации

  • Использование опции -C для сжатия данных (Connection > SSH в PuTTY) также может улучшить производительность.
  • Можно проверить, как работает комбинированное использование -X и -C, особенно если у вас высокая пропускная способность.

Заключение

Следуя вышеуказанным шагам, вы сможете устранить задержку при запуске X11 приложений через PuTTY и Xming. Выполнение этих действий поможет создать более плавный и комфортный опыт работы с графическими программами на вашем удалённом сервере. Если после всех изменений задержка сохраняется, рассмотрите возможность использования других методов подключения, таких как VNC или RDP, которые могут быть более оптимальными для работы с графикой.

Оцените материал
Добавить комментарий

Капча загружается...