Часть первая: Немного лирики

Нижеследующий текст автора не претендует на истину в последней инстанции и по нему не стоит судить о среднестатистическом уровне IT инфраструктуры в небольших компаниях нашей необъятной страны. Статья написана по мотивам общения с многочисленными знакомыми IT-шниками (в основном уровня «студент» и «только что из института»), начинающих свою карьеру с эникейщика в небольших компаниях.

Давайте представим себе среднестатический офис небольшой торговой фирмы с точки зрения IT:

  • несколько десятков слабеньких компьютеров для секретаря, менеджеров, бухгалтерии и, конечно, главного Босса;
  • одна-две-три машины, выполняющих роли:
    • домен-контроллера windows (нередки случаи, когда в сети компании отсутствует даже домен, а все компьютеры работают в одно-ранговой сети);
    • файлового сервера;
    • почтового сервера (вместо него иногда используют внешние бесплатные почтовые сервера, начиная от mail.yandex.ru и gmail.com и кончая десятидолларовым хостингом на N почтовых ящиков);
    • http-прокси для фильтрации доступа ко внешним ресурсам и логирования «куда кто ходит» (часто отсутствует)
    • маршрутизатора/файрвола на границе с внешней сетью для ограничения доступа наружу и наоборот (часто в качестве пограничного маршрутизатора используется любой SOHO-роутер начального уровня ценой до 100 долларов, он же выполняет роль DHCP сервера (для динамической раздачи IP адресов рабочим станциям сотрудников);
    • другие вещи, список которых может быть довольно большим;
  • несколько принтеров, часто подключенных локально к рабочим станциям сотрудников и расшареных по сети стандартными средствами Windows (как вариант, принтеры могут быть сетевыми изначально или же подключены через аппаратные принт-сервера).
  • в продвинутых случаях - один терминальный сервер (под Windows) для бухгалтерии (на нем крутится 1C а там же лежит база данных оной, а бухгалтеры, подключаясь к серверу терминалов через стандартные средства Windows (remote desktop), работают с ней на терминальном сервере (локально), что, во-первых, дает больше удобства, а во-вторых, ускоряет работу самой 1C (обычно же 1С с базой установлена на компьютере одного из бухгалтеров, а остальные подключаются к ней со своих компьютеров, работая с расшареной по сети базой).

Все это хозяйство связано в единую локальную сеть посредством одного/нескольких дешевых коммутаторов на 100Мбит. И работает это в едином домене NT/Active directory (хотя встречаются варианты одноранговых рабочих станций безо всяких доменов).

На всех машинах с Windows обычно установлен (хотя и тут бывают исключения) какой-то антивирус. Часто встречается не сетевые версии этих программ (тот же Avast), хотя, опять таки в более продвинутых (с точки зрения IT) конторах, стоят сетевые версии антивирусов с централизованным управлением и обновлением антивирусных баз.

Приведенные выше ситуации варьируются от случая к случаю, так как на конфигурацию сети, железа и софта влияют как знания/умения/желания (и, что немаловажно, лень) системного администратора(ов), так и понимание начальства (в лице главного Босса) «чем же именно этот наш системный администратор занимается, когда все и так отлично работает» (из последнего вытекает - сколько денег выделяется на оборудование для IT и зарплату будущего специалиста). Если денег выделяется мало (а так обычно и бывает — управленцы торговых компаний от IT обычно далеки и слабо понимают, что же там происходит), то поднабравшийся знаний эникейщик уходит в другую компанию. На место ушедшего приходит очередной студент и все повторяется по новой.

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

В результате, в небольших компаниях часто наблюдается довольно разнообразный парк пользовательских машин класса от pentium2/128Mb ram/5Gb hdd до P4 Celeron/1Gb ram/80Gb hdd. На всех машинах, разумеется, Windows (98, 2000 и XP Home/Pro) и разные версии софта (ставили то машины в разное время). Доходит до того, что и антивирусное ПО на машинах тоже от разных производителей.

А на нелегкую долю системного администратора (и эникейщика по совместительству), выпадает денно и нощно поддерживает весь этот зоопарк. А ведь железо иногда ломается:

  • вентиляторы начинают противно жужжать (их надо чистить и смазывать или же менять на новые);
  • блоки питания выходят из строя;
  • винчестеры - сыпятся;
  • сетевые карты (как встроенные в материнскую плату, так и внешние - перестают работать и требуют замены);
  • остальное железо, обычно, летит сильно реже, но тем не менее летит тоже

При выходе из строя винчестера (или же материнской платы компьютера), операционную систему на восстановленной машине часто приходится переставлять с нуля в такой или очень похожей последовательности:

  • ставим Windows;
  • ставим необходимые драйвера (весь парк железа разный - не забыли?), предварительно определив модель материнской платы в данной машине и скачав из Интернет последние версии драйверов или найдя нужные у себя на файл-сервере;
  • вводим машину в домен (если он настроен);
  • ставим необходимый софт (офис, браузер, почтовый клиент, тотал-коммантеры, аськи, джабберы, пунто-свитчеры и подобное) - в случае домена Active Directory часть софта можно поставить автоматически, но не у всех он настроен, да и не все знают его возможности;
  • ставим антивирус;
  • плюс дополнительные танцы с бубном, индивидуальные для конкретной сети каждой организации вокруг новой рабочей станции;

После успешного выполнения всех пунктов (эта процедура занимает примерно два часа) рапортуем Боссу, что рабочее место сотрудника спасено и он может приступать к работе.

Счастливый обладатель восстановленного компьютера садится за свое рабочее место, после чего выясняется, что (так как доменные профили были не перемещаемые или же домена не было вовсе, ссылка «мои документы» вела на локальный диск C:, а про то, что все важное нужно сохранять на сетевом диске - на сервере, сотрудник забыл):

  • у меня тут была папка с важными документами - где она?
  • а еще я там фотографии из Турции сохранил, можно их восстановить?
  • на рабочем столе было много важных ярлыков и еще сотня документов - куда они пропали?
  • в избранном (это про закладки в браузере) моих любимых сайтов больше нет - где их теперь искать? и так далее…

Знакомо? Хорошо, если полетел не жесткий диск, а всего лишь материнская плата. Или же часть информации на осыпавшемся диске поддается восстановлению. Но все эти процедуры занимают рабочее время системного администратора, которое можно было бы потратить с куда большей пользой — поиграть в сетевую стрелялку или же… изучить IPv6 - ведь уже все на него переходят и совсем скоро перейдут, адреса в пространстве Ipv4 уже лет пять как закончились:)

В результате, поддержка IT инфраструктуры небольшой компании для системного администратора превращается, по большей части в поддержку работоспособности пользовательских рабочих станций, а именно:

  • переустановить Windows;
  • настроить на новой машине весь необходимый софт;
  • восстановить все то, что потерялось;
  • доустановить нуждающимся новые программы;
  • провести профилактику корпуса (пыль пропылесосить в системном блоке);

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

Как же выйти из этого замкнутого круга?

Одним из вариантов решения вышеописанной проблемы, является отказ от «толстых» рабочих станций (там, где это можно сделать) и переход на .

Под «толстой» рабочей станцией понимается любой компьютер с установленной ОС, который и выполняет обработку большинства пользовательской информации. Т.е. браузер, офис и все остальное выполняется локально именно на рабочей станции пользователя, системный блок которой жужжит у него под столом или где то рядом.

Надо понимать, что требования современных ОС (не обязательно Windows) идут в ногу с современным железом - другими словами, для относительно комфортной работы в Windows XP старой (но полностью работоспособной и относительно мощной) машины класса Celeron 800Mgz/128Mb Ram/ 10Gb HDD может и не хватить. Работать под современной ОС на подобном железе, конечно, можно, но подтормаживать эта операционка и приложения будут довольно часто — хотя бы из-за малого количества набортной памяти и старого (читай — медленного) жесткого диска.

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

Обычно тонкие клиенты делают на основе слабого (а, соответственно, и малопотребляющего) железа - часто это единая системная плата, на которой все и интегрировано. Процессор и память так же могут быть намертво припаяны к материнской плате. Некоторые тонкие клиенты имеют flash-диск (вставляемый в IDE разъем материнской платы), на котором прошита специализированная ОС (WinCE или другие).

Сравнение тонкого клиента Clientron U700 со стандартным корпусом для рабочей станции.

В результате, при включении тонкого клиента (их еще называют терминалами), ОС грузится со встроенного flash-диска (обычно на загрузку уходит менее 30 секунд), после чего на экране появляется диалог подключения к терминальному серверу. Некоторые из этих клиентов умеют подключаться только Windows Terminal Server или же Citrix Metaframe, другие - в том числе и к терминальным серверам других ОС. В любом случае, в цену таких решений закладывается и цена лицензии на WindowsCE, прошитую на встроенный flash-диск. Мы рассказывали о подобных решениях ранее:

Разумеется, подобные решения существуют и у других компаний. В том числе и без встроенной ОС (за которую, в случае Microsoft Windows CE, нужно дополнительно платить, да и flash-диск копейки, но стоит).

Терминальные клиенты без встроенного flash-диска, при включении загружают нужный образ ОС по сети, после чего они тратят на загрузку те же пару десятков секунд. После чего готовы к работе, под чем подразумевается вывод на экран меню со списком терминальных серверов для подключения или же автоматическое подключение к одному из жестко заданных терминальных серверов (в зависимости от настроек) - пользователю останется ввести лишь логин и пароль. После правильного ввода оного, он попадает в свою сессию на сервере терминалов и может приступать к работе.

Несомненные плюсы терминальных решений на специализированных тонких клиентах или правильных самосборных компьютерах:

  • отсутствие жесткого диска (которые греются и ломаются);
  • отсутствие вентиляторов (на процессоре и блоке питания установлены лишь радиаторы, которых хватает для рассеивания выделяемого при работе тепла);
  • низкое энергопотребление;
  • теоретическая дешевизна (при самосборе можно подобрать очень дешевые комплектующие — ведь производительности от железа не требуется; а вот производители за специализированные тонкие клиенты попросят раза в два больше)
  • минимальные временные затраты на обслуживание (при поломке такой железяки, достаточно отключить поломавшуюся и подключить запасную — работы на пять минут; а это уже минимальный простой для рабочего места сотрудника, а так же минимум затраченного на устранение поломки времени системного администратора)
  • весь софт для работы пользователей настраивается централизовано на одном (двух/трех/…) терминальных серверах — это значительно проще, чем поддерживать зоопарк софта на «толстых» рабочих станциях сотрудников

Не стоит забывать и о пользовательских данных — локально терминал ничего не хранит (все данные пользователя находятся на удаленных серверах). В результате легко настроить автоматических бекап всего и вся и, в случае чего, восстановить «случайно удаленный» документ.

В общем, плюсов море, но есть и минусы:

  • при отказе сети, рабочие места сотрудников «превращаются в тыкву» (а сотрудники на «толстых» клиентах могут продолжать набивать документ, к примеру, в OpenOffice);
  • при отказе терминального сервера рабочие места сотрудников опять «превращаются в тыкву» (но это решается установкой нескольких - например, двух - терминальных серверов; при выходе одного из них из строя, второй его подменит или же сотрудники просто переподключатся ко второму серверу вручную)
  • тонкие клиенты подходят не всем: к примеру, людям, постоянно смотрящим видео или работающим активно работающих с графикой (в фотошопе) или занимающимся версткой журнала, лучше делать это на локальном «толстом» клиенте (зато тонкие клиенты отлично подходят большинству остальных сотрудников, которым нужен лишь браузер с Интернет, почта, создание и редактирование документов в Openoffice и работа с 1C).

Последний минус, который мы тут рассматривать не будем — это лицензионная политика (если не сказать обдираловка) со стороны Microsoft. Работа на терминальном сервере под управлением ОС этой известной компании требует большого количества разнообразных лицензий:

  • лицензия на Windows Server
  • CAL (Client Access License) — лицензии на подключение к Windows-серверу и их кол-во должно быть не меньше количества подключаемых к серверу клиентов (обычно в составе Windows-сервера уже идет некоторое кол-во таких лицензий — от пяти и выше)
  • лицензии на работу с сервером терминалов (их количество тоже должно быть равно количеству подключаемых клиентов)

Не забываем про отдельные лицензии на весь используемый софт (например на Microsoft Office) в количестве, равном количеству подключаемых к серверу клиентов. Если клиентские лицензии на Microsoft Office еще можно обойти, отказавшись от данного продукта и поставив ему замену в виде, к примеру, OpenOffice, то от самого терминального сервера в лице Windows 2000/2003 TS избавиться несколько сложнее:) Хотя и это возможно в некоторых случаях.

