FreeNX - терминальный сервер на FreeBSD

Январь, 24th 2012Рубрика: *NIX 16581
Подписаться на комментарии по RSS

терминальный сервер FreeNX

Имеется задача организовать работу 1С бухгалтерии с компьютеров под управлением Windows, MacOS и Linux. База 1С лежит на серваке с FreeBSD и раздается по сети для виндусовых клиентов посредством SAMBA.

Занавес... уже понятно, что в этом зоопарке без извращений не обойтись.

Спрашивается зачем всё так усложнять... ведь гораздо проще реализовать работу с 1С на единой системе, конкретно под неё заточенной, а именно Windows.

Однако стоимость такого решения не вызывает приятных ощущений у руководства, да и простые варианты, явно не наш выбор, тем более после Mac на Windows как-то не тянет.

Перейдем к практике. Известно, что 1С 7.7 не работает ни на Linux, ни тем более на MacOS, а жаль... Единственный, на мой взгляд, рабочий вариант - организация терминального сервера, на котором будет выполняться 1С, а результат работы отображаться на клиентских машинах.

В 1С v8.2 вроде как есть web-клиент, что позволяет работать из любой системы, но задача не ограничивается работой исключительно в восьмерке и требуется ещё запуск 1С v7.7 и системы ГАРАНТ.

Вариант с Windows Server и Citrix были не проходными по цене. Для пробы, было решено организовать терминальный сервер на FreeBSD, хотя для реализации всего вышеперечисленного лучше это делать на Linux (исключительно по той причине, что компания Aladdin до сих не удосужилась сделать драйвера ключей защиты HASP под FreeBSD).

Можно считать данную статью обзорной, для расширения кругозора. В качестве удалённого терминала будем использовать FreeNX.

Для тех, кто не знает, FreeNX - это бесплатная реализация для удаленного рабочего стола, похожая на TightVNC или Remote Desktop в Windows. Судя по описанию, скорость выполнения программ на FreeNX сравнима со временем их выполнения на локальной машине.

Если X-Windows уже установлена и настроена на вашем FreeBSD, это гуд. Рассказывать здесь про это не буду, слишком долго и далеко уводит от основной темы. У меня иксов на сервере не было (зачем они там спрашивается), потому пришлось мучаться.

Собирать из портов X-сервер совсем не радостное занятие, потому настоятельно рекомендую установить всё через package. Времени сэкономите кучу. В конечном счете установил LXDE.

Далее потребуется настроенный SSH сервер. Тут ничего сложного нет и у вас он наверняка уже работает. Хочу заметить, что в SSH сервере должна быть включена аутентификация по паролю (PAM authentication), т.е. включен параметр UsePAM. На серверах я его обычно отключаю, т.к. захожу исключительно по ключу.

Для начала установим FreeNX:

# cd /usr/ports/net/freenx/
# make install

Теперь необходимо запустить первоначальную настройку:

# /usr/local/NX/bin/nxsetup

В ходе установки будет задано всего два вопроса: прервать ли установку и генерация ключа вручную. Отвечайте нет и двигайтесь дальше.

'Do you want to abort now?' Press 'n' for 'no'
'Do you want to use your own custom KeyPair?' Press 'n' for 'No'

Собственно процесс сборки и установки закончен. Осталось лишь несколько штрихов - создать пользователей, которым будет разрешено соединяться с терминальным сервером и поправить файл конфигурации.

Я уже упоминал, что в качестве оконного менеджера воспользовался LXDE. Сообщаем об этом FreeNX серверу, в файле настроек node.conf укажем новое значение параметру COMMAND_START_CDE для старта оболочки LXDE:

#vi /usr/local/NX/etc/nxserver/node.conf
COMMAND_START_CDE=startlxde

Прописываем в систему новых пользователей, как обычно командой adduser и задаем им пароли. На FreeBSD мне понадобилось также добавить созданных пользователей в сам NX server (на CenOS впоследствии этого делать не пришлось):

# /usr/local/NX/bin/nxserver --adduser username

Теперь можно запустить сервер и посмотреть всё ли у нас заработало.

# /usr/local/NX/bin/nxserver --start
# /usr/local/NX/bin/nxserver --status
NX> 100 NXSERVER - Version 1.5.0-60 OS (GPL)
NX> 110 NX Server is running
NX> 999 Bye

Клиентская часть - NX Client

http://www.nomachine.com/download-package.php?Prod_Id=3655

сайт NOMACHINE. NX клиент для Windows

Клиентскую часть будем брать непосредственно с сайта NOMACHINE. Есть реализации для Windows, MacOS, Linux и Solaris. В общем всё что нам нужно.

Устанавливаем клиента под нашу систему, в настройках указываем адрес нашего FreeNX сервера, желаемое разрешение либо полноэкранный режим, скорость соединения.

настройка NX клиента в Windows

Вот и всё. Остается запустить терминальное соединение, указав имя и пароль пользователя, которого заводили на нашем сервере и наслаждаться:

терминальный клиент NX сервера под Windows

LXDE сессия FreeNX сервера на FreeBSD

Я назвал данную статью обзорной, т.к. не вижу особого смысла поднимать NX сервер на FreeBSD. Основную причину указал в начале статьи. Сейчас у менять есть вполне рабочая конфигурация на CentOS (аналог RHEL) с оконным менеджером GNOME. Используется терминальный сервер FreeNX с небольшими доработками компании Etersoft и WINE@Etersoft сетевая версия на 10 подключений.

1C8.2 и 1C7.7 работают замечательно. Пока правда не удалось нормально заставить работать КОНСУЛЬТАНТ, под MacOS 10. Вылетает терминальный клиент при запуске КОНСУЛЬТАНТа, хотя на Linux и Window машинах такого не замечено и всё крутится как надо.

Если считаете статью полезной,
не ленитесь ставить лайки и делиться с друзьями.

Комментариев: 4

  1. 2012-04-02 в 17:22:21 | tehnikpc

    "для виндусовых клиентов"

    Откуда взялись клиенты на Windows? Везде должна быть только FreeBSD. Windows дорого стоит и её обычно никто не покупает.

  2. 2012-04-02 в 18:36:58 | tehnikpc

    "исключительно по той причине, что компания Aladdin до сих не удосужилась сделать драйвера ключей защиты HASP под FreeBSD"

    За это нужно этой компании дать по одному месту.

  3. 2014-10-15 в 20:32:55 | Alorabas

    Спасибо за статью.

    Пользуюсь Thinstuff XP/VS Terminal Server , альтернативный вариант описанному в статье способу, но для большого кол-ва пользователей и для стабильной работы сервера/пользователей рекомендую использовать её. Главные плюсы этой программки это стабильность и её недорогая стоимость. В общем советую!!! Вот сайт http://thinstuf.ru/ . Я не в кое случае не навязываю покупку программы, я простро дал совет, буду рад, если он кому-то пригодится.

  4. 2015-05-17 в 22:50:38 | Alex

    Делал все так, как у вас описано, но в конце получил сообщение

    "Connection error"и две кнопки "Детали" и "Закрыть". Из отчета я понял, что хотя я в sshd_config выставил PasswordAuthentication yes" "UsePam yes", все равно аунтефикация проходит по ключу. Что мне делать?

Без регистрации
ваш комментарий будет опубликован после проверки
Регистрация на сайте

На указанный адрес будет отправлено письмо с кодом активации. Вы можете настроить собственный профиль и стать активным участником или автором.