Терминальный сервер для 1с под linux

Терминальный сервер 1С под Linux

Создаём терминальный сервер 1C под Ubuntu Linux. 1С официально предоставляет пакеты rpm и поэтому наилучший вариант для терминального сервера — это rpm дистрибутивы Linux, например CentOS. Данная статья призвана помочь тем, кто по ряду причин использует дистрибутивы Linux, основанные на пакете deb.
Терминальный сервер позволит запускать 1С множеству пользователей, которые будут использовать базу 1С локально, чем достигнеться большая скорость работы 1С и безопасность.
Терминальный сервер 1С под Linux дешевле терминального сервера 1С под MS Windows, из-за дороговизны последней и её клиентских и терминальных лицензий.

Вышла 1С с полной поддержкой Linux и данная статья перестала быть актуальной.

Схема терминального сервера 1C под Linux.

Установка FreeNX.

Добавить репозиторий FreeNX. Читаем и пользуемся FreeNX. Кратко так:
sudo nano /etc/apt/sources.list
Заменить VERSION на имя своего дистрибутива Ubuntu.
deb http://ppa.launchpad.net/freenx-team/ppa/ubuntu VERSION main

добавляем ключ 2a8e3034d018a4ce, если со временем ключ измениться, то apt-get update напомнит вам об этом
sudo apt-key adv —recv-keys —keyserver keyserver.ubuntu.com 2a8e3034d018a4ce
sudo apt-get update
sudo apt-get install freenx

Настройка SSH.

Нужно сменить дефолтный порт 22 на другой, например 8888 в целях дополнительной безопасности.
Читаем дальше FreeNX. Кратко так
sudo nano /etc/ssh/sshd_config
меняем Port 22 на Port 8888 и рестартуем ssh
/etc/init.d/ssh restart

Настройка FreeNX.

Указываем FreeNX использовать порт 8888 вместо 22
sudo nano /etc/nxserver/node.conf . Находим SSHD_PORT=22 и меняем на SSHD_PORT=8888 и убираем комментарий #
Убираем комментарий у параметра ENABLE_PASSDB_AUTHENTICATION и меняем 0 на 1
ENABLE_PASSDB_AUTHENTICATION=»1″ . Этим мы разрешаем аутентификацию при помощи базы паролей nxserver.

Изменяем параметр ENABLE_SHOW_RUNNING_SESSIONS с 1 на 0 и убираем комментарий #.
ENABLE_SHOW_RUNNING_SESSIONS=»0″ . При этом будет автоматом запускаться новый сеанс, а при наличии приостановленных сессий — будет выводиться окошко со списком этих самых сессий. После изменений перезапускаем службу nxserver sudo nxserver —restart

Добавление пользователей.

Нужно добавить системных пользователей с помощью adduser buh1 и терминальных пользователей в базу nxserver с помощью sudo nxserver —adduser buh1 . Чтобы не было проблем, лучше чтобы имена и пароли совпадали! Например,
#adduser buh1
…. вбили пароль pass1
#sudo nxserver —adduser buh1
…. вбили пароль pass1
Cменить пароль системному пользователю можно с помощью passwd, например passwd buh1 . Терминальному пользователю можно сменить пароль так, nxserver —passwd buh1 . Следить за одинаковостью паролей!

Установка wine@Etersoft.

Ставить нужно пакеты wine*.deb и libwine*.deb от EterSoft. Так же необходима реализация CIFS (протокол виндовых шар) etercifs*.deb, при смене ядер убунту, нужна переустановка пакета etercifs*.deb, так как DKMS там не используется.

Настройка wine@Etersoft.

В этом месте много читать отсюда etersoft.ru/products/wine/manual/
Прежде всего потребуется определить пользователя, который будет администратором WINE. Этого пользователя нужно добавить в группу wineadmin (такая группа создаётся при установке WINE).
Технически в группу wineadmin могут входить несколько пользователей. В этом случае все они смогут равноправно изменять общее win-окружение. Хорошим решением будет создать отдельную учётную запись, которая будет играть роль администратора WINE.

При работе нескольких администраторов с общим win-окружением следует избегать одновременного изменения данных в нём (установки/удаления программ и т. п.). Это может привести к возникновению конфликтов и ошибок в реестре win-окружения.

