Отказ в подключении к X при SSH-подключении из MacOS

When I try to connect from another device, using the local IP address of the Apache server, I get error messages in the browser, such as: in Firefox on a Mac, I get 'Unable to connect. Firefox can't establish a connection to the server at localhost.'. If I try to connect using the DuckDuckGo browser on an Android phone, I get 'Webpage not available. The webpage at http://localhost/ could not be loaded because: net::ERR_CONNECTION_REFUSED'.

Если вы используете localhost в качестве имени хоста с других машин, они пытаются соединиться сами с собой... На других машинах вы должны использовать фактический адрес вашего сервера. Так

  • на вашем сервере выполните:ip address showэто перечислит все ваши сетевые интерфейсы и адреса(inetстроки, которые выглядят как:inet 192.168.0.44/24 brd 192.168.0.255 scope global dynamic enp0s31f6). Игнорируйте интерфейс lo(, который находится по адресу 127.0.0.1 ), и используйте интерфейс enp*или wlp*. Они, вероятно, будут иметь адрес, начинающийся с192.168...
  • используйте адрес из строки inetна вашем Mac/или Android:http://192.168.0.44/

Использование адреса напрямую имеет два неудобства:

  1. может измениться (хотя обычно, если адресов больше, чем компьютеров, компьютерам переназначаются одни и те же адреса)
  2. На самом деле это не мнемоника.

На Mac вы, скорее всего, сможете решить проблему #2, добавив имя и адрес вашего сервера в файл /etc/hosts(или его эквивалент в OSX ). Это может быть невыполнимо на Android.

Для #1, если вам очень повезло, все ваши устройства поддерживают разрешение имен NETBIOS, и вы можете использовать их имена NETBIOS (, обычно их имя хоста ).

0
13.11.2020, 00:53
2 ответа

Macbook не может отображать окна приложений X11, если не установлено программное обеспечение XQuartz . Раньше он поставлялся со старыми версиями MacOS X; теперь это отдельный программный пакет.

После установки XQuartz он должен запускаться автоматически всякий раз, когда вы пытаетесь запустить программу с графическим интерфейсом X11 :в вашем примере, когда вы установили соединение ssh -Xи выполнили команду geditв удаленной системе., значок XQuartz должен автоматически появиться в Dock, а затем должно появиться окно gedit.

1
18.03.2021, 22:50

Из виртуальной машины Ubuntu отредактируйте файл конфигурации/etc/ssh/sshd_config

Затем установитеX11Forwarding yes

Наконец, перезапустите демон SSH.

0
18.03.2021, 22:50

Теги

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