Организация терминального сервера в Linux: шаг за шагом

Часть 1. Обзор технологии и варианты реализации

Comments

Серия контента:

Этот контент является частью # из серии # статей: Организация терминального сервера в Linux: шаг за шагом

Следите за выходом новых статей этой серии.

Этот контент является частью серии:Организация терминального сервера в Linux: шаг за шагом

Следите за выходом новых статей этой серии.

В цикле статей описан процесс создания терминального сервера в Linux на основе протокола NX и решения RX@Etersoft. В первой части рассмотрены особенности технологии, преимущества ИТ-инфраструктуры на базе терминального сервера, варианты решений как для серверной части, так и для клиентской. Во второй части дана подробная инструкция по организации терминального сервера в Linux.

В последние годы большой популярностью пользуются всевозможные терминальные решения. Их преимущества очевидны: централизованное администрирование, простота добавления новых пользователей к работающей схеме, возможность отказаться от жёсткой привязки к рабочим местам. А с развитием вычислительных мощностей и появлением широких интернет-каналов к этим преимуществам добавилась заманчивая перспектива организовать виртуальный офис и перенести его в дата-центр (или вообще поместить в облака), защитив и от сбоев питания/интернета, и от не всегда законных посягательств проверяющих органов.

Терминальный сервер — не совсем сервер в обычном понимании. По своей сути он ближе к рабочей станции, только предназначенной для работы нескольких пользователей сразу. А потому первенство в сфере терминальных решений, использующихся в организациях, долгое время уверенно принадлежало решениям Microsoft, в то время, как с «серверными» задачами (раздача интернета, http, ftp, почта и др.) успешнее и надёжнее справляется Linux/FreeBSD. Однако с развитием пользовательского интерфейса Linux, постепенно взявшего курс на доступность пользователю, появилась возможность организовывать терминальные сервера под управлением Linux. И тут СПО показывает себя с самой лучшей стороны своей бесплатностью, ведь за решения на продуктах Microsoft приходится платить как сразу (купить сервер), так и по мере расширения пользователей сервера (покупать клиентские лицензии). В Linux же можно обойтись по большей части бесплатным ПО, разумно расходуя средства лишь на отдельные необходимые для работы компоненты. Добавим удобство администрирования, неработоспособность вирусов — с учётом всего этого терминальное решение на Linux выглядит очень привлекательным. Главное, чтобы оно было доступным по реализации и решало поставленные задачи.

Перед терминальным сервером можно ставить разные задачи. Например, он может быть полноценным виртуальным офисом, в котором работают сотрудники компании. В таком случае он должен предоставлять всё: рабочий стол, офисные приложения, браузер, почтовые программы и прочие полезные утилиты. Другой вариант — специализированный сервер, который выполняет определённую функцию, например, на нём большое количество пользователей работает с 1С.

Если в компании уже осознали необходимость создания терминального сервера Linux, перед IT-отделом встаёт задача выбора технологий, которые позволят эффективно решить поставленные задачи, а технологий в мире свободного ПО достаточно, и нужно грамотно их использовать.

Выбор технологий реализации

Варианты организации терминального доступа к серверу

В зависимости от ситуации администратор может выбрать различные способы организации терминального доступа к серверу. В качестве протокола подключения могут быть использованы XDMCP, VNC, RDP, NX или какие-то другие протоколы. Каждый из них имеет свои преимущества, свою историю развития и своих сторонников. Мы из всего этого многообразия вариантов будем рассматривать именно NX. Этот протокол лёг в основу терминальных решений нашей компании и неплохо зарекомендовал себя во внедрениях на серверах пользователей.