Есть, правда, еще один «минус» (кроме боязни нового) который часто останавливает от внедрения подобных решений - почему то многие думают, что эти тонкие клиенты надо покупать (а они не очень дешевые - от 200 долларов и выше). Куда же девать весь парк уже существующих компьютеров?

Именно для ответа на последний вопрос написана данная серия статей. В ней будет рассматриваться софт тонкого клиента .

Этот небольшой, но обладающий множеством возможностей и, что немаловажно, OpenSource софт, позволяет превратить практически любые древние компьютеры в тонкие клиенты. Минимальные описанные на его родном сайте к используемому железу - это Pentium 100Mhz и 16Mb оперативной памяти. Ах да, жесткий/flash диск тоже не нужен - компьютеры при включении могут скачивать образ тонкого клиента (это около двадцати! мегабайт) по сети (хотя так же возможна установка Thinstation клиента на жесткий или usb диск). В наш век операционных систем, с радостью сжирающих гигабайты места на диске после установки, это впечатляет, не так ли?

Thinstation базируется на Linux, но для его использования знаний Linux, как таковых не нужно - достаточно в своей сети поднять dhcp и tftp сервера и соответствующим образом их настроить (оба этих сервера есть и в составе продуктов Windows Server). Таким образом, даже в сети, где кроме Windows-а ничего не знают, использование Thinstation клиента затруднений не вызовет.