Читайте также:  Набор драйвера для windows 10 64 bit

После того как администратор WINE определён, следует создать каталог, который будет играть роль общего win-окружения. Рекомендуется в качестве общего каталога использовать /var/lib/wine/default. При установке пакета wine сразу создаётся /var/lib/wine с необходимыми правами (root:wineadmin rw-rw-r—), позволяющими администратору WINE создавать там каталоги.
Подготовка административной системы выполняется командой wine —admin /путь/к/общему/каталогу. Если на момент выполнения этой команды указанного каталога ещё не существует, он будет создан. Если выполнить эту команду без указания каталога, будет использован каталог по умолчанию /var/lib/wine/default.

После настройки среды через wine —admin администратор устанавливает необходимые программы обычным способом. Чтобы пользователи по умолчанию подключались к общему win-окружению при первом запуске, следует воспользоваться настройками в файле /etc/wine/config:
ATTACH_MODE=»yes» # включает режим общего win-окружения
WINEADMIN=»default» # путь к общему win-окружению

Подробно о каталоге с базами 1С.

Читать об этом etersoft.ru/products/wine/manual/. Пример привожу для каталога /1c/bases. Права нужно выставить следующие:
#chmod 2770 /1c/bases

Чтобы все создаваемые в нём файлы принадлежали той же группе, что и каталог, а не группе создавшего файл пользователя. Владельца и группу можно выставить так
#chown -R vasilisc:1c /1c/bases/
Группа 1с — это созданная в /etc/group группа, в которую включены все пользователи, которые будут запускать 1с в терминале.

Настройка Samba и CIFS от Etersoft.

Читать etersoft.ru/products/wine/manual/. Кратко все сводится к тому, что пользователи в терминале будут работать с БД 1С через CIFS, то есть как бы через сеть, хотя базы лежат на этом же компьютере. Только таким способом блокировки будут нормально работать. Необходимо для работы CIFS поставить etercifs_*.deb.
Оптимальные настройки Самбы в /etc/samba/smb.conf
kernel oplocks = no
use sendfile = yes
log level = 0
Папка, расшаренная в доступ по сети, должна быть описана примерно так
[1c_bases]
path = /1c
public = yes
force user = vasilisc
force group = 1c
writeable = yes
guest ok = yes
Параметры force* заставляют самбу создавать и читать файлы от заданного пользователя. Терминальные пользователи должны юзать базы через CIFS и для этого нужно каталог, расшаренный самбой, примонтировать в каталог и использовать этот каталог как хранилище 1С. Делаем это примерно так mount -t cifs //192.168.0.120/1c_bases /1c_cifs -o noperm,user=vasilisc,forcedemand,direct
Подробнее о монтировании папки в локальный каталог для терминальных пользователей читать etersoft.ru/products/wine/manual/. Параметры forcedemand, direct ОБЯЗАТЕЛЬНЫ для корректной работы блокировок.

Проверка работоспособности 1С под wine@etersoft

Проверена работа под wine@etersoft следующих компонент:
1. USB сканер штрих-кодов
2. печать в терминале на USB принтере
3. шрифт, изображающий штрих-коды
4. компонент для 1С — Библиотечный модуль печати налоговых документов с двухмерных штриховым кодом PDF417.

Настройка Xfce в NX.

Можно заменить среду на легковесный Xfce, чтобы меньше занимать ресурсы терминального сервера. Для этого выставить в свойствах соединения Custom и далее exec xfce4-session . KDE и Gnome выставляются там же с помощью соответствующих пунктов.

Изображение иллюстрирует работу в 1С (файловый режим) в терминале под управлением Linux, терминальная сессия запущена из ОС MS Windows XP. Можно запустить терминальную сессию под Linux и не тратить деньги на рабочих местах.

Рассмотреть другие схемы запуска 1C под Linux и цены можно в статье «1С под Linux»

Источник

1С под Linux.

Можно сэкономить на платформе 1С, благодаря установке 1С на Linux, а не MS Windows. Серверные MS Windows очень дорогие программные продукты и вместе с расходами на 1С составляют внушительную сумму. 1С бывают в версии: Клиент-Серверная SQL версия и Файловая версия. Рассмотрим эти версии 1С под Linux, а так же различные гибридные варианты.

