Можно ли на тонкий клиент поставить windows

Обновлено: 07.07.2024

Рано или поздно возникает вопрос о необходимости заменить один или несколько ПК по причине медленной работы.

Самый простой способ, нечего не выдумывать и просто заменить ПК.

Не самый простой способ, это начать внедрять «удаленные рабочие столы» в варианте терминальный сервер или виртуальные десктопы.

Стоимость тонкого клиента HP, DELL или других брендов может сравнится с стоимостью полноценного ПК, а использование старого ПК в качестве тонкого клиента позволит продлить срок эксплуатации на достаточно долгий срок.

Как поступить с морально устаревшими ПК:
— оставить на ПК Windows, пользователь будет подключатся к удаленному рабочему столу.
— загружать ПК по сети, один из linux вариантов thinstation.
— установить на ПК локальную версию linux, вариантов море.

Далее буду описывать вариант с Windows, такой тонкий клиент обладает некоторыми преимуществами при сравнении с linux вариантами.


Зачем я все это делал:

— У меня есть удаленные офисы с пользователями которых нужно было перевести работать на терминальные сервера, применение групповых политик в домене позволяют получить необходимый результат без присутствия в офисе и без замены ПК.
— И Windows и linux варианты пользовательских интерфейсов тонких клиентов HP, Wyse/DELL меня не устраивают по разным причинам.

Преимущества Windows варианта:
— Полная поддержка RDP/RemoteFX.
— Полная поддержка сменных носителей.
— Возможность использовать локальный принтер.
— Возможность использовать смарт карты для клиент банка.
— Редирект воспроизведения видео/аудио на тонкий клиент при использовании Windows Media Player, без тормозов и без нагрузки на сервер можно смотреть видео 1080р, но это отдельная история =).

Если начать с результата:

Так будет выглядеть загрузка рабочего стола пользователя, если на ПК установлен Windows XP:


Так будет выглядеть загрузка рабочего стола пользователя, если на ПК установлен Windows 7:


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

На ПК с XP SP3 необходимо установить обновления для rdp клиента KB969084 и Fixit50588, для расширенных групповых политик необходимо установить обновление KB943729.

Ключевые политики:


№1 — Пользователям необходимо разрешить Single sign-on, я распространяю эту политику на весь домен.


№2 — Для ПК делаем отдельный OU и замыкаем групповые политики в этом OU.


№3 — В новом OU создаем политику где меняем шел пользователя на «wscript c:\thinPC\thinPC.vbs /nologo /b».

На целевой ПК необходимо скопировать 3 файла, я использую для этого расширенные групповые политики.
Рекомендую фалы разместить в центральном хранилище групповых политик \\имя домена\SYSVOL\имя домена\Policies\, это позволит обеспечить отказоустойчивость в случаи недоступности одного из домен контроллеров.
На домен контроллерах этому сетевому ресурсу соответствует папка C:\Windows\SYSVOL\sysvol\имя домена\Policies

Содержимое файла thinPC.cmd

C:\BGInfo\Bginfo.exe «C:\BGInfo\config.bgi» /NOLICPROMPT /timer:0
mstsc «c:\thinPC\thinPC.rdp»
shutdown -l

BGInfo добавляет на рабочий стол пользователя надпись с необходимыми данными, результаты работы BGInfo видны на слайдах.
mstsc запускает rdp клиент, после завершения удаленного сеанса выполняется команда shutdown -l для завершения сеанса пользователя на тонком клиенте.

В процессе работа описанного скрипта пользователь будет наблюдать выполнение команд в окне, и для скрытия окна скрипт запускается средствами VBS.

Содержимое файла thinPC.vbs


Содержимое файла thinPC.rdp
Это rdp файл с параметрами подключения которые необходимы.
— Необходимо отключить отображение панели подключения при работе на полном экране.
— Я отключаю проброс локальных дисков, но разрешаю проброс дисков подключенных позже, это позволит пользователям работать с сменными носителями которые подключат после начала удаленного сеанса.
— В случаи ОС windows 7 для использования протокола RemoteFX необходимо установить глубину цвета 32 бита и указать скорость соединения 10 мегабит/локальная сеть.
— В случаи если сертификат сервера самоподписанный необходимо отключить предупреждение в разделе «Проверка подлинности сервера».

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