Thinstation умеет работать со следующими серверами терминалов:

  • Сервера Microsoft Windows по протоколу RDP или через nxclient (Windows NT4TSE, W2k Server, W2k3 Server или же Windows XP в однопользовательском режиме);
  • Citrix servers по протоколу ICA (на серверах MS Windows, SUN Solaris и IBM AIX);
  • Сервера Tarantella
  • *nix-like сервера по протоколу X11;
  • подключение к VNC-серверам (tightVNC);
  • подключение к SSH и Telnet серверам;

Для того, что бы загрузить Thinstation по сети, от компьютера требуется лишь встроенная или внешняя сетевая карта, поддерживающая стандарт PXE (есть и другие варианты, но, к примеру все встроенные в системную плату сетевые карты работают именно по этому протоколу).

PXE расшифровывается как Pre-boot eXecution Environment — среда предзагрузочного выполнения. Этот стандарт был впервые реализован компанией Intel. Первый признак наличия PXE-биоса на борту встроенной сетевой карты, это пункт «Enable Boot ROM» рядом с пунктом активации сетевой карты в биосе. Если встроенная сетевая карта не поддерживает загрузку по сети (или отсутствует вовсе), можно использовать любую внешнюю сетевую плату с опцией «Boot ROM» (этот вопрос в подробностях будет рассмотрен далее).

А сейчас вкратце рассмотрим процесс загрузки клиента Thinstation по сети.

  • Сетевая карта по протоколу PXE запрашивает DHCP сервер следующую информацию: IP адрес, маску подсети, шлюз а так же IP-адрес сервера TFTP (на котором лежат образы, в данном случае, ThinStation) и имя образа, которое она попытается загрузить.
  • DHCP сервер возвращает запрашиваемую информацию (помечая у себя, что выданный клиенту IP адрес — занят таким-то клиентом)
  • Клиент подключается к TFTP серверу, IP-адрес которого ему только что сообщили и скачивает с него файл загрузчика PXE (имя которого ему опять таки сообщил DHCP-сервер)
  • Скаченный PXE загрузчик исполняется и, в свою очередь скачивает с TFTP сервера конфигурационный файл, в котором прописаны имена файлов ядра ОС Linux — vmlinuz и образа файловой системы — initrd. Эти файлы скачиваются и управления передается ядру Linux
  • После распаковки и загрузки ядра Linux с подмонтированным образом файловой системы, Thinstation снова обращается к TFTP серверу для скачивания необходимых ему конфигурационных файлов (там, среди прочего, записаны адреса терминальных серверов, к которым нужно подключаться), после чего запускает нужный терминальный клиент (в нашем случае это будет rdesktop) и ожидает от пользователя ввода его логина с паролем для подключения.