Вышла 1С с полной поддержкой Линукс и данная статья перестала быть актуальной.

Оглавление

Как сэкономить на ИТ?
Кратко. Нужно запускать платформу 1С не в операционной системе MS Windows Server, а на бесплатных серверах Linux.
Подробно:

Читайте также:  Как задать собственное разрешение экрана windows 10

Терминальное решение 1С под Linux

Описание

В данном разделе мы рассмотрим теоретические выкладки, плюсы и минусы терминального решения для 1С. Практические инструкции как поднять такой сервер можно получить в статье Терминальное решение 1С под Linux
Терминал — образно говоря, это когда клиент работает на сервере удаленно, как на своем компьютере. Сервер предоставляет свои ресурсы и производит все необходимые вычисления, к клиенту передаются лишь «экраны».
Плюсы Терминального решения:
1. Высокая скорость. 1С работает с локальной базой данных.
2. Готовность. При проблемах с сетью пользователь всегда может вернуться в сохраненную сессию и продолжить работу с прерванного места.
3. Безопасность. Пользователю передаются по шифрованному каналу сети только изменения “экранов”, поэтому нельзя украсть базу данных 1С.
4. Низкая цена 1С. Файловый режим дешевле клиент-серверного.
5. При плохих соединениях сетей филиалов с центральной базой 1С, Терминальное решение может оказаться единственным решением.

Минусы Терминального решения:
1. Высокая цена терминальных лицензий на платформе MS Windows Server, необходимо приобрести на каждого клиента 1 лицензию CAL и 1 лицензию TS CAL.

Разница в ценах

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

1) Цена взята для Microsoft Windows Server Standard Edition 2008
2) Цена взята для Windows Server CAL 2008 Russian MLP 5 Device CAL. Так как мы рассчитываем для 10 пользователей сумму умножаем на 2.
3) Цена взята для Win Trmnl Svcs CAL 2008 English MLP 5 User CAL . Так как мы рассчитываем для 10 пользователей сумму умножаем на 2.
4) Подсчитано калькулятором стоимости 1С по адресу eprof.ru. Выбрана 1С:Бухгалтерия в Файловом режиме работы + лицензия на 10 рабочих мест.
5) Стоимость продукта «WINE@Etersoft CIFS — 0 руб. Стоимость Linux берем за 0 руб.

Схема Терминального решения 1С под Linux

Разница в терминальных решениях на платформе MS Windows и Linux равна 62 000 рублей. Разница в цене имеет тенденцию расти, так как стоимость терминального решения на базе Linux + Wine@Etersoft конечна. Стоимость терминального решения на базе MS Windows будет расти за счет покупки новых необходимых лицензий CAL и TS CAL, которые весьма дорогие. Фирма Microsoft умеет маркетинговыми ходами внедрять свое новое программное обеспечение, за которое придется платить повышенную стоимость. Реальный пример, TS CAL к MS Windows Server 2003 Standard уже не купить на дату 21.07.2009 г., можно купить только от MS Windows Server 2008 Standard, но 2008 платформа относительна дорога из-за своей новизны и новых решений.
Терминальное решение на базе Linux имеет конечную стоимость, благодаря нулевой цене Linux и фиксированной стоимости Wine@Etersoft, с неограниченным количеством клиентов.
Терминальное решение на базе Linux особенно выгодно фирмам, с разветвленной сетью филиалов, которые сообщаются с центральным офисом через Интернет.

SQL решение 1С под Linux

Описание

SQL решение 1С — это когда база данных 1С представлена не сетевой папкой, а сервером 1С, который хранит данные в промышленных системах управления баз данных (СУБД).
Плюсы SQL решения 1С под Linux:
1. Большие базы 1С. SQL сервер эффективнее работает с большими объемами данных. Если база данных 1С превышает 1 Gb, специалисты 1С рекомендуют фирме переход на SQL режим с простого файлового режима.
2. Масштабируемость. Любое улучшение SQL сервера и/или сети пропорционально увеличивает скорость работы 1С в целом. SQL более адекватен при росте числа пользователей и/или нагрузке.
3. Надежность. Клиент-серверные системы имеют встроенный механизм работы с транзакциями. При некорректных выходах и зависаниях клиентов, нет необходимости «лечить» базу 1С длительной переиндексацией и восстановлением.
4. В SQL режиме используются программы, «родные» (native) для Linux, 1С и PostgreSQL оба в линукс версии. Нет ни одной программы из мира MS Windows.
5. При очень больших базах 1С — SQL решение может оказаться единственным выходом из ситуации.

