Загрузка...

27.03.2011

RX@Etersoft (ex. NX) Новые сведения.

Много байт утекло с тех пор, когда был написан пост о процессе установки и настройки NX-сервера на сервере с Debian'ом. Не скажу, что кардинально все поменялось, но кое-что освежить стоит.
Итак, на сегодняшний день по-прежнему практически единственным средством реализовать терминальный linux-сервер остается решение от NoMachine. Простота развертывания, защищенность передачи данных сеанса, скромные требования к ширине канала - все это в комплексе и без финансовых  затрат на ПО (при использовании свободных версий, конечно)  реализуется с помощью пары nxserver+nxclient. К тому же клиентская часть кросплатформенна, что во многом имеет определяющее значение.
В своей практике я использую решение от компании "Этерсофт", сейчас это два пакета - сам сервер nx-3.4.0, и их доделки-допилки - rx-etersoft. Выбрать сборку для своего дистрибутива (ссылки даны для Debian 5.0 Lenny) можно там же, поднявшись на пару уровней выше. Установка по сравнению с прошлым постом упростилась - нужно установить эти два пакета и выполнить команду rxsetup (и то и другое, конечно же, от имени суперпользователя). В директории, откуда rxsetup выполнялся, создастся файл rxsetup.log, заглянув в который, можно поглядеть подробности установки и справиться о наличии ошибок. 
Да, в некоторых дистрибутивах в базовой поставке отсутствует netcat и expect, которые используются в работе rx, поэтому их следует установить. Пару раз сталкивался, что отсутствовал пакет binutils, который также необходим для корректной настройки и работы rx-сервера. Таким образом, получатся такая последовательность команд:
delayer@inspire:~$ mkdir rxtemp
delayer@inspire:~$ cd rxtemp
delayer@inspire:~/rxtemp$ wget -c ftp://ftp.etersoft.ru/pub/Etersoft/RX%40Etersoft/1.1.1/Debian/5.0/nx_3.4.0-eter13.3debian_i386.deb
delayer@inspire:~/rxtemp$ wget -c ftp://ftp.etersoft.ru/pub/Etersoft/RX%40Etersoft/1.1.1/Debian/5.0/rx-etersoft_1.1.1-eter8debian_i386.deb
delayer@inspire:~$ su -
inspire:/home/delayer/rxtemp# aptitude update && aptitude install netcat expect binutils
inspire:/home/delayer/rxtemp# dpkg -i nx_3.4.0-eter13.3debian_i386.deb rx-etersoft_1.1.1-eter8debian_i386.deb
inspire:/home/delayer/rxtemp# rxsetup
inspire:/home/delayer/rxtemp# /etc/init.d/freenx-restart
Теперь можно ставить на клиентскую рабочую станцию клиента - или "ванильного" от NoMachine (win, lin), или сборку "community edition" (win), которую усиленно пилят резиденты unixforum-a во главе с dimbor'ом (за что и огромный респект, ибо попилено немеряно). Уточню, что хотя сборки NXClientCE можно взять не только в соотвествующих ветках самого unixforum'а, но и на ftp-сервере "Этерсофта" (там же, где и rx), сама компания к разработке этого продукта отношения не имеет. Это неочевидно, но тем не менее.
Практика использования rx показала, что нет надобности делать nxserver --adduser, все прекрасно и "из коробки" работает с существующими системными (или ldap) пользователями. Авторизация происходит аналогично обычному ssh-логину, с той лишь разницей, что сначала по ключу авторизуется специальный пользователь nx, а от его имени уже происходит дальнейшая авторизация заданного в настройках подключения пользователя. 
В качестве клиента я бы рекомендовал использовать сборку Community Edition, так в ней поправлены многие проблемы с раскладкими, кодировками, буфером обмена, работой в rootless-режиме и много чего еще. Всю биографию NXClientCE можно попытаться осилить - труд "Курощение.." находится тут.
Предложенная связка уже не первый год работает более чем в двух десятках различных организаций Кирова и области, "боевой" опыт использования имеет место быть. Как показывает статистика посещений моей странички, прошлый пост по этой теме практически с момента публикации держится в топе посещаемости относительно всех остальных заметок  Посему тема, выходит, достаточно востребована и популярна.

7 коммент.:

Анонимный комментирует...

Сделал:
root@debian:/home/user/rxtemp# rxsetup
Configuration error, see rxsetup.log for details
В rxsetup.log:
passwd: разблокировка пароля приведёт к появлению беспарольной учётной
записи. Вы должны задать пароль с помощью usermod -p для разблокировки учётной $
Подскажите что нужно сделать?

dima2013 комментирует...

включил пользователя nx
rxsetup не выполнятся:
root@debian:/home/user/rxtemp# rxsetup
Configuration error, see rxsetup.log for details
Содержимое файла rxsetup.log
passwd: password expiry information changed.
/usr/bin/rxsetup: line 26: return: : требуется числовой аргумент
Что делать дальше?

Delayer комментирует...

Ну, вообще я игнорирую это сообщение, так как пользователь nx авторизуется в системе по ключу, нет необходимости делать какие бы то ни было манипуляции с паролем. По поводу второго сообщения сказать на сей момент ничего не могу, надо поглядеть, что там в /usr/bin/rxsetup в line 26 и чуть раньше. Может, тогда возникнет понимание, чего ему надобно. Также вопрос вызывает сообщение об изменении даты окончания действия пароля. Надо поглядеть, когда у этого пользователя выставлена эта дата. Так как я с телефона, не могу подсказать конкретные команды.

dima2013 комментирует...

Спасибо за быстрый ответ!

В rxsetup в 26 строке идет :
26 return "$RETVAL"

Начало rxsetup такое:

#!/bin/bash
# Etersoft, 2010
# 2010 (c) Devaev Maxim,
# 2010 (c) Baranov Denis,
#
# rxsetup - script for fast configuration of NX
#
#####

unlock_nx_user()
{
passwd -u nx
}

start_sshd()
{
# FIXME Lav: нужно воспользоваться distr_vendor для определения системы
for sshd in ssh sshd openssh opensshd; do
if [ -e /etc/init.d/$sshd ]; then
/etc/init.d/$sshd start
RETVAL="$?"
chkconfig $sshd on || update-rc.d $sshd defaults
fi
done

return "$RETVAL"
}

enable_cupsd()
{
chmod 755 /usr/sbin/cupsd && \
chmod 711 /usr/lib/cups/backend/ipp
}

nx_install()
{

dima2013 комментирует...

Исправил 2 свои ошибки

1)исправил дату на компе (стоял 2000 год)
2)поставил пакеты rssh, openssh-server
После этого:
root@debian:/home/user/rxtemp# rxsetup
Configuration error, see rxsetup.log for details
В rxsetup.log:
passwd: password expiry information changed.
Starting OpenBSD Secure Shell server: sshd.
Setting up /etc/nxserver ...done
Setting up /var/lib/nxserver/db ...done
Setting up /var/log/nxserver.log ...done
Setting up known_hosts and authorized_keys2 ...done
Setting up permissions ...done

----> Testing your nxserver configuration ...

Delayer комментирует...

Для верности перезапустить freenx-server, и можно работать ;)
Сами справились, гут.

Анонимный комментирует...

Вопрос немного не по теме: есть ли возможность как-то изменять параметр color depth? Требуется для ускорения работы на слабых каналах связи.