Чем же так хорош NX? Он обеспечивает комфортную работу на терминальном сервере, при этом не предъявляя высоких требований ни к скорости сетевого соединения, ни к его стабильности. NX удобен для подключения удалённых пользователей: сотрудников, работающих из дома, и целых филиалов, находящихся в других точках города или регионах. Решения на базе NX позволяют использовать на сервере локальные пользовательские принтеры, подключать дисковые ресурсы. Клиентские приложения существуют для разных операционных систем, поэтому не важно, Linux или Windows стоит на компьютере пользователя. Очень удобным оказывается режим одного приложения, где терминальный сеанс используется для запуска конкретной программы (например, 1С:Предприятие), в этом случае программа выглядит так, как будто она запущена локально на компьютере пользователя.

Изначально технология NX была представлена продуктами NX NoMachine — это проект итальянской компании Medialogic S.p.A. Коммерческие версии NX NoMachine ориентированы на корпоративных клиентов, а их стоимость составляет от 700$ до 3500$. Существует свободная версия, известная под названием FreeNX. Именно её чаще всего берут за основу решений, организовывая терминальный Linux-сервер.

Сервер FreeNX входит в состав многих дистрибутивов Linux. Для каких-то задач хватает простой его установки, когда-то приходится настраивать и дорабатывать функционал под свои задачи. Следствием проводимых доработок является регулярное появление патченных версий freenx-server и создание собственных проектов, имеющих в своей основе FreeNX. Одним из таких проектов стал проект компании Etersoft — RX@Etersoft.

RX@Etersoft является решением, основанном на FreeNX. Существовав на первом этапе развития в виде патченного freenx-server, со временем проект преобразован в отдельный продукт, позиционирующийся как самостоятельное решение на базе NX. В числе главных отличий RX от FreeNX можно назвать уверенную работу с локальными принтерами и папками, корректную работу кодировок и удобный rootless-режим (режим одного приложения).

RX@Etersoft распространяется под лицензией GPL, как и его предок, что позволяет получить и использовать решение бесплатно. Наряду с бесплатным продуктом есть и его коммерческая версия — тот же самый RX, только с предоставлением сборок под множество систем и правом воспользоваться технической поддержкой.

Варианты клиентских приложений

Что касается клиентских приложений, то они являются общими и для RX@Etersoft, и для FreeNX, и для коммерческой NX NoMachine. Как правило, клиентские программы пишутся кроссплатформенными, что даёт возможность использовать одного и того же клиента в разных операционных системах.

NXClient. Продукт компании NoMachine, является самым популярным для организации подключения к NX-серверу. Обладает богатыми настройками и высокой надёжностью. Есть сборки под Windows и Linux. Главным недостатком этого клиента является отсутствие развития и закрытость кода программы — в случае возникновения ошибок, обходить их приходится разными, не всегда логичными методами.

OpenNX. NX клиент с открытым кодом, написан на C++ с использованием wxWidgets. Существуют сборки под Linux, Windows и MAC OS. Открытость кода даёт проекту стремительно развиваться, и за последние несколько лет перспективный клиент превратился в одну из самых используемых программ для подключения к NX-серверам.

QtNX. Многообещающий проект, к сожалению, не получивший должного развития. На данный момент OpenNX и NXClient значительно превосходят QtNX и по функционалу, и по стабильности.

Есть и другие проекты, но они пока не могут конкурировать с OpenNX и NXClient. Именно на примере этих двух клиентов мы будем в дальнейшем рассматривать организацию подключения к терминальному серверу.

Заключение

Итак, мы вкратце рассмотрели, в чём суть технологии терминального сервера, чем такая схема организации ИТ-инфраструктуры может быть привлекательна и какие существуют варианты реализации. Самое время разобрать шаг за шагом все этапы настройки серверной и клиентской части терминального сервера в Linux. Именно этим мы займёмся в следующей статье цикла.


Ресурсы для скачивания


Похожие темы


Комментарии

Войдите или зарегистрируйтесь для того чтобы оставлять комментарии или подписаться на них.

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=40
Zone=Linux, Open source
ArticleID=857838
ArticleTitle=Организация терминального сервера в Linux: шаг за шагом: Часть 1. Обзор технологии и варианты реализации
publish-date=02122013