На первый взгляд, описанная схема выглядит сложно. Но по факту настройка оной занимает полчаса-час и в дальнейшем она работает полностью автономно. Загрузка тонкого клиента с момента первого запроса в сеть по PXE (этот момент совпадает с моментом начала загрузки ОС с жесткого диска) занимает секунд 20…30.

Как уже отмечалось выше, Thinstation умеет работать с разными терминальными серверами. Но мы в ближайших статьях, как самое простое в реализации (но еще раз напоминаю о покупке множества клиентских лицензий, необходимых для официальной работы), рассмотрим лишь связку Thinstation с Microsoft Terminal Server.

Для начала нам надо иметь настроенный сервер терминалов от Microsoft. Этот сервер может работать как в составе домена (в этом случае удобнее управлять аккаутами пользователей - они общие — особенно если терминальных серверов в сети несколько), так и в вне домена - в одноранговой сети. Второй случай отличается от первого тем, что необходимых пользователей придется заводить на каждом сервере локально и синхронизировать актуальные списки пользователей и их прав - вручную.

Вторым пунктом нашей программы будет настройка DHCP и TFTP серверов. Первый ведает динамической раздачей IP адресов для рабочих станций, а так же сообщает, с какого IP адреса (с какого сервера tftp) и какое имя файла компьютеру нужно скачать в качестве загрузочного образа тонкого клиента. А второй — tftp сервер — фактически и отдает образы тонкого клиента и конфигурационные файлы для них же. Эти настройки могут быть как глобальными (для всех бездисковых терминалов сети), так и локальные — для определенных групп машин или же одиночных тонких клиентов.

Оба эти сервиса можно поднять как в составе Windows сервера (запуском и настройкой соответствующих служб), так и отдельными демонами в составе *nix-сервера — мы это рассмотрим на примере сервера с установленным Gentoo Linux.

А третьим пунктом идет настройка клиентских машин — перевод их на загрузку по сети и рассмотрение стандартных подводных камней.

Но об этом — в следующих статьях нашего цикла.

Что такое тонкий клиент (thin client)?
Тонким клиентом называется устройство ввода и отображения информации (терминал). Физически тонкий клиент это компактный и бесшумный компьютер без жесткого диска (и без вентиляторов), загрузка основной операционной системы которого происходит на сервере. Все пользовательские приложения выполняются на терминальном сервере (сервере приложений), но для пользователя это совершенно прозрачно. Так как вся вычислительная нагрузка ложится на сервер, то тонкий клиент обладает минимальной аппаратной конфигурацией без какого-либо ущерба производительности.

Для чего применяются тонкие клиенты?
Тонкие клиенты применяются в организациях, где большинство пользователей используют компьютеры для выполнения однотипных задач: работа с базами данных, информационные каталоги (магазины, аптеки, библиотеки), работа в качестве банковских терминалов и т.д.

Какая операционная система на терминале?
Терминальная операционная система "прошита" в устройстве disk-on-module небольшого объема (флэш память объемом 64Мб-1Гб). Она обеспечивает базовый функционал работы клиента: начальную загрузку, корректную работу видеоадаптера, аудио, работу периферийных устройств подключенных непосредственно к терминальному клиенту (мышь, клавиатура, локальные принтеры, USB-флэш накопители). Также операционная система тонкого клиента может содержать в своем составе интернет-браузер, который может работать автономно (без терминального сервера). При переходе в терминальный режим клиент начинает работать с серверной операционной системой, индивидуальный сеанс которой запускается на терминальном сервере. С этого момента терминал становится просто средством отображения и ввода информации.

Какие лицензии на ПО нужны?
Для организации работы группы терминалов с ПО Microsoft в общем случае понадобятся следующие лицензии:
Лицензии на встроенные ОС на терминалах (Win CE 5.0 или Win XP Embedded), лицензия на серверную ОС (Windows Server 2008), лицензии клиентского доступа (Windows Server CAL 2008) — необходимое число лицензий равно числу терминалов, лицензии терминального доступа (Windows Trmnl Svcs CAL 2008) — необходимое число лицензий равно числу терминалов или пользователей. Лицензирование прикладных программ, как правило, осуществляется по принципу сколько пользователей (терминалов), столько и лицензий.

Преимущества применения тонких клиентов вместо обычных ПК:

  • снижение начальных затрат на приобретение, вследствие минимальных требований к конфигурации;
  • Значительное снижение энергопотребления — типичный тонкий клиент имеет потребляемую мощность всего 10Вт (против 250-350Вт у ПК)
  • унификация — все клиенты имеют одинаковый набор программного обеспечения;
  • простота реализации задач — нет необходимости настраивать каждый компьютер по отдельности, так как осуществляется централизованное управление клиентами. Все настройки для управления тонкими клиентами системный администратор выполняет централизованно на сервере;
  • экономия времени системного администратора, обслуживающего абсолютно одинаковые компьютеры, вероятность поломок которых сведена к минимуму, а все программы установлены на сервере;
  • масштабируемость — созданный единожды образ системы для работы всей группы пользователей позволяет поддерживать легко масштабируемую сеть. Можно установить столько ПК, сколько требуется, при этом добавление новых рабочих мест требует минимальных усилий;
  • безопасность и отказоустойчивость. Терминал, загружаясь, получает операционную систему "от производителя", настройка которой осуществляется только отделом информационной поддержки. Вся пользовательская информация хранится на сервере на RAID-массиве и регулярно резервируется, что увеличивает отказоустойчивость;
  • защита от утечек информации — нет локальных носителей — нет возможности делать копии документов на съемные носители информации (если обратное не разрешено системным администратором).

