Настройка терминального сервера RDP для работы с 1С: различия между версиями
Misha (обсуждение | вклад) (→Компиляция пакетов XRDP) |
Misha (обсуждение | вклад) (→Еще некоторые ссылки) |
||
(не показано 18 промежуточных версий этого же участника) | |||
Строка 9: | Строка 9: | ||
#Делаем все обновления. | #Делаем все обновления. | ||
<pre>sudo apt update && sudo apt upgrade -y && reboot</pre> | <pre>sudo apt update && sudo apt upgrade -y && reboot</pre> | ||
− | Установим mc | + | Установим mc и git |
− | <pre>sudo apt install mc</pre> | + | <pre>sudo apt install mc git</pre> |
==Настраиваем сеть.== | ==Настраиваем сеть.== | ||
− | + | Находим название сетевого интерфейса | |
− | + | <pre>$ ifconfig | |
+ | enp0s3 Link encap:Ethernet HWaddr 08:00:27:58:54:bb | ||
+ | inet addr:172.16.130.143 Bcast:172.16.130.255 Mask:255.255.255.0 | ||
+ | inet6 addr: fe80::a00:27ff:fe58:54bb/64 Scope:Link | ||
+ | UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 | ||
+ | RX packets:3423 errors:0 dropped:0 overruns:0 frame:0 | ||
+ | TX packets:878 errors:0 dropped:0 overruns:0 carrier:0 | ||
+ | collisions:0 txqueuelen:1000 | ||
+ | RX bytes:1989544 (1.9 MB) TX bytes:84171 (84.1 KB) | ||
+ | |||
+ | 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:65536 Metric:1 | ||
+ | RX packets:166 errors:0 dropped:0 overruns:0 frame:0 | ||
+ | TX packets:166 errors:0 dropped:0 overruns:0 carrier:0 | ||
+ | collisions:0 txqueuelen:1 | ||
+ | RX bytes:12178 (12.1 KB) TX bytes:12178 (12.1 KB) | ||
+ | </pre> | ||
+ | В нашем случае - это '''enp0s3'''<br> | ||
+ | <pre>$ sudo nano /etc/network/interfaces | ||
+ | |||
+ | auto enp0s3 | ||
iface enp0s3 inet static | iface enp0s3 inet static | ||
address 172.16.130.99 | address 172.16.130.99 | ||
Строка 21: | Строка 43: | ||
dns-nameservers 172.16.130.1 8.8.8.8 | dns-nameservers 172.16.130.1 8.8.8.8 | ||
</pre> | </pre> | ||
− | Перезапускам сетевой интерфейс и проверяем настройки сети: | + | Перезапускам сетевой интерфейс и проверяем настройки сети:<br> |
+ | Самое смешное, что поменять ip адрес без перезагрузки, я так и не смог. Если у получится - напишите на misha@volmed.org.ru. Буду признателен. | ||
<pre>sudo ifdown -a && sudo ifup -a | <pre>sudo ifdown -a && sudo ifup -a | ||
$ifconfig | $ifconfig | ||
Строка 46: | Строка 69: | ||
<pre>sudo apt install xubuntu-desktop</pre> | <pre>sudo apt install xubuntu-desktop</pre> | ||
==Компиляция пакетов XRDP== | ==Компиляция пакетов XRDP== | ||
− | Для | + | Для создания пакетов для установки и установки XRDP используем специальную программку x11rdp-o-matic.<br> |
− | <pre>cd ~/install/X11RDP-o-Matic- | + | Информацию по ключам установки, можно посмотреть [http://scarygliders.net/x11rdp-o-matic-information/ тут] |
+ | <pre>cd ~ | ||
+ | mkdir install | ||
+ | cd ~/install | ||
+ | git clone https://github.com/scarygliders/X11RDP-o-Matic.git | ||
+ | cd X11RDP-o-Matic | ||
sudo su | sudo su | ||
− | ./X11rdp-o-matic.sh –justdoit</pre> | + | ./X11rdp-o-matic.sh –justdoit --cleanup</pre> |
стартует долгий процесс скачивания, проверки и компиляции модулей для xrdp, обязательно нужно дождаться завершения процедуры.<br> | стартует долгий процесс скачивания, проверки и компиляции модулей для xrdp, обязательно нужно дождаться завершения процедуры.<br> | ||
После сборки пакетов, в папке /X11RDP-o-Matic/packages/ лежат уже готовые собранные пакеты x11rdp_X.X.X-X_amd64.deb, xrdp_X.X.X-X_amd64.deb, пригодятся при переинсталированнии сервера без необходимости еще раз компилировать и собирать xrdp из исходников.<br> | После сборки пакетов, в папке /X11RDP-o-Matic/packages/ лежат уже готовые собранные пакеты x11rdp_X.X.X-X_amd64.deb, xrdp_X.X.X-X_amd64.deb, пригодятся при переинсталированнии сервера без необходимости еще раз компилировать и собирать xrdp из исходников.<br> | ||
Строка 55: | Строка 83: | ||
<pre>sudo /etc/init.d/xrdp restart | <pre>sudo /etc/init.d/xrdp restart | ||
netstat -lntp |grep 3389</pre> | netstat -lntp |grep 3389</pre> | ||
− | + | ===Ошибки и их устранение=== | |
+ | ==== ==== | ||
+ | Сервис не стартовал, выдав такую строку. | ||
<pre>$ sudo service xrdp restart | <pre>$ sudo service xrdp restart | ||
A dependency job for xrdp.service failed. See 'journalctl -xe' for details. | A dependency job for xrdp.service failed. See 'journalctl -xe' for details. | ||
</pre> | </pre> | ||
+ | '''Решение''' | ||
Решение нашел [http://blog.bachi.net/?p=3538 тут]<br> | Решение нашел [http://blog.bachi.net/?p=3538 тут]<br> | ||
− | Меняем строку /etc/sysconfig/xrdp на /etc/default/xrdp в файлах /lib/systemd/system/xrdp.service и /lib/systemd/system/xrdp-sesman.service.<br> | + | Меняем строку |
+ | <pre>EnvironmentFile=/etc/sysconfig/xrdp</pre> | ||
+ | на | ||
+ | <pre>EnvironmentFile=/etc/default/xrdp</pre> | ||
+ | в файлах '''/lib/systemd/system/xrdp.service''' и '''/lib/systemd/system/xrdp-sesman.service.'''<br> | ||
После этого | После этого | ||
<pre> | <pre> | ||
Строка 68: | Строка 103: | ||
# systemctl daemon-reload | # systemctl daemon-reload | ||
# service xrdp start | # service xrdp start | ||
+ | # netstat -lntp |grep 3389 | ||
</pre> | </pre> | ||
+ | |||
+ | ==== ==== | ||
+ | При вводе | ||
+ | <pre>$ sudo service xrdp restart</pre> | ||
+ | Выдавало строку | ||
+ | <pre>sudo: /etc/init.d/xrdp: команда не найдена</pre> | ||
+ | '''Решение''' | ||
+ | <pre>sudo cp /home/misha/install/X11RDP-o-Matic/work/xrdp/instfiles/init.d/xrdp /etc/init.d/ | ||
+ | sudo chmod +755 /etc/init.d/xrdp</pre> | ||
+ | ==== ==== | ||
+ | После очередной инсталляции, клиенты перестали подключаться к серверу. В файле /var/log/xrdp.log появились строки | ||
+ | <pre>[20160902-10:01:31] [CORE ] WARNING: Invalid x.509 certificate path defined, default path will be used: /etc/xrdp/cert.pem | ||
+ | [20160902-10:01:31] [CORE ] WARNING: Invalid x.509 certificate path defined, default path will be used: /etc/xrdp/key.pem | ||
+ | [20160902-10:01:31] [CORE ] XRDP cannot read file: /etc/xrdp/rsakeys.ini (check permissions)</pre> | ||
+ | '''Решение'''<br> | ||
+ | Решение нашел [[http://scarygliders.net/2014/03/19/x11rdp-o-matic-version-3-10-released/ тут]] | ||
+ | Выполняем в консоли команду | ||
+ | <pre>$sudo xrdp-keygen xrdp /etc/xrdp/rsakeys.ini</pre> | ||
+ | ===Добавление в автозагрузку=== | ||
Ставим xrdp в автозагрузку: | Ставим xrdp в автозагрузку: | ||
<pre>sudo update-rc.d xrdp defaults | <pre>sudo update-rc.d xrdp defaults | ||
Строка 75: | Строка 130: | ||
==Установка модуля HASP== | ==Установка модуля HASP== | ||
− | Идем [http://download.etersoft.ru/pub/Etersoft/HASP/ | + | Модули HASP для Uuntu 16.04 выпушены только для 32 разрядных систем. Для того что бы они работали в 64 разрядной системе, делаем следующее |
+ | <pre>sudo su | ||
+ | dpkg --add-architecture i386 | ||
+ | apt update && sudo apt upgrade | ||
+ | apt-get -f install | ||
+ | apt install login:i386 | ||
+ | apt install make:i386 | ||
+ | apt install libusb-1.0.0 | ||
+ | </pre> | ||
+ | Идем [http://download.etersoft.ru/pub/Etersoft/HASP/last/Ubuntu/16.04/ сюда] и качаем пакеты HASP для нашей версии ubuntu | ||
<pre>cd ~ | <pre>cd ~ | ||
mkdir /hasp | mkdir /hasp | ||
cd hasp | cd hasp | ||
− | + | wget http://download.etersoft.ru/pub/Etersoft/HASP/last/Ubuntu/16.04/haspd_7.40-eter9ubuntu_i386.deb | |
− | wget http://download.etersoft.ru/pub/Etersoft/HASP/ | + | wget http://download.etersoft.ru/pub/Etersoft/HASP/last/Ubuntu/16.04/haspd-modules_7.40-eter9ubuntu_i386.deb |
</pre> | </pre> | ||
Устанавливаем пакеты | Устанавливаем пакеты | ||
− | <pre> | + | <pre>dpkg -i haspd-modules_7.40-eter9ubuntu_i386.deb |
− | + | dpkg -i haspd_7.40-eter9ubuntu_i386.deb</pre> | |
+ | Мне еще пришлось повозиться, что бы HASP заработал. Напишу что делал чуть позже. Пока же инет Вам в руки.<br> | ||
Проверяем работу модуля | Проверяем работу модуля | ||
− | <pre> | + | <pre>service haspd restart |
− | + | service haspd status | |
− | + | exit | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
</pre> | </pre> | ||
− | Если вставляете HASP уже после загрузки сервера, перезапустите демон | + | Если вставляете HASP уже после загрузки сервера, перезапустите демон haspd |
<pre>service haspd restart</pre> | <pre>service haspd restart</pre> | ||
Строка 144: | Строка 192: | ||
setxkbmap -layout "us,ru" -model "pc105" -option "grp:alt_shift_toggle,grp_led:scroll"</pre> | setxkbmap -layout "us,ru" -model "pc105" -option "grp:alt_shift_toggle,grp_led:scroll"</pre> | ||
И запускаю его, после входа в терминал. | И запускаю его, после входа в терминал. | ||
+ | ==Как быстро снять подвисшую сессию и все процессы пользователя== | ||
+ | Можно одной командой снять сессию и все процессы связанные с данным пользователем. Такой способ снятия очень быстрый и эффективный: | ||
+ | <pre> | ||
+ | /usr/bin/killall -9 -u ИмяПользователя | ||
+ | </pre> | ||
+ | Взято [https://corp2.info/snyatie-terminalnoj-sessii-polzovatelya-v-xrdp-linux-i-1c-456.html тут]. | ||
==Еще некоторые ссылки== | ==Еще некоторые ссылки== | ||
#[http://corp2.info/nastrojka-zvuka-v-xrdp-dlya-linux-ubuntu-109.html Настройка звука в XRDP для Linux Ubuntu] | #[http://corp2.info/nastrojka-zvuka-v-xrdp-dlya-linux-ubuntu-109.html Настройка звука в XRDP для Linux Ubuntu] |
Текущая версия на 21:20, 15 декабря 2016
Статья в разработке
Взято тут и тут
Встал выбор при обновлении сервера 1С: Или покупать Windows 2012R2 + Клиентские + терминальные лицензии. Итого около 100круб или настроить терминальный сервер под Linux. Благо компания 1С выпустила версию под него.
Статей в инете очень много, но я попытаюсь обобщить свой опыт.
И так начнем.
Содержание
Установка ОС
- Для ОС выбираем 16.04 server)
- Устанавливаем ОС.
- Делаем все обновления.
sudo apt update && sudo apt upgrade -y && reboot
Установим mc и git
sudo apt install mc git
Настраиваем сеть.
Находим название сетевого интерфейса
$ ifconfig enp0s3 Link encap:Ethernet HWaddr 08:00:27:58:54:bb inet addr:172.16.130.143 Bcast:172.16.130.255 Mask:255.255.255.0 inet6 addr: fe80::a00:27ff:fe58:54bb/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:3423 errors:0 dropped:0 overruns:0 frame:0 TX packets:878 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:1989544 (1.9 MB) TX bytes:84171 (84.1 KB) 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:65536 Metric:1 RX packets:166 errors:0 dropped:0 overruns:0 frame:0 TX packets:166 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1 RX bytes:12178 (12.1 KB) TX bytes:12178 (12.1 KB)
В нашем случае - это enp0s3
$ sudo nano /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
Перезапускам сетевой интерфейс и проверяем настройки сети:
Самое смешное, что поменять ip адрес без перезагрузки, я так и не смог. Если у получится - напишите на misha@volmed.org.ru. Буду признателен.
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)
Устанавливаем графический стол Xubuntu
sudo apt install xubuntu-desktop
Компиляция пакетов XRDP
Для создания пакетов для установки и установки XRDP используем специальную программку x11rdp-o-matic.
Информацию по ключам установки, можно посмотреть тут
cd ~ mkdir install cd ~/install git clone https://github.com/scarygliders/X11RDP-o-Matic.git cd X11RDP-o-Matic sudo su ./X11rdp-o-matic.sh –justdoit --cleanup
стартует долгий процесс скачивания, проверки и компиляции модулей для 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
Ошибки и их устранение
Сервис не стартовал, выдав такую строку.
$ sudo service xrdp restart A dependency job for xrdp.service failed. See 'journalctl -xe' for details.
Решение
Решение нашел тут
Меняем строку
EnvironmentFile=/etc/sysconfig/xrdp
на
EnvironmentFile=/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 # netstat -lntp |grep 3389
При вводе
$ sudo service xrdp restart
Выдавало строку
sudo: /etc/init.d/xrdp: команда не найдена
Решение
sudo cp /home/misha/install/X11RDP-o-Matic/work/xrdp/instfiles/init.d/xrdp /etc/init.d/ sudo chmod +755 /etc/init.d/xrdp
После очередной инсталляции, клиенты перестали подключаться к серверу. В файле /var/log/xrdp.log появились строки
[20160902-10:01:31] [CORE ] WARNING: Invalid x.509 certificate path defined, default path will be used: /etc/xrdp/cert.pem [20160902-10:01:31] [CORE ] WARNING: Invalid x.509 certificate path defined, default path will be used: /etc/xrdp/key.pem [20160902-10:01:31] [CORE ] XRDP cannot read file: /etc/xrdp/rsakeys.ini (check permissions)
Решение
Решение нашел [тут]
Выполняем в консоли команду
$sudo xrdp-keygen xrdp /etc/xrdp/rsakeys.ini
Добавление в автозагрузку
Ставим xrdp в автозагрузку:
sudo update-rc.d xrdp defaults sudo update-rc.d xrdp enable exit
Установка модуля HASP
Модули HASP для Uuntu 16.04 выпушены только для 32 разрядных систем. Для того что бы они работали в 64 разрядной системе, делаем следующее
sudo su dpkg --add-architecture i386 apt update && sudo apt upgrade apt-get -f install apt install login:i386 apt install make:i386 apt install libusb-1.0.0
Идем сюда и качаем пакеты HASP для нашей версии ubuntu
cd ~ mkdir /hasp cd hasp wget http://download.etersoft.ru/pub/Etersoft/HASP/last/Ubuntu/16.04/haspd_7.40-eter9ubuntu_i386.deb wget http://download.etersoft.ru/pub/Etersoft/HASP/last/Ubuntu/16.04/haspd-modules_7.40-eter9ubuntu_i386.deb
Устанавливаем пакеты
dpkg -i haspd-modules_7.40-eter9ubuntu_i386.deb dpkg -i haspd_7.40-eter9ubuntu_i386.deb
Мне еще пришлось повозиться, что бы HASP заработал. Напишу что делал чуть позже. Пока же инет Вам в руки.
Проверяем работу модуля
service haspd restart service haspd status exit
Если вставляете HASP уже после загрузки сервера, перезапустите демон haspd
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"
И запускаю его, после входа в терминал.
Как быстро снять подвисшую сессию и все процессы пользователя
Можно одной командой снять сессию и все процессы связанные с данным пользователем. Такой способ снятия очень быстрый и эффективный:
/usr/bin/killall -9 -u ИмяПользователя
Взято тут.
Еще некоторые ссылки
- Настройка звука в XRDP для Linux Ubuntu
- Решение проблемы запуска сессий новых пользователей в XRDP
- Генерация штрих-кода для вставки его в 1С при работе в Linux
- Генерация изображения штрих-кода в 1С при работе в Linux.
- Вывод отладочной информации запуска 1С8.3 в Linux
- Настройка окружения LXDE для терминальных пользователей XRDP в Linux Ubuntu
- Создание кросс-платформенной и кросс-браузерной карты Google, выводящей много точек через 1С
- Снятие терминальной сессии пользователя в XRDP (Linux) и 1C
- Простейший способ создания штрих-кода в формате PNG из командной строки в Linux Ubuntu