Проброс X-соединения через SSH
Saturday, 07 May 2011Как я описывал в предыдущих терзаниях по поводу настройки X-соединения с Windows машины к CentOS серверу, Xdmcp не является безопасным, в связи с чем его использование довольно ограничено использованием в открытых сетях, в связи с чем приходится изыскивать другие пути общения со своим удаленным сервером через X-соединение.
Но X-терминальное соединение, можно инкапсулировать в протокол ssl, путем проброса соединения к клиентской части X-терминала, через протокол сеансового уровня SSH. Для этого ранее использовалась бесплатная программа putty, позволяющая устанавливать ssh соединение с удаленными машинами, а ноне данный клиент включен в поставку Xming сервера. Для чего при установке севера Xming на нашей клиентской Windows машине, в разделе выбора компонентов, выберем пункт Normal Putty Link SSH client. После установки произведем настройку нашего Unix-сервера под управление CentOS:
Настроиваем логин: K Menu -> System -> Login Screen
Во вкладке Remote, меню Style выставляем Same as Local
Во вкладке Security, ставим галку Allow local system administrator login
После этого запускаем сервер Xming на стороне виндовой машины и настраиваем подключение, запустив программу XLaunch:
Multiple Window -> Start a program -> в Run Remote выбираем Using PuTTY и прописываем логин информацию к CentOS серверу через SSH -> Additional parametrs можем оставить пустыми, либо прописать свойства терминала Х и ssh соединения -> Готово
После нажатия Готово к нам вылетит окно стандартного текстового терминала юниксового сервера xterm, в котором мы можем запускать любые приложения, также как и в окне ssh сессии, с тем условием, что в случае запуска гуевых приложений, предназначенных для работы в X-окружении, в ssh сессии мы бы получили сообщение об ошибке, а в данном случае это приложение будет запущено на нашем виндовом рабочем столе. Для этого набираем любое юниксовое приложение:
# xeyes &
или
# blackjack &
Амперсенд нужен для того чтобы приложение запускалось в фоновом режиме и не вылетало когда мы снова начинаем работать в терминальной сессии.
Благодаря этому способу можно например поиграться на винде, в несвойственные ей игрушки, вроде маджонга или блэкджека. Но при работе естественно следует помнить, что такой вариант работы является одним из нестабильных и находящихся в прямой зависимости от установленного соединения, ибо при любом обрыве связи или затыке, все наши приложения радостно вылетят, посему подобной схемой рекомендовано пользоваться все таки в пределах собственной локальной сети, для упрощения администрирования удаленных серверов, находящихся в соседней комнате, или другом этаже.
В процессе настройки в какой то момент в логах появилось неприятное сообщение о том, что пакеты дропаются стороной CentOS сервера, что вылечилось добавлением в файл X-сервера Xming виндусовой машины C:\Program Files\Xming\X0.hosts строчки, содержащей IP адрес нашего CentOS сервера. Но это скорее исключение из правил, ибо все работает и без этого.