Основным минусом предложенного скрипта является невозможность пользователю самостоятельно выбрать разрешение экрана, но я честно говоря не понимаю когда выпрашивают монитор 22-24 дюйма, а затем просят увеличить на нем буковки.
В таких случаях я устанавливаю на целевой ПК VNC сервер и меняю разрешение с его помощью.


Второстепенные политики:

[HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\LocalDevices]
«адрес сервера»=dword:0000000d

№5 — Необходимо увеличиваем кеш для RDP соединения, в случаи Windows XP это жизненно необходимо, а вот в случаи Windows 7 может можно и без увеличения кеша.
[HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client]
«BitmapCacheSize»=dword:0000ffff

№8 — Interactive logon: Message text for users attempting to log on и Interactive logon: Message title for users attempting to log on
Заполняем заголовок и текст который предназначен для пользователей, в самом простом случаи тут нужно указать контакты центра поддержки.

№9 — Для отключения визуальных эффектов на тонком клиенте, необходимо добавить ключ в реестр.

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\VisualEffects]
«VisualFXSetting»=dword:00000002

№10 — Power options
Средствами расширенных групповых политик необходимо создать план питания в котором при нажатии на кнопку питания тонкий клиент будет выключатся.

№11 — Software Restriction Policies
Рекомендую настроить контроль запуска ПО, данный механизм работает на WindowsXP и Windows 7 PRO.
AppLocker более гибки но работает только на Windows 7 enterprise и выше.
Считаю что в случаи тонкого клиента гибкость не нужна, преследуется цель исключить возможность запуска вредоносного ПО.

№12 — Turn off Autoplay
Для отключения автоматического запуска сменных носителей необходимо установить параметр Enabled for All drives.

№13 — Allow RDP redirection of other supported RemoteFX USB devices from this computer
Если вы планируете пробрасывать USB устройства, разрешите политику для Adminstrators and Users.

№14 — Delete user profiles older than a specified number of days on system restart
Я устанавливаю параметр в 180 дней, политика работает только на Windows 7.

№15 — User Account Control
UAC мне мешает и по этому отключаю.

№16 — Замена фона рабочего стола, красота требует жертв.

Для Windows XP, этот ключ в реестре отвечает за обои на экране ввода логина и пароля.
Файл с фоном может находится в любом месте, но это должен быть bmp файл.

[HKEY_USERS\.DEFAULT\Control Panel\Desktop]
«Wallpaper»=«C:\\thinPC\\rd.bmp»
«WallpaperStyle»=«2»

Для изменения фона Windows 7 необходимо установить ключ, и передать файл с фоном %WindowsDir%\System32\oobe\info\backgrounds\backgrounddefault.jpg.
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\Background]
«OEMBackground»=dword:00000001

Также необходимо установить фон для сессии пользователя на тонком клиенте.
[HKEY_CURRENT_USER\Control Panel\Desktop]
«Wallpaper»=«C:\\thinPC\\rd.bmp»
«WallpaperStyle»=«2»


Про практику:

— Подобные тонкие клиенты работают уже больше года
— На нескольких старых ПК успели посыпаться диски, в замен выслали тонкие клиенты HP, ну а все данные пользователей были на серверах ;)
— Несколько бухгалтеров успешно работают с USB токенами BIFIT

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


Рис. 1. Шесть поколений тонких клиентов в полном составе. Справа – «прадедушка» (HP t5550) с WinCE, слева – «правнук» тонкого клиента (t530) c Windows 10 IOT, все исправно работают.

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


Рис. 2. Тонкий клиент HP t530 (слева) и его предок HP t5550 (справа). Во всех тонких клиентах используется пассивное охлаждение и в качестве радиатора задействован в том числе и корпус тонкого клиента.

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

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

Для защиты тонких клиентов от внесения нежелательных модификаций в их настройки в операционной системе Windows Embedded вшит функционал защиты от записи на диск, который блокирует попытки сохранения любых настроек и данных на диске тонкого клиента. В Windows Embedded 10 данный фильтр называется Unified Write Filter (UWF), в предыдущих версиях Windows Embedded он именуется как Enhanced Write Filter (EWF).

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

Непосредственно фильтр защиты от записи на тонких клиентах представляет из себя замочек в трее, который горит зеленым, когда он включен (Рис. 3), и красным, когда отключен (Рис. 4). Выключить и включить его может только пользователь с правами администратора через этот же значок в трее (Рис. 5):


Рис. 3. Фильтр защиты от записи включен.


Рис. 4. Фильтр защиты от записи отключен.


Рис. 5. Меню управления фильтром защиты от записи.

С фильтром защиты от записи в Windows Embedded есть одна особенность, связанная с включением тонких клиентов в домен Active Directory. По умолчанию все компьютеры в домене Active Directory раз в 30 дней меняют пароли на свои учетные записи (по сути, это такой же процесс, который проходится проходить пользователям). И если вы введете тонкий клиент в домен и включите на нем фильтр записи, то пароль он автоматически понять сможет, а вот запомнить – нет. Как следствие, при следующей перезагрузке тонкий клиент вывалится из домена, и пользователи не смогут на него зайти. Решается данная проблема отключением в групповых политиках смены паролей на учетных записях тонких клиентов. Естественно, данную политику стоит применять только на тонкие клиенты (Рис. 6):


Рис. 6. Параметры настройки групповой политики для отключения смены пароля операционной системы на тонких клиентах.

Ну и напоследок о практических недостатках фильтра защиты на запись в Windows Embedded. Их два:

Первый недостаток – тонкие клиенты с включенным фильтром защиты от записи нужно периодически перезагружать (раз в неделю-две), потому что в противном случае фильтр записи занимает всю оперативную память, и тонкий клиент начинает тормозить.

Второй недостаток – фильтр записи иногда сам становится причиной сбоя в случае Windows 8.1 Embedded. Судя по всему, в Windows 8.1 Embedded система иногда стартует раньше фильтра и успевает записать какие-то данные на диск до того, как фильтр эту запись оборвет. Когда такое происходит (а может это накопительный эффект – я не исследовал) файловая система на тонком клиенте становится нечитаемой, и операционную систему на тонком клиенте приходится «перезаливать». Данная проблема отсутствует в тонких клиентах под управлением Windows 7 Embedded и Windows 10 Embedded, поэтому мы рекомендуем использовать тонкие клиенты под этими версиями операционной системы.


Рисунок 1

sudo apt update
sudo apt install openssh-server
sudo systemctl status ssh

Для удобства работы по статье установим mc:

sudo apt install mc

sudo apt-get install tftpd-hpa
sudo mkdir /tftpboot

У нас есть папка tftpboot
Выставляем права
sudo chmod -R 777 /tftpboot/
sudo chown -R nobody:nogroup /tftpboot/

Конфигурируем tfttpd-сервер
sudo cp /etc/default/tftpd-hpa /etc/default/tftpd-hpa.backup

файл настройки /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/tftpboot"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="--secure --create"

sudo service tftpd-hpa restart

Установка Thinstation
sudo apt-get install git-core
cd

Сборка образов.

Внимательно изучаем различные источники (источник 1, источник 2, источник 3). Попробуем собрать образ именно для нашей машины.

Внимание! Важно выбрать такой образ тонкого клиента, у которого тот же тип процессора, что и у нашего тонкого клиента. В противном случае образ получается нерабочий.

Приведу пример: у нас Foxconn-5250 и нам образ, собранный для NT-A3500 совершенно не подходит , а подходит NT-535, потому что процессор Intel Atom у нашей модели тонкого клиента (ТК), а не AMD. Что это значит практически?

Собираем из /thinstation/build/conf/default
Копируем файлы: build.conf.example и thinstation.conf.buildtime в папку /thinstation/build

machine NT-535
lshw
e3

openbox
extensions
installer

Собираем образ для загрузки по сети:

sudo -s
cd thinstation
./setup-chroot
cd build
./build --allmodules


Рисунок 2

Соберутся нужные образа для загрузки по сети (рис.2)
cd

Копируем все оттуда в tftpboot
sudo chmod -R 777 /tftpboot/
sudo chown -R nobody:nogroup /tftpboot/

Правим dhcpd.conf на нашем DHCP-сервере для нашего тонкого клиента (надо знать MAC-адрес тонкого клиента и в BIOS поставить загрузку по сети):

он получает ядро (рис.3), формирует файловую систему, видим графическую оболочку (рис.4). Можно посмотреть какие-то параметры системы и ТК (см. рис.5-6)
Можем запустить терминал и запустить команду /bin/hwlister.list
По результату, на нашем TFTP-сервере в /tftpboot появится 1 файл (могло бы быть 3!)
module.list

Рисунок 3 Рисунок 4 Рисунок 5 Рисунок 6

Создаем папку AT-5250 в каталоге /build/machine
Туда копируем этот файл

Теперь будем пробовать подключиться по RDP к Windows Server 2016 (192.168.1.3)

Затем берем 2 файла: build.conf.example и thinstation.conf.buildtime из /build/conf/rdesktop
и меняем 1 строку: добавляем machine AT-5250 в build.conf, одновременно в thinstation.conf.buildtime вставляем такие строки:

SERVER=192.168.1.3
NET_TELNETD_ENABLED=off
TIME_ZONE=Asia/Tomsk

Примечание. По умолчанию в папке /thinstation/usr/share/zoneinfo/Asia нет файла Tomsk, его нужно добавить из /usr/share/zoneinfo/Asia корневой системы.

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


Рисунок 7

Запускаем ТК, в терминале набираем команду: xfreerdp /d:MY_DOMAIN /sec:rdp /v:192.168.1.3

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

build.conf

machine AT-5250
package ts-classic
package ntp
package xorg7-vesa
package locale-en_US
package freerdp
package fonts-misc
package fonts-TTF-liberation
package fonts-cyrillic
package fonts-Speedo-Bitstream
package fonts-TTF-BH
package fonts-TTF-vera
package fonts-100dpi-Adobe
package fonts-100dpi-Adobe-Utopia
package fonts-100dpi-BH
package fonts-100dpi-BH-Typewriter
package fonts-100dpi-Bitstream

param rootpasswd MYPASSWORD
param xorgvncpasswd MYPASSWORD
param bootlogo true
param boottheme default
param splash silent
param fbmtrr 0
param fbsm ywrap

param desktop file:./backgrounds/Hive_Lite.jpg
param defaultconfig thinstation.conf.buildtime
param basename thinstation
param basepath ts5.0
param baseurl http://www.doncuppjr.net
param fulllocales true
param haltonerror false
param hardlinkfs true
param sametimestmp true
param initrdcmd "gzip -9"
param bootverbosity 3

param downloads /downloads
param bootimages "iso syslinux pxe"
param syslinuxtheme "default"
param allres true

thinstation.conf.buildtime

Собираем с помощью этих файлов окончательный вариант образа и работаем на тонких клиентах с терминальным сервером.

Grattis - партнерская программа по продаже голосовых поздравлений


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

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

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

Для успешной работы тонкого клиента не нужен жесткий диск, достаточно 1 мегабайта оперативной памяти, простейшей видеокарты и слабого процессора. Основная работа происходит в другом месте и терминалу нужно лишь отобразить на конкретном месте эту работу. Монитор показывает, а мышка и клавиатура управляют процессом.

Теперь технические нюансы. Для того, чтобы тонкий клиент начал функционировать, используются специальные программы, которые производят первоначальную загрузку и подключение к серверу терминалов. Большинство таких программ - бесплатные. Из моего опыта могу порекомендовать решение от ООО "ИТ Консультант", просто, адаптировано и есть форум поддержки. Легко настраивается и управляется.

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

Устанавливаем на сервере, через установку компонентов windows Remote Installation Service, при этом конфигурирование оставляем на потом. Дальше редактируем реестр, нужный нам путь - HKLM\System\CurrentControlSet\Services\Tftpd\Parameters\Directory, тип ключа REG_SZ, значение "C:\tftpboot". Это наша папка с загрузкой тонкого клиента. После этого открываем службы, находим Trivial FTP Daemon, ставим тип запуска АВТО и запускаем службу.

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

003 Router 192.168.1.2
006 DNS Servers 192.168.1.1, 192.168.5.1
066 Boot Server Host Name 192.168.1.5
067 Bootfile Name pxelinux.0

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

Читайте также: