Резюме
Я могу подключиться по SSH к удаленной коробке Linux из моего macbook, когда я нахожусь на виртуальной машине Ubuntu на этом macbook, но не из OSX. Я ищу руководство о том, как заставить OSX работать с пересылкой X11, и подозреваю, что это проблема OSX Mavericks. Раньше я работал над Mountain Lion до того, как я обновился, поэтому я думаю, что пропустил шаг.
Обратите внимание, что это не X11/XQuartz не будет автоматически запускаться после обновления до OS X Mavericks? как я делал формат и чистую установку Маверикс
X11 SERVER - Ubuntu Desktop
# This is the /etc/ssh/sshd_config file, trimmed down
# Relevant lines:
X11Forwarding yes
X11UseLocalhost yes
X11DisplayOffset 10
# Maybe relevant:
RSAAuthentication no
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys
PasswordAuthentication yes # I didn't want to copy the rsa key into ubuntu VM so I accessed the server by password authentication rather than by rsa key.
TCPKeepAlive yes
Я могу ssh в эту машину без проблем.
X11 CLIENT - OSX Mavericks (не работает)
Я установил XQuartz 2.7.5, не уверен, какая версия у меня была на OSX Mountain Lion.
# edited /etc/ssh_config to prevent timeout issues
ForwardX11Timeout 596h
В файле .ssh/config у меня есть
Host remotegossamer
User joe
port 22
Hostname 55.55.55.55 # (edited.. I use no-ip as I have a dynamic ip)
ForwardX11 yes
ForwardX11Trusted yes # This gets rid of the warning: "Warning: untrusted X11 forwarding setup failed: xauth key data not generated"
Когда я ssh в я получаю предупреждение
> ssh remotegossamer
Warning: No xauth data; using fake authentication data for X11 forwarding.
Welcome to Ubuntu 13.10 (GNU/Linux 3.11.0-15-generic x86_64)
...
Когда я пытаюсь открыть окно X11, происходит сбой
joe@gossammer:~$ firefox&
[1] 12195
joe@gossammer:~$ connect 127.0.0.1 port 6010: Connection refused
(process:12195): GLib-CRITICAL **: g_slice_set_config: assertion 'sys_page_size == 0' failed
connect 127.0.0.1 port 6010: Connection refused
connect 127.0.0.1 port 6010: Connection refused
Error: cannot open display: localhost:10.0
^C
[1]+ Exit 1 firefox
Glib-CRITICAL - это ошибка в Firefox, которая присутствует как для клиентов Ubuntu, так и для OSX, это проблема сервера и может быть проигнорирована.
Результатом echo $DISPLAY
будет либо localhost:10.0
либо localhost:11.0
зависимости от того, первый или второй я использую ssh с текущей машиной. Отключение обеих машин и включение в обратном порядке не имеет никакого эффекта; Клиент Ubuntu успешно с 10 и 11, OSX не с обоими.
Я прочитал об этом, и порт 6010 является правильным, поскольку он начинается с порта 6000 и отсчитывает с шагом 10, как упомянуто в sshd_config сервера.
Так что я озадачен тем, почему OSX не подключается ...
Я должен отметить, что когда я использовал ssh из Mountain Lion, приложение XQuartz запускалось, а теперь нет.
X11 CLIENT - Ubuntu Desktop (в виртуальной машине на OSX Mavericks)
Чтобы настроить виртуальную машину Ubuntu для SSH на сервер:
# I edited the /etc/ssh/ssh_config to have:
Host *
ForwardAgent yes
ForwardX11 yes
ForwardX11Trusted yes
Тогда я ssh'd с:
ssh -Y joe@55.55.55.55
и не получил никаких предупреждений. Затем я сделал:
> firefox&
И он открылся в X11, отлично, так что проблема с OSX / способ, которым я настроил OSX
Так что
Я что-то упустил при настройке X11 на OSX Mavericks?