Минусы
1. Дороговизна SQL решения 1С. SQL решение дороже почти в 2 раза простого файлового режима.
2. Синхронность. При SQL режиме 1С требуется синхронное обновление серверов 1С и клиентов 1С, то есть версии продуктов 1С должны совпадать. Это налагает некоторые сложности на обслуживающий персонал.

Разница в ценах

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

Источник

Терминальный сервер на Linux + сервер 1c PostgreSQL

Сегодня я выкладываю подробную проверенную инструкцию по организации терминального сервера на Linux

В первую очередь идём по ссылке Xubuntu desktop 14.05.02 и скачиваем дистрибутив. Собирал именно на этой версии. На других будут нюансы, которые выходят за рамки содержания этой статьи. Итак, погнали 🙂

Предполагается, что вы уже установили ОС. Открываем терминал:

Клонируем последнюю сборку xrdp и пересобираем с кодеком rfxcodec:

Устанавливаем xrdp и сливаем xorg-xrdp бекенд:

Настраиваем переключение раскладки с русского на английский язык сочетанием клавиш Ctrl+Shift.

Компилируем и устанавливаем в систему xorg-xrdp бекэнд:

В файле /etc/xrdp/xrdp.ini поменять местами блоки [X11rdp] и [Xorg], чтобы у пользователя по умолчанию был правильный бэкэнд. При подключении к серверу нужно выбирать Xorg в списке сессий. Всё, у нас работает подключение к серверу через клиента с винды или с linux любым клиентом, поддерживающим rdp.

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

Дописываем в конец файла:

Сохраняем, закрываем и обратно в терминал )

Параметр -p говорит mkdir создать полное дерево каталога, если оно не существует.

Теперь займемся настройкой сервера предприятия 1с.

Скачиваем и складываем в любую папку (wget-ом или кладем в ранее настроенную папку через самбу) дистрибутив 1с клиента и сервера и:

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

Если используется сетевой hasp-ключ, то пропишем параметры поиска:

Редактируем общесистемную маску и меняем значение на umask 002 :

Всех терминальных пользоватлей относим в группу grp1cv8 (если не были отнесены ранее, можно и в другую группу). Меняем права на папку tmp:

Предполагаем, что программа установлена в каталог /opt/1C , базы находятся в в каталоге /usr/local/1c_bases .
Устанавливаем пользователя и группу на каталог и подкаталоги программы.

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

Ну, и конечно, все пользователи, которые работают с 1c должны принадлежать группе grp1cv8.

Как обновить платформу?
Скачать все файлы обновления для Linux с сайта 1с https://releases.1c.ru/, разархивировать всё в одну папку, перейти в нее в терминале:

Важно, чтобы в этой папке находились deb-ы только необходимые для установки:

  • 1c-enterprise83-common-nls_версия_разрядность.deb
  • 1c-enterprise83-server-nls_версия_разрядность.deb
  • 1c-enterprise83-ws-nls_версия_разрядность.deb

Теперь установим PostgreSQL.

Сменим пароль внутреннего пользователя:

Где postgres — юзер, от которого будет запущен psql, user postgres — внутренний пользователь БД, а jHGt54ghKrfDgfTfr — пароль, назначаемый этому внутреннему пользователю БД.

Если все ок, то видим
ALTER ROLE

Для пользователя postgres приводим строку local all postgres peer к следующему виду:

Не забываем зафиксировать пакеты PostgreSQL, дабы они не обновились они из репозиториев:

Перезапускаем службу постгре и смотрим её статус:

Добавляем службу в автозапуск и перезагружаем:

Вот и всё. Спасибо за внимание.

Надеюсь, что у вас всё получилось.
Если же нет, то добро пожаловать в раздел КОНТАКТЫ

Источник

Читайте также:  Образы windows для флэшки
Оцените статью
Программное обеспечение Платформа MS Windows, руб Платформа Linux, руб