3

Я пытаюсь подключиться с моего Mac (Xquartz установлен) к серверу Ubuntu. Я использую опцию -Y с ssh. Когда я ssh на сервер и запускаю любое графическое приложение, например, xclock, я получаю следующую ошибку

$xclock
Could not find ':' in DISPLAY: 1
Error: Can't open display: localhost:10.0

Переадресация X11 установлена в sshd_config

$ grep -i X11Forward /etc/ssh/sshd_config
# Setting X11Forwarding to "yes" permits encrypted X connections.
X11Forwarding yes

а также,

$ echo $DISPLAY
localhost:10.0

Может ли кто-нибудь помочь мне в этом отношении.

1 ответ1

3

Я дам здесь общий ответ, потому что другие люди могут пытаться настроить переадресацию X на Mac здесь. Я думаю, что в вашем конкретном случае, попробуйте запустить ssh из XQuarts вместо того, чтобы запускать его из терминала. Также убедитесь, что у вас установлен XForwarding на стороне сервера и перезапустите sshd после его настройки.

Предварительные требования для запуска приложений X на OS-X:

  • Вам необходимо установить XQuartz на стороне клиента (проверьте, работает ли он для вашей учетной записи, запустив XQuarts и запустив локальный терминал)
  • Вам нужно разрешить XForwarding на вашем сервере. Установите параметр X11Forwarding (чаще всего находится в /etc/ssh/sshd_config): X11Forwarding yes (не забудьте перезапустить сервер ssh после редактирования файла sshd_config).
  • Ваш sshd-сервер должен работать на стороне сервера.
  • Ваш брандмауэр (на обоих концах) должен пропускать трафик через порт 22.

Запуск X по ssh:

  1. Запустите терминал XQuartz, запустив XQuartz и нажав +n
  2. В терминале введите: ssh -X [username]@[servername] (вы также можете использовать -Y вместо -X)
  3. Вы должны войти на свой сервер. Попробуйте, например, xeyes чтобы X оглянулся на вас.

Поиск проблемы:

  • "Отказано в соединении": проверьте настройки брандмауэра (на обоих концах) и проверьте, работает ли сервер ssh (sshd) на принимающей стороне.
  • Ошибки $ DISPLAY: ssh должен позаботиться об установке переменной $ DISPLAY. Если вы используете XQuartz, это означает, что (по той или иной причине) ssh не смог настроить сеанс Xforwarded. Проверьте любые ошибки в ваших файлах журнала (особенно на стороне сервера) и попробуйте ssh с подробным выводом -v или даже -vv или -vvv и найдите подсказки). Не вскрывайте с установкой себя $ DISPLAY, потому что эффект SSH не в состоянии установить туннель, а не причина.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .