Настройка терминального сервера RDP для работы с 1С
Статья в разработке
Взято тут и тут
Встал выбор при обновлении сервера 1С: Или покупать Windows 2012R2 + Клиентские + терминальные лицензии. Итого около 100круб или настроить терминальный сервер под Linux. Благо компания 1С выпустила версию под него.
Статей в инете очень много, но я попытаюсь обобщить свой опыт.
И так начнем.
Содержание
Установка ОС
- Для ОС выбираем 16.04 server)
- Устанавливаем ОС.
- Делаем все обновления.
sudo apt update && sudo apt upgrade -y && reboot
Установим mc
sudo apt install mc
Настраиваем сеть.
Правим /etc/network/interfaces:
auto enp0s3 iface enp0s3 inet static address 172.16.130.99 netmask 255.255.255.0 gateway 172.16.130.25 dns-nameservers 172.16.130.1 8.8.8.8
Перезапускам сетевой интерфейс и проверяем настройки сети:
sudo ifdown -a && sudo ifup -a $ifconfig eth0 Link encap:Ethernet HWaddr xx:xx:xx:xx:xx:xx inet addr:172.16.130.99 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: xxxx:xxxx:xxxx:xxxx:xxxx:xxxx/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:126785 errors:0 dropped:0 overruns:0 frame:0 TX packets:135453 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:116474217 (116.4 MB) TX bytes:102473947 (102.4 MB) lo Link encap:Локальная петля (Loopback) inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:104371 errors:0 dropped:0 overruns:0 frame:0 TX packets:104371 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:720253620 (720.2 MB) TX bytes:720253620 (720.2 MB)
Компиляция пакетов XRDP
Устанавливаем недостающие пакеты
sudo apt-get install subversion libtool automake automake1.9 git libssl-dev libpam0g-dev libx11-dev libxfixes-dev xxkb libpam-mount clamtk \ python-software-properties pulseaudio-esound-compat paprefs git lib32z1 -y
С сайта http://scarygliders.net/ берем адрес скрипта для автоматической компиляции XRDP из исходников самой последней доступной версии.
git clone https://github.com/scarygliders/X11RDP-o-Matic.git
создается в домашнем каталоге папка X11RDP-o-Matic
Для 16.04 я скачивал архив пропаченного пакета с https://github.com/metalefty/X11RDP-o-Matic/tree/ubuntu-16.04 и распаковывал его в папку ~/install/
cd X11RDP-o-Matic sudo su ./X11rdp-o-matic.sh –justdoit
Для 16.04
cd ~/install/X11RDP-o-Matic-ubuntu-16.04 sudo su ./X11rdp-o-matic.sh –justdoit
стартует долгий процесс скачивания, проверки и компиляции модулей для xrdp, обязательно нужно дождаться завершения процедуры.
После сборки пакетов, в папке /X11RDP-o-Matic/packages/ лежат уже готовые собранные пакеты x11rdp_X.X.X-X_amd64.deb, xrdp_X.X.X-X_amd64.deb, пригодятся при переинсталированнии сервера без необходимости еще раз компилировать и собирать xrdp из исходников.
Проверяем установку xrdp:
sudo /etc/init.d/xrdp restart netstat -lntp |grep 3389
В 16.04 сервис не стартовал, выдав такую строку.
$ sudo service xrdp restart A dependency job for xrdp.service failed. See 'journalctl -xe' for details.
Решение нашел тут
Меняем строку /etc/sysconfig/xrdp на /etc/default/xrdp в файлах /lib/systemd/system/xrdp.service и /lib/systemd/system/xrdp-sesman.service.
После этого
# service xrdp start Warning: xrdp.service changed on disk. Run 'systemctl daemon-reload' to reload units. A dependency job for xrdp.service failed. See 'journalctl -xe' for details. # systemctl daemon-reload # service xrdp start
Ставим xrdp в автозагрузку:
sudo update-rc.d xrdp defaults sudo update-rc.d xrdp enable exit
Установка модуля HASP
Идем сюда и качаем пакеты HASP для нашей версии xubuntu
cd ~ mkdir /hasp cd hasp wget wget http://download.etersoft.ru/pub/Etersoft/HASP/3.3/x86_64/Ubuntu/14.04/haspd-modules_3.3-eter10ubuntu_amd64.deb wget http://download.etersoft.ru/pub/Etersoft/HASP/3.3/x86_64/Ubuntu/14.04/haspd_3.3-eter10ubuntu_amd64.deb
Устанавливаем пакеты
sudo dpkg -i haspd_3.3-eter10ubuntu_amd64.deb sudo dpkg -i haspd-modules_3.3-eter10ubuntu_amd64.deb
Проверяем работу модуля
sudo /etc/init.d/haspd restart Stopping hasplmd... [PASSED] Stopping hasplm... [PASSED] Stopping winehasp... [PASSED] Stopping aksusbd... [PASSED] Stopping skeyd... [PASSED] Stopping usbsentinel... [PASSED] Stopping SntlKeysSrvrlnx... [PASSED] Stopping workaround for /proc/bus/usb [ DONE ] Unloading HASP LPT kernel module... [PASSED] Loading HASP LPT kernel module... (/dev/lp0 device has not found) [PASSED] Check kernel for CONFIG_USB_DEVICEFS... [PASSED] Enable workaround for /proc/bus/usb (bind from /dev/bus/usb) [ DONE ] [ DONE ] Running aksusbd... [ DONE ] Running winehasp... [ DONE ] Running hasplm... [ DONE ] Running hasplmd... [ DONE ] We have no built usbkeytest, so run all possible services Running skeyd... [ DONE ]
Если вставляете HASP уже после загрузки сервера, перезапустите демон hasp
service haspd restart
Установка 1С
Распаковываем файлы deb64.tar.gz и client.deb64.tar.gz из дистрибутива 1С 8.3 в одну папку.
Устанавливаем:
sudo dpkg -i 1c*.deb sudo apt-get -f install sudo apt-get install ttf-mscorefonts-installer sudo apt-get install imagemagick
До настройка системы
Добавляем индикатор клавиатуры в верхнюю панель.
Правая кнопка мыши по панели. Выбираем Панель -> Параметры панели
Вкладка Элементы. Жмем Плюс и добавляем Раскладки клавиатуры.
Добавляем иконки
В панели нажимаем кнопку списка программ (самая левая в панели) и в поиске напираем 1С. И перетаскиваем иконку 1С клиент на рабочий стол.
Таким же образом добавляем все нужные программы на рабочий стол.
Настраиваем «скелеты» для пользователей
Выполняем с правами рута
cd /home/Настроенный_Пользователь cp -R -f -b .config/ /etc/skel/ # настройки lxde cp -R -f -b Рабочий\ стол/ /etc/skel/ # Содержимое рабочего стола
Добавляем пользователей терминалов
sudo adduser term1 sudo adduser term2
Пароли при добавлении пользователей лучше создавать цифровыми, тк иногда может не переключаться раскладка клавиатуры в окне входа терминала.
Решение проблемы с раскладкой
После входа на компьютер через терминал не переключается раскладка клавиатуры. Пробовал добавить строку:
setxkbmap -layout "us,ru" -model "pc105" -option "grp:alt_shift_toggle,grp_led:scroll"
в файл /etc/X11/Xsession после строки: set -e - не получилось.
Пока сделал костыль: На рабочем столе создал файл klav.sh
#!/bin/sh setxkbmap -layout "us,ru" -model "pc105" -option "grp:alt_shift_toggle,grp_led:scroll"
И запускаю его, после входа в терминал.
Еще некоторые ссылки
- Настройка звука в XRDP для Linux Ubuntu
- Решение проблемы запуска сессий новых пользователей в XRDP
- Генерация штрих-кода для вставки его в 1С при работе в Linux
- Генерация изображения штрих-кода в 1С при работе в Linux.
- Вывод отладочной информации запуска 1С8.3 в Linux
- Настройка окружения LXDE для терминальных пользователей XRDP в Linux Ubuntu
- Создание кросс-платформенной и кросс-браузерной карты Google, выводящей много точек через 1С
- Снятие терминальной сессии пользователя в XRDP (Linux) и 1C
- Простейший способ создания штрих-кода в формате PNG из командной строки в Linux Ubuntu