Сравнение стоимости внедрения решения для терминалов и ПК для рабочей группы на 40 пользователей:

Наименование Стоимость, руб Количество Всего (для тонких клиентов), руб Всего (для ПК), руб
ОС Windows Server 2003 R2 Standard (Сервер + 5 клиентских лицензий) 22131 1 22131 22131
Windows Server 2003 CAL 5 clt. (пакет в 5 клиентских лицензий) 4214 7 29498 29498
Лицензии терминального доступа (Terminal Server Client Access License) 2260 40 90400 0
ОС Windows CE 5.0 включено 40 0 0
ОС Windows XP Professional 4209 40 0 168360
Сервер для решения на ПК Team Server 3000P 36600 1 0 36600
Сервер для решения на тонких клиентах Team Server 1500A 68400 1 68400 0
Тонкий клиент Norma-TS L66VC-CE 6499 40 259960 0
ПК Team Office b352 8372 40 0 334880
Монитор LCD 17" 7369 40 294760 294760
Клавиатура и мышь 651 40 26040 26040
Итого: 791189 912269
Стоимость рабочего места: 19779 22806

Концепция тонких терминальных клиентов не нова. Действительно, зачем оборудовать рабочее место пользователя относительно производительным железом, приобретать лицензию на клиентскую ОС, устанавливать прикладное ПО, антивирус, обеспечивать должный уровень защиты рабочей станции и данных, если пользователь все свои операции выполняет на терминальном сервере, по сути, не используя локальные ресурсы (кроме периферийных устройств). В этой статье проведем краткий обзор отечественного решения для организации тонких терминальных клиентов – WTware .

WTware – это оптимизированный дистрибутив на базе Linux, включающий в себя все необходимые драйверы и клиенты для подключения к терминальным серверам Windows (rdesktop), Linux (xrdp), Hyper-V VDI, Mac Terminal Server.

Основные преимущества WTware:

  • Низкие требования к аппаратной части. WTware можно запустить практически на любом компьютере с как минимум 48 Мб RAM (для оптимальной работы потребуется 64 Мб). Для Raspberry Pi 2 существует бесплатная версия WTware (http://winterminal.com/ru/)
  • Для запуска клиента не обязательно требуется жесткий диск. Поддерживается как сетевая загрузка, так и загрузка с любого носителя
  • Простота установки и настройки клиентской части, не требует от администратора знаний по администрированию Linux
  • Централизованное управление конфигурацией терминалов
  • Поддержка широкого спектра оборудования. Возможность проброса в терминальную сессию локальных принтеров, сканеров штрих-кодов и другой периферии
  • Поддержка удаленного подключения к консоли терминала службами техподдержки (через VNC)
  • WTware – российский продукт, а это значит, что вся документация и техподдержка также осуществляется на русском языке.
  • Возможность одновременного подключения к 4 терминальным серверам (переключение между сеансами с помощью сочетаний Win+1 – Win+ 4)

Рассмотрим процедуру «быстрого» старта по использованию решения WTware для организации рабочего места с тонким терминальным клиентом в типовой офисной сети.

Варианты загрузки клиента WTware

Прежде, чем приступить к настройке и разворачиванию WTware, нужно выбрать предпочтительный способ загрузки тонких клиентов. WTware может загрузиться практически с чего угодно, будь то:

  • Жесткий диск
  • CD-Rom
  • Флешка
  • Дискета
  • Сетевая карта с BootROM

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

Примечание . В том случае, если требуется подключить к терминалу единичных клиентов из удаленных офисов, подключенных по медленным каналам связи, для них можно использовать загрузку с физических носителей. В том случае, если в таких офисах есть несколько клиентов и любой сервер, стоит все-таки рассмотреть разворачивание на нем собственного TFTP сервера WTware.

Также отметим, что на сайте производителя указывается возможность загрузки терминалов по HTTP, которая должна уменьшить нагрузку на TFTP при большом количестве клиентов (более 300) и улучшить загрузку на медленных и ненадежных каналах связи.

Процесс загрузки WTware

Чтобы запустить клиент WTware на компьютере пользователя, нужно:

Установка серверной части WTware

Начнем с установки серверной части системы WTware. В нашем случае было принято решение установить ее на DHCP сервере, работающего под управлением ОС .

Качаем дистрибутив с сайта разработчика – на момент написания статьи версия wtware.5.4.8.ru.exe (226 Мб) и запускаем установку.

Указываем путь для установки конфигурационных файлов (по-умолчанию, C:\ProgramData\WTware) и самой программы (C:\Program Files (x86)\WTware).

  • Служба WTFTP – необходима для загрузки по сети, ведет протокол обращений и позволяет диагностировать проблемы
  • Служба WTUSBIP – служба WTware USBIP Initiator используется для автоматического подключения USB устройств терминала
  • Службы WTDHCP – назначает терминалам IP адреса, необходима для загрузки по сети

Т.к. мы будем использовать уже имеющийся собственный DHCP сервер, поэтому службу WTDHCP устанавливать не будем. Настройка MS DHCP сервера описана в разделе.

Совет . В том случае, если в вашей сети еще не развернут DHCP-сервер, имеет смысл воспользоваться встроенным DHCP серверов WTware (WTDHCP). Использование WTDHCP позволяет быстро развернуть и запустить DHCP сервис для небольшой сети. Настройка службы WTDHCP выполняется при инсталляции и в дальнейшем с помощью графической утилиты – конфигуратора WTware (win32.exe), возможности которого рассмотрены .

Примечание . В том случае, если ваша сеть разбита на сегменты, в каждом из которых будут присутствовать тонкие клиенты, нет необходимости поднимать в каждом собственный DHCP сервер. Один сервер может обслуживать большое количество зон (подсетей). Пересылка DHCP пакетов между сегментами возможна через .

Запускаем установку.

После установки WTWare в системе появятся две дополнительные службы:

  • WTware TFTP исполняемый файл C:\Program Files (x86)\WTware\Bin\wtftp.exe – использует локальный порт UDP/69
  • WTware USBIP Initiator — C:\Program Files (x86)\WTware\Bin\wtusbip.exe – порт TCP/780

Настройка параметров DHCP сервера

Предполагается, что в нашей сети уже развернут и используется DHCP сервер на любой серверной редакции Windows. Запускаем консоль управления DHCP (dhcpmgmt.msc) и находим интересующую нас DHCP зону (в нашем случае имя зоны – Managers). Нам нужно прописать дополнительные настройки зоны, необходимые для сетевой загрузки бездисковых терминалов.

В настройках зоны нужно дополнительно указать два параметра:

  • 066 (Boot Server Host Name) – здесь указывается ip адрес сервера, на котором будет работать TFTP сервер WTware (у нас он совпадает с адресом DHCP сервера)
  • 067 (Bootfile Name) – здесь указывается файл, с которого должна начаться загрузка терминала. Для загрузки с помощью PXE (если BootROM встроен в вашу сетевую карту или материнскую плату производителем) значение параметра задаем 5.4.8/wtware.pxe . Файл wtware.pxe находится в подкаталоге 5.4.8 корня tftp сервера (по умолчанию корень tftp расположен в каталоге C:\Program Files (x86)\WTware\TFTPDROOT\)

Примечание . Для загрузчика Etherboot (при использовании эмулятора BootROM) в качестве значения опции 067 нужно указать другой файл — 5.4.8/wtshell.nbi

После настройки этих двух параметров DHCP сервер предоставляет клиенту всю необходимую информацию для загрузки по сети.

Примечание . В том случае, если терминал WTWare будет устанавливаться на флешку или локальный диск, можно запретить пользователям менять конфигурацию своей станции. Для этого нужно защитить паролем меню настройки WTware Setup. Для этого можно воспользоваться еще одной опцией DHCP зоны — 018 (Extensions Path). В этом поле указывается хэш пароля, полученный с помощью специальной утилиты. Цель указания хэша – запрет передачи пароля в открытом виде в DHCP ответе.

Настройка параметров терминалов WTWare

Настройка терминальных клиентов WTWare, использующих сетевую загрузку выполняется с помощью конфигурационных файлов. Конфигурация клиентов формируется из трех файлов:

  • Общесистемного конфигурационного файла all.wtc (C:\Program Files (x86)\WTware\TFTPDROOT\Everyone)
  • Персонального конфигурационного файла config.wtc (хранится в персональном каталоге каждого клиента, идентифицируемого по MAC адресу, к примеру (C:\Program Files (x86)\WTware\TFTPDROOT\Terminals\00.50.56.BB.AD.80)
  • Подключаемых файлов, определенных в файле list.wtc

В файле all.wtc нужно указать параметры, одинаковые для всех терминалов.

К примеру, можно задать адреса терминальных серверов, доступных для подключения, указав их IP адрес

server=10.24.181.44

или DNS имя сервера (при условии, что клиенты через DHCP получают адрес сервера имен в сети)

server= msk-term-1c.сайт

Или можно разрешить пользователю самому указывать имя терминального сервера, к которому нужно подключиться.

Примечание . По умолчанию, на клиенте запускается RDP клиент, но есть возможность запуска на тонком клиенте браузера Google Chrome. В этом случае на клиенте должно как минимум быть 512 Мб ОЗУ, а в конфигурационном файле указаны следующие строки (также мы зададим адрес прокси-сервера для браузера):

application = chrome
chrome_proxy=192.168.1.23:3128

Чтобы на терминальном сервере вместо рабочего стола сразу было открыто определенное приложение, нужно в конфигурационном файле указать параметр shell:

К примеру, для запуска клиента Directum нужно указать:

shell = C:\Program Files (x86)\DIRECTUM Company\DIRECTUM 5.1\SBRte.exe -S=msk-drc01 -D=DIRECTUMDB

Индивидуальные конфигурационные файлы каждого клиента хранятся в каталоге C:\Program Files (x86)\WTware\TFTPDROOT\Terminals\. Для каждого клиента создается персональный каталог с его MAC адресом. Именно в этом каталоге клиент будет искать файл config.wtc со своей конфигурацией.

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

Настройка и работа с клиентом WTWare

Итак, настройка серверной части закончена, перейдем к настройке клиента. В BIOS/ компьютера, который будет использоваться в качестве тонкого клиента в разделе, в котором настраивается порядок перебора загрузочных устройств, указываем высший приоритет сетевой загрузке с PXE (Network boot, LAN boot).

Сохраняем изменения и перезагружаем систему. Если на стороне сервера WTware и DHCP все настроено правильно, клиент должен получить IP адрес от DHCP сервера и по настроенным нами параметрам выполнить сетевую загрузка с указанного .

При первом запуске можно выполнить настройку терминала (F10 – мастер настройки терминала).

Нам будет предложено выбрать драйвер видеокарты и другие параметры отображения. Предпочтительные настройки можно сохранить в персональный конфигурационный файл клиента на сервере. В этом случае в следующий раз не нужно будет вручную править настройки отображения.

Для этого на TFTP сервере в каталоге C:\Program Files (x86)\WTware\TFTPDROOT\Terminals\00.50.56.BB.AD.80 (каталог с именем, содержащим MAC адрес клиента) создадим файл config.wtc, в котором будут указаны настройки клиента:

video= VESA(F)
bpp= 16
display = 800x600

При следующей загрузке терминал автоматически загрузится с этими параметрами.

В том случае, если адрес терминального сервера указан в конфигурационном файле, клиент WTWare автоматически инициирует RDP соединение. Осталось авторизоваться на сервере и перед нами откроется его рабочий стол.

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

Для диагностики работы клиентов, на каждом терминале функционирует маленький веб-сервер. Чтобы открыть диагностическую страничку, достаточно набрать ip адрес клиента в браузере. На открывшейся веб странице можно посмотреть текущие настройки клиента, состояние его компонентов, логи, кнопки выключения/перезагрузки клиента и т.д.

По-умолчанию доступ к этой странице не ограничен. Чтобы разрешить подключаться к веб серверу только с определенных адресов, в конфигурационном файле нужно указать строку:

httpd = 10.10.1.55, 10.10.1.56

Графический конфигуратор WTware

Помимо управления через текстовые конфигурационные файлы, есть возможность управления настройками системы и терминалов клиентов из отдельного графического приложения – конфигуратора WTware (C:\Program Files (x86)\WTware\Bin\ win32.exe), позволяющего более удобно работать с текстовыми конфиг файлами.

Для чего можно использовать данную утилиту:


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

Лицензирование WTWare и цены

Лицензии WTWare привязываются к MAC адресу сетевой платы компьютера. Все лицензии нужно записать на сервер в файл wtware.lic.

Стоимость лицензии WTWare на одно рабочее место зависит от количества клиентов и начинается с 1000 рублей (при количестве клиентов от 1 до 9) и заканчиваются 350 рублями (при приобретении более 100 лицензий).

Выводы

WTware оставляет впечатление качественного и добротного продукта, который позволяет без существенных затрат развернуть тонких терминальных клиентов. Решение от WTware подкупает своей простотой и одновременной гибкостью с точки зрения централизованного администрирования и разворачивания. А невысокая стоимость лицензий практически сразу оставляет за бортом всех конкурентов.

Из бесплатных аналогов WTWare для организации тонкого клиента, можно вспомнить Thinstation, но последний существенно проигрывает в управляемости и развернуть его гораздо сложнее.

Рабочих мест в офисе. Клиент общается с сервером посредством терминального доступа, таким же способом получает все данные для работы. Типичным примером тонкого клиента может выступать и компьютер с браузером, который работает с удаленными приложениями.

В большинстве своем в качестве тонкого клиента используется простой маломощный компьютер без жёсткого диска, работающий под управлением специализированных версий операционной системы (к примеру, Linux WTWare). В остальном тонкий клиент мало чем отличается от стандартной рабочей станции – есть системный блок, дисплей, устройства ввода, доступ в сеть (через LAN или с помощью модема).

Принцип работы тонкого клиента предусматривает непрерывное терминальное соединение со специальным сервером, на котором не только хранятся рабочие данные каждого пользователя, но и запущены рабочие программы, с которыми и взаимодействует клиент. Загрузка клиента возможна с помощью внешних носителей (например, CD или Flash-накопителей), а также посредством LAN-сети, если сетевая карта поддерживает опцию BootRom.

Варианты реализации тонких клиентов в офисе

Чаще всего тонкий клиент является урезанным по функционалу компьютером – без жесткого диска или другого накопителя. Такие рабочие станции можно закупить готовыми или собрать самостоятельно. Для запуска также нужно обустроить терминальный сервер – именно к нему будут подключены клиенты, и на нем будут выполняться основные вычисления, а также храниться данные. Ранее в офисах предпочитали устанавливать физический терминальный сервер, сегодня же, с развитием облачных технологий, всё чаще его выносят «в облако». В роли терминального сервера может выступать как отдельный мощный компьютер с соответствующей ОС и запущенными прикладными программами, так и целый кластер, если потребности в обработке информации велики, как и количество одновременных соединений.

Для обустройства офиса на основании тонких клиентов нужно добиться бесперебойного доступа к сети, ведь без прямой связи рабочих машин и терминального компьютера работа будет полностью невозможной – автономно тонкие клиенты чаще всего неработоспособны. Качественный провайдер облачных решений с высоким аптаймом обычно полностью решает эту проблему.

Основные преимущества терминального доступа

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

Со временем, с развитием технологий и децентрализацией работ стали очевидны и другие преимущества такого решения:

  • возможность работать удаленно из любой точки мира с подключением к интернету;
  • простота и масштабируемость – конфигурацию рабочего окружения можно легко менять, не влияя на работоспособность;
  • сохранение всех данных в одном месте гарантирует их сохранность и доступность для каждого сотрудника;
  • безопасность и защита данных – в большинстве реализаций тонких клиентов у пользователя нет возможности сохранить локально или скопировать рабочие файлы и данные. К этому можно добавить шифрование трафика и возможность полностью отключить сервер при необходимости.

Недостатков такое решение практически не имеет. Единственное – это требование к постоянно работающему и исправному сетевому подключению, однако на сегодняшний день это не является сложностью.

Где применяются тонкие клиенты

Простота и удобство, которые дает терминальный доступ, быстро завоевали значительное количество поклонников в различных сферах деятельности:

  • повышенная безопасность и закрытость системы нашла активное применение в банковской сфере – например, работа с ERP системами, онлайн-банкинг;
  • удобство коллективной работы, сохранность результатов труда и скорость доступа к ПО сделали тонкие клиенты незаменимыми в крупных офисах – здесь реализуется терминальное взаимодействие с офисными пакетами, системой учета 1С, различными дополнительными программами, выход в интернет, корпоративная почта и т.д.;
  • в образовательной среде терминальные клиенты также используются – они позволяют эффективно организовать учебный процесс, снизить стоимость оборудования компьютерных классов, упрощают удаленное образование, тестирование;
  • нашлось применение технологии и в медицине – безопасное хранение данных на серверах клиники и удобный доступ к базе позволяет оперативно решать возникающие вопросы и сделать управление более эффективным;
  • склады и особенно крупные складские комплексы все чаще переводятся на терминальный доступ с выгрузкой управляющих и учетных программ в облако.

Кроме того, потенциальными направлениями для развития тонких клиентов служат системы по взаимодействию власти с населением («электронное правительство», органы ЖКХ, онлайн документооборот и т.д.).

Решения для организации удаленного офиса от Tucha

Стараясь не отставать от актуальных тенденций на рынке, мы предлагаем готовый пакет для организации собственного терминального доступа в офисе – . Это полностью готовое решение для реализации инфраструктуры с доступом посредством тонких клиентов. Сервер обладает всем необходимым – высокий уровень аптайм, легкость масштабирования, защищенный канала передачи данных и другие. Также мы предлагаем помощь в миграции приложений и даем возможность устанавливать собственное ПО. Мы гарантируем высокий аптайм, сохранность данных, возможность создания резервных копий и быстрого восстановления из них. Подключение возможно с помощью любых устройств – ПК, тонких клиентов, мобильных девайсов.

Попробуйте – и вы больше никогда не вернетесь к старой организации работы.

Техническая сфера изобилует самыми разнообразными терминами, в которых бывает тяжело разобраться. Нередко, даже используя какую-то программу, человек может не понимать, что значит то или иное слово. Например, многие пытаются понять, что такое тонкий клиент?

Русское название этого понятия образовалось путём простого перевода английской фразы, thin client. Под этим словом понимают некоторое устройство или программу, которая может иметь клиент-сервер или терминал . Именно на них передается основная масса задач по обработке информации.

Можно привести один несложный пример. Для среднестатистического пользователя тонким клиентом выступает обычный браузер, через который человек работает с веб-приложениями. В этом случае иногда используется и другое название – P2P-клиент, если он обращается к каким-то другим узлам сети.

Что такое тонкий клиент?

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

Как происходит работа:

  • Существуют три главных типа, с помощью которых осуществляется загрузка клиента. Это HDD, LAN и CD.
  • В случае с LAN, подсоединенный компьютер получает определенный IP-адрес ещё до того, как клиент полностью включится.
  • В остальных случаях получение адреса происходит в процессе его загрузки.
  • Когда загрузка будет завершена, тонкий клиент воспользуется rdesktop, чтобы начать сессию согласно настройкам сервера.

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

Для функционирования тонкого клиента обычно используют терминальный сервер из числа вполне стандартных. Нередко обращаются к ОС Windows Server, хотя в ходу также Linux и немного реже Solaris. Независимо от марки, сервер должен отличаться высокой степенью производительности и надёжностью.


Зачем нужен тонкий клиент?

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

  • Второй аспект экономии – отсутствие необходимости приобретать какое-то особое программное обеспечение, вроде разнообразных драйверов. Всё, что требуется – рабочий лицензионный терминальный сервер.
  • Это же относится и к тратам на администрирование. Если у тонкого клиента и произойдут какие-то проблемы, то они будут связаны исключительно с сервером, а он, между прочим, ломается крайне редко.
  • Экономится даже обычная электроэнергия, так как тонкий клиент потребляет её гораздо меньше, чем полноценные рабочие станции.
  • Унификация – ещё одно из преимуществ тонкого клиента. Оно выдает всем одинаковый набор программного обеспечения и убирает необходимость настраивать каждый компьютер отдельно. Настройка также происходит централизованно.
  • Такое оборудование не издает шума и не выделяет большого количества тепла, что является приоритетным с точки зрения воздействия на окружающую среду.

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


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

  • За счет этого снижается нагрузка на соединение. Он используется в узком направлении, лишь для передачи данных, поэтому не обязательно иметь подключение с очень сильной пропускной способностью.
  • Использование данного режима в программе не требует мощного программного обеспечения. Серьёзные ресурсы не нужны, всё вполне работает и на слабых ПК.
  • Всё это значительно снижает расходы компании.

С точки зрения использования в программе 1С, можно выделить пару отрицательных сторон тонкого клиента. Ключевая из них – необходимость наличия мощного сервера. Остальные же связаны чисто с удобством использования. Ограниченный функционал не позволяет задействовать некоторые аспекты программы, вроде режима Конфигуратора.


В целом, достоинства тонкого клиента значительно превышают количество его недостатков. Он облегчает многие рабочие процессы и снижает затраты компании. Если у неё уже имеется подходящий сервер или терминал, и они, соответственно, прекрасно знают, что такое тонкий клиент, то практически никаких проблем не возникает вовсе.

Видео инструкция