В статье мы покажем, как установить серверы «1С:Предприятие» на операционную систему Ubuntu 22.04 LT S Server.
Вы узнаете:
Для начала подготовим операционную систему. Чтобы упростить процесс передачи нужных файлов и администрирования, мы будем использовать программы WinSCP 5.21 и Putty 0.78. Их нужно скачать с официального сайта и установить на ваш ПК (рис. 1 — 8).
Настроим соединение с сервером. Для этого нам понадобится установленная операционная система Ubuntu 22.04 с включенным сервисом Open SSH. Если Open SSH не был установлен, сделаем это вручную.
Выполняем вход в операционную систему с помощью заранее созданного при установке логина и пароля (пароль при вводе не отображается) (рис.9).
Вводим команду для установки: $ sudo apt install openshh-server
Затем вводим пароль пользователя, чтобы подтвердить права на установку (рис.10).
Проверяем, работают ли службы SSH, командой: $ sudo systemctl status ssh
Служба запущена (рис.11).
Если служба не запустилась, получаем вывод команды (рис.12).
Запускаем службу командой$ sudo systemctl start ssh и снова проверяем статус службы.
Далее настроим соединение с сервером ssh. Для этого узнаем ip-адрес нашего сервера, выполним команду: $ ip a (рис.13).
Открываем установленное ранее приложение WinSСP, указываем адрес нашего сервера и логин учетной записи, нажимает «Сохранить» (рис.14).
Сохраняем соединение (рис.15).
Подключаемся к серверу (рис.16).
Сохраняем ключ шифрования для обмена с сервером (рис.17).
Вводим пароль для учетной записи и нажимаем «ОК» (рис.18)
После удачного соединения запустим соединение с приложением Putty. Это можно сделать сразу из программы WinSCP, нажав сочетание клавиш «Ctrl+P» и выбрав в меню «Команды» ¬¬¬– «Открыть в Putty» (рис.19).
Теперь в приложение Putty вводим пароль от ученой запись нашей системы. Это позволит нам копировать и вводить команды для установки более быстро. Вставить команду из буфера обмена можно нажатием правой кнопки мыши, а скопировать текст в буфер, просто выделив его.
Следующим шагом будет обновление операционной системы.
Вводим команду: $ sudo apt-get update
После дожидаемся окончания обновление системы (рис.20).
Обновим приложения командой: $ sudo apt upgrade
Соглашаемся с обновлением, вводим «у» и обновляем установленные пакет (рис.21).
Установим файловый менеджер Midnight Commander для работы с системными файлами. Чтобы его установить, вводим команду: $ sudo apt install mc (рис.22).
Вводим «y», соглашаемся с установкой и дожидаемся конца установки. Запускаем Midnight Commander. Выполним команду: $ sudo mc (рис.23).
Установим сопутствующие пакеты, библиотеки и шрифты, необходимые для корректной работы Сервера «1С»: $ sudo apt install libenchant1c2a (рис.24-27).
$ sudo apt-get install imagemagick
$ sudo apt-get install unixodbc
$ sudo apt-get install ttf-mscorefonts-installer
На этом подготовка к установке закончена, можно перейти к установке сервера «1С:Предприятие»
Перейдем на сайт портала «1С» https://portal.1c.ru/ в раздел «Обновления» – «Технологическая платформа 8.3» (рис.28). Выберем необходимую версию, у нас это «8.3.22.1923» ¬– «Технологическая платформа «1С:Предприятие (64-бит) для Linux» для 64-битной версии операционной системы или «Технологическая платформа 1С:Предприятие для Linux» для 32-битной версии операционной системы – «Скачать дистрибутив».
По завершении скачивания зайдем в программу WinNCP и в левой колонке выберем папку, в которую скачали дистрибутив платформы. В правой колонке по умолчанию открыта домашняя директория пользователя операционной системы \home\имя пользователя. В нашем случае \home\user1ab. В левой колонке выделим файл архива с дистрибутивом технологической платформой и нажмем кнопу «Отправить» или клавишу «F5», чтобы скопировать дистрибутив на сервер (рис.29, 30).
Так как в системах Linux доступ к системны папкам имеет только суперпользователь root, перейдем в домашнюю директорию нашего пользователя, в каталог, в который мы скопировали наш дистрибутив. У нас это: /home/user1ab/install
Затем выполним команду: $ cd /home/user1ab/install (рис.31).
Теперь разархивируем дистрибутив командой: $ tar -xzf server64_8_3_22_1923.tar.gz (рис.32).
Убедимся, что фалы распакованы, и введем команду: $ dir (рис.33).
Если все файлы распакованы, можно перейти к установке, для этого нужно сделать исполняемым установочный файл: $ chmod 777 setup-full-8.3.22.1923-x86_64.run (рис.34).
Файл котов к установке сервера «1С», можно запускать скрипт установки. Есть два варианта установки: интерактивный, где можно выбрать устанавливаемые компоненты вручную, или же можно указать в скрипт компоненты, которые нужно установить. Рассмотрим оба варианта.
Вводим команду для запуска интерактивной установки: $ sudo ./setup-full-8.3.22.1923-x86_64.run
Выбираем язык. В нашем случае русский: $ 16 (рис.35).
Для выбора компонентов вводим «y» (рис.36).
Когда все нужные компоненты выбраны, соглашаемся с выбором и ждем окончания установки (рис.37).
В результате успешной установки получаем сообщение (рис.38).
Так же установку можно запустить, сразу выбрав нужные компоненты. К примеру, такой скрипт:
$ sudo ./setup-full-8.3.22.1923-x86_64.run --mode unattended --enable-components server,ws,server_admin,config_storage_server
Он установит сервер «1С», веб-расширение, сервер администрирования кластера серверов и сервер хранилища конфигурации. Полный список компонентов можно посмотреть, выполнив:
$ sudo ./setup-full-8.3.22.1923-x86_64.run --help
Теперь создадим линк инита службы сервера «1С:Предприятия» командой:
$ sudo systemctl link /opt/1cv8/x86_64/8.3.22.1923/srv1cv8-8.3.22.1750@.service (рис.39).
Запустим службу сервера «1С»: $ sudo systemctl start srv1cv8-8.3.22.1923@default.service (рис.40).
Добавляем службу в автозапуск операционной системы: $ sudo systemctl enable srv1cv8-8.3.22.1923@default.service (рис.41).
Проверяем работу сервера: $ sudo systemctl status srv1cv8-8.3.22.1923@default.service (рис.42)
Сервер «1С» установлен и работает.
Здесь мы рассмотрим установку СУБД Postgres SQL. Рассмотрим версии, адаптированные для работы с «1С», доступные для скачивания на портале «1С», а также дистрибутив от Postgres Pro.
Сначала рассмотри дистрибутив от «1С», который станет доступен для скачивания после регистрации продукта «Сервер 1С:Предприятия» на портале «1С»:
https://login.1c.ru/login?service=https%3A%2F%2Freleases.1c.ru%2Fpublic%2Fsecurity_check
Скачиваем дистрибутив (рис.43).
Перед началом установки нужно установить дополнительные библиотеки, так как этот пакет имеет зависимости. В стандартный репозиторий Ubuntu 22.04 эти пакеты не входят. Поэтому для их установки необходимо подключить архивный репозиторий. Для этого откроем Midnight Commander и откроем для редактирования файл: /etc/apt/sources.list
Откроем Midnight Commander с правами суперпользователя и перейдем в каталог: /etc/apt
$ sudo mc (рис.44).
Для редактирования нажимаем клавишу «F4» или кнопку «Правка» в нижнем меню. Выбираем удобный вам редактор.
В открытом файле добавляем запись архивного репозитория: « deb http://ru.archive.ubuntu.com/ubuntu/ bionic main universe» и нажимаем клавишу «F2» или кнопку «Скранить» для сохранения изменений. Нажимаем «F10» или кнопку «Выход», чтобы выйти (рис.45).
Обновим список репозиторий, выполнив команду: $ sudo apt update
При проверке репозитория получаем сообщение об отсутствии публичного ключа (рис.46).
Установим публичный ключ по его номеру, введем команду:
$ sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 3B4FE6ACC0B21F32 (рис.47).
Снова обновляем список и убеждаемся, что репозиторий успешно добавлен: $ sudo apt update (рис.48).
Установим необходимые библиотеки: libldap-2.4-2 и libssl1.1: $ sudo apt install libldap-2.4-2
Вводим «у» подтверждаем установку (рис.49).
$ sudo apt install libssl1.1 (рис.50).
Теперь все готово к установке PostgeSQL, распакуем и скопируем скаченные дистрибутивы на сервер с помощью WinSCP (рис.51).
Установим скаченные пакеты: $ sudo apt install /home/user1ab/install/libpq5_14.7-1.1C_amd64.deb (рис.52).
$ sudo apt install /home/user1ab/install/postgresql-14_14.7-1.1C_amd64.deb
Вводим «у» подтверждаем установку (рис.53).
$ sudo apt install /home/user1ab/install/postgresql-client-14_14.7-1.1C_amd64.deb
Вводим «у» и подтверждаем установку (рис.54).
Чтобы система не обновила установленные нами пакеты и не затерла наш кластер PostgreSQL, зафиксируем их командами:
$ sudo apt-mark hold libpq5
$ sudo apt-mark hold postgresql-14
$ sudo apt-mark hold postgresql-client-14 (рис.55)
Убедимся, что пакеты зафиксированы: $ sudo apt-mark showhold (рис.56).
Проверим статус службы PostgreSQL: $ sudo systemctl status postgresql (рис.57)
Служба работает. Зададим пароль для пользователя postgres. Получим права суперпользователя, чтобы авторизоваться под пользователем postgres в операционной системе и запустить консоль psql:
$ sudo su
$ su postgres
$ psql (рис.58).
Здесь мы зададим пароль пользователя postgres для авторизации в кластере PostgreSQL:
# \password postgres
Вводим пароль и подтверждение для пользователя postgres (рис.59).
Включаем отладчик на сервере (рис.60).
Для управления кластером сервера «1С» удобнее всего использовать средства администрирования кластером, но также можно использовать RAS. Рассмотрим установку консоли администрирования и подключимся к нашему ранее установленному серверу «1С». Сразу стоит уточнить, что для корректной работы консоли и самого клиента с сервером, нужно добавить соответствующую запись DNS в действующий сервер DNS или же указать запись непосредственно в клиентскую ОС путем редактирования файла hosts. С этого мы и начнем на примере настройки клиента под управление MS Windows 10. Откроем файл hosts по адресу:
C:\Windows\System32\drivers\etc (рис.61).
Добавим в него запись о нашем сервере. Имя хоста можно узнать, выполнив команду hostname на сервере, а адрес сервера командой ip, как мы делали ранее при подключении WinSCP (рис.62).
Добавляем запись о нашем сервере в файл hosts (рис.63).
Можно перейти к установке платформы и консоли администрирования, не забываем, что версия сервера должна совпадать с верией платформы. В нашем случае это: 8.3.22.1923. Перейдем на сайт портала «1С»: https://releases.1c.ru/project/Platform83 и скачам нужную платформу (рис.64).
Распакуем архив и запустим установку. При выборе устанавливаемых компонентов добавим «Администрирование серверов 1С» (рис.65).
Теперь зарегистрируем консоль администрирования в системе, файл регистрации важно запустить под правами администратора (рис.66).
При успешной регистрации получаем сообщение об успешном выполнении и переходим к подключению к серверу (рис.67).
Теперь откроем консоль «Администрирование серверов 1С» и добавим нажатием правой копки мыши «Центральный сервер 1С:Предприятия 8.3» (рис.68).
Введем имя нашего сервера. Вводим имя указаное в фале host (рис.69).
После добавления сервера нам становится доступна ветка управления сервером. Здесь можно изменять параметры кластера и рабочих серверов, создать администратора кластера, просматривать или удалять действующие сессии, применять требования функциональности, настраивать счетчики производительности и многое другое. В конце раздела будет ссылка на статью по полному функционалу данной консоли. А сейчас мы создадим базу данных на нашем сервере, которая нам пригодится в дальнейшем (рис.70).
Нам нужно указать имя базы для сервера «1С», сервер баз данных (указываем имя нашего сервера, так как PostgreSQL установлен на тот же сервер что и сервер «1С»). В случае, если сервер PostgreSQL установлен на отдельный сервер, указываем адрес этого сервера. Выберем тип СУБД – у нас это PostgreSQL, далее укажем имя базы (как будет называться база в СУБД, пользователь СУБД «postgres» и пароль к нему, который мы задавали ранее при установке PostgreSQL). Ставим галочку «создать базу в случае ее отсутствия» для того, чтобы создать новую базу, если мы подключаемся к базе, которая уже есть в СУБД. К примеру, если она была загруженную из дампа, то оставляем этот чек-бокс пустым (рис. 71).
Проверим, что база создалась, и зайдем в нее. Добавляем нашу созданую базу (рис.72).
Зайдем в конфигуратор и убедимся, что все работает (рис.73).
С помощью консоли можно управлять параметрами сервера и соединениями пользователей.
Более подробно со всеми параметрами сервера можно ознакомиться на сайте 1С:ИТС по ссылке: https://its.1c.ru/db/v838doc#bookmark:cs:TI000000153
Также управлять сервером можно с помощь RAS. Для этого перейдем к его настройке.
Начнем установку, создадим пустой файл с произвольным названием вида ****.service
У нас это будет rassrv8.3.service (рис.74).
Добавим в содержимое – клавиша F4 для редактирования.
Введем код, где укажем имя установленного нами инита сервера «1С» в параметр « Requires= » и желаемый портом в строке « --port= » (до выбора порта нужно убедиться, что пор не занят другой службой):
[Unit]
Description=1C:Enterprise Remote Administration Service
After=network.target remote-fs.target nss-lookup.target
Requires=srv1cv8-8.3.22.1923@.service
[Service]
Type=simple
ExecStart=/opt/1cv8/x86_64/8.3.22.1923/ras cluster --port=1545
KillSignal=SIGINT
PrivateTmp=true
Restart=on-failure
RestartSec=5
User=usr1cv8
Group=grp1cv8
[Install]
WantedBy=multi-user.target (рис.75).
Сохраним результат и скопируем с помощью Midnight Commander, запущенного с правами суперпользователя, наш инит. Системный каталог /etc/systemd/system/. Именно в него нужно перенести созданный инит из нашего домашнего каталога.
$ sudo mc
В правом окне выберем домашний каталог /home/user1ab/install, а в левом – системный каталог для перехода между окнами. Используем клавишу “Tab” (рис.76).
Сделаем наш инит исполняемым с помощью команды:
$ chmod +x /etc/systemd/system/rassrv8.3.service (рис.77).
Перезапустим демон и обновим список служб:
$ sudo systemctl daemon-reload (рис.78).
Запустим нашу службу RAC, выполним:
$ sudo systemctl start rassrv8.3.service (рис.79)
Если все сделано правильно, служба стартует и никаких сообщений об ошибке инита нет.
Убедимся в этом, смотрим статус службы:
Видим, что служба запущена и работает на указанном нами порту 1545. Добавим службу в автозагрузку операционной системы: $ sudo systemctl enable rassrv8.3.service (рис.81).
Теперь служба работает на порту 1545 и ее можно использовать для удаленного управления или того же автоматического обновлению. Но в случае, если сервер не имеет удаленного доступа или доступ ограничен, есть возможность обратиться к локальному оператору RAC, который работает локально. Перейдем в каталог с бинарными файлами и выполним несколько команд, для перехода введем команду: $ cd /opt/1cv8/x86_64/8.3.22.1923
Выведем список кластеров «1С», у нас он один, выполним запрос: $ ./rac cluster list (рис.82).
Из вывода команды получим идентификатора кластера и данные по кластеру, имя хоста, порт, ограничения, таймеры, уровень отказоустойчивости. Теперь, узнав идентификатор кластера, запросим список баз:
$ ./rac infobase summary list --cluster=c598b7f2-515b-4d7f-bbd3-a06b9d6149b3 (рис.83).
Видим созданную нами ранее базу данных и ее идентификатор, по которому можно выполнять запросы к базе и управлять ее соединениями. Полный список команд для управления можно посмотреть, введя: $ ./rac help (рис.84).
Список команд позволяет настраивать и управлять сервером в полном объеме. Но его синтаксис потребует немало времени для изучения.
В случае, если на сервере планируется вести разработку или доработку конфигурации, нам потребуются хранилища конфигураций для одновременно доступа к конфигурации. Рассмотрим настройку этой службы на нашем примере. И, как и ранее при установке RAS, нам потребуется создать новый инит.
Создадим новый пустой файл, но перед этим понадобится создать папку для хранения конфигурации. Создадим ее. Сделать это можно, обладая правами правами суперпользователя. Выполним команду для перехода и подтвердим паролем текущего пользователя: $ sudo su (рис.85).
Создадим папку conf_folder в корне диска, вводим: # mkdir /conf_folder (рис.86)
Теперь, когда папка создана, создадим инит, где будем использовать созданную паку для хранения файлов хранилищ конфигураций (рис. 87).
Добавим в содержимое инита код, в котором укажем папку с бинарными файлами и путь к папке, где будут храниться конфигурации.
[Unit]
Description=crserver service
[Service]
ExecStart=/opt/1cv8/x86_64/8.3.22.1923/crserver -d /conf_folder
[Install]
WantedBy=multi-user.target (рис.88).
Скопируем наш инит в системный каталог /etc/systemd/system, используя Midnight Commander, так же, как мы это делали при установке севера RAS (рис.89).
Сделаем наш инит исполняемым: # chmod +x /etc/systemd/system/storconf8.3.service (рис.90)
Перезапустим демон: # systemctl daemon-reload (рис.91).
Запустим службу командой: # systemctl start storconf8.3.service (рис.92)
Если все прошло без ошибок. Проверим статус службы: # systemctl status storconf8.3.service (рис.93).
Добавим службу в автозагрузку системы: # systemctl enable storconf8.3.service (рис.94).
Служба работает, откроем конфигуратор и создадим хранилище конфигурации. Перейдем в меню «Конфигурация», затем нажмем «Открыть конфигурацию», дождемся открытия конфигурации. Выберем «Конфигурация» – «Хранилище конфигурации» – «Создать хранилище» (рис.95).
Для подключения укажем адрес сервера хранилища в виде tcp://имя нашего сервера:1542/название хранилища в нашем случае это tcp://demo1ab:1542/conf_folder (рис.96).
Соглашаемся и подключаем хранилище (рис.97).
Убедимся, что в папке хранения появились файлы хранилища конфигурации. Перейдем в созданную ранее папку с помощью Midnight Commander (рис.98).
Видим, что фалы хранилища появились, на это установка хранилища конфигурации завершена.
Первым делом установим ключ защиты в usb-разъем сервера и убедимся, что он работает. Вводим: $ lsusb
Если в списке usb найден ключ Hasp, можно перейти к установке драйвера и менеджеру лицензии. Перейдем в домашнюю директорию: $ cd /home/user1ab/install
Скачаем установочные пакеты от российского разработчика Etersoft (рис.99).
Устанавливаем скаченный пакет: $ sudo dpkg -i haspd_8.53-eter1ubuntu_amd64.deb (рис.100)
Запускаем службу: $ sudo systemctl start haspd (рис.101).
Добавим службу в автозагрузку: $ sudo systemctl enable haspd (рис.102).
Проверим работу службы: $ sudo systemctl status haspd (рис.103).
Убедимся, что ключ загорелся, установка завершена.
Устанавливаем и запускаем Apache2.
Теперь, когда сервер «1С» и сервер PostgreSQL установлены, может возникнуть необходимость опубликовать базу данных на веб-сервер для подключения пользователей по тонкому клиенту протокола http или https, а также для обмена с другими системами через REST API. И начнем мы с установки веб-сервера. Установим из репозитория веб-сервер Apache2, выполнив команду для установки: $ sudo apt-get install apache2
Введем пароль пользователя ОС и согласимся с установкой, введем «y» (рис.104).
Запустим установленный веб-сервер: $ sudo systemctl start apache2 (рис.105).
Проверим, что служба запущена (рис.106).
Проверим, что сервер доступен по http-протоколу, введем в адрес браузера в сети http://адрес или имя сервера/. В нашем случае это http://demo1ab/ . Должна появиться страница по умолчанию – Apache2 (рис.107).
Кода веб-сервер установлен и работает, опубликуем созданию нами базу на этом сервере. Для этого воспользуемся компонентом платформы «1С:Предприятие» – webinst. Чтобы этот компонент был установлен, должна быть выбрана установка «Модуль расширения веб-сервиса» или же в скрипт установки добавлен компонент с кодом «ws».
Итак, приступим к публикации базы, перейдем в директорию с бинарными файлами «1С», введем команду: $ cd /opt/1cv8/x86_64/8.3.22.1923 (рис.108).
Теперь обратимся к утилите webinst, напишем код: «sudo. /webinst – apache24 (какой веб-сервер мы используем) – wsdir имя публикации – dir директория, где хранится содержимое сайта и публикация): t -connstr "Srvr=имя сервера;Ref=имя базы;"– confPath файл конфигурации веб сервера»
Посмотрим, как будет выглядеть скрипт, в нашем случае: «sudo ./webinst -apache24 -wsdir demo -dir /var/www/demo -connstr "Srvr=demo1ab;Ref=demo;" -confPath /etc/apache2/apache2.conf»
Введем скрипт и выполним публикацию (рис.109).
Перезапустим веб-сервер, чтобы публикация заработала: $ sudo systemctl restart apache2 (рис.110).
Зайдем и убедимся, что публикация заработала. Введем в http://имя или адрес сервера/имя публикации. В нашем случае это: http://demo1ab/demo (рис.111).
Теперь, чтобы зашифровать и защитить наше веб-соединение, настроим SSl-соединение.
Первым делом создадим сертификаты и ключ шифрования. Для примера мы возьмем заверенный сертификат opennssl, чтобы создать сертификат и ключ выполняем команду и подтверждаем права, вводим пароль пользователя ОС: $ sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/demo1ab.key -out /etc/ssl/certs/demo1ab.crt (рис.112).
После создания ключа нужно указать несколько данных для сертификата. Указываем пароль, его подтверждение, страну (ввиде: «RU»), штат, он же область, город, название организации, подразделение, общее название и e-mail адрес (рис.113).
Все готово для настройки веб-сервера Apache2. Активируем модуль для работы с ssl, вводим: $ sudo a2enmod ssl (рис.114).
Теперь установим значение по умолчанию для HTTPS сайтов командой: $ sudo a2ensite default-ssl (рис.115).
Теперь отредактируем конфигурационный файл Apache /etc/apache2/sites-enable/defaut-ssl.conf
Изменим путь к сертификату и ключу. Изменяем строку SSLCertificateFile и SSLCertificateKeyFile
SSLCertificateFile /etc/ssl/cert/demo/demo1ab.cet
SSLCertificateKeyFile /etc/ssl/cert/demo/demo1ab.key
Сохраним из менения «F2» (рис.116).
Перезапускаем службу веб-сервера командой: $ sudo systemctl restart apache2 (рис.117).
Теперь можно использовать 443 порт: https://demo1ab/demo
Теперь, если конфигурация отдельно лицензируется, потребуется установит сервер «Системы лицензирования конфигурации» СЛК. Для этого перейдем на официальный сайт Центра лицензирования СЛК и скачаем актуальную версию СЛК (рис.118).
Архив содержит версии для большинства операционных систем, включая Ubuntu 22.04, поэтому распакуем архив и перенесем нужный нам пакет на сервер, используем уже известный нам WinSCP. Нам понадобится пакет с расширением «.deb» для 64-х битной системы, файл licenceserver-3.0.32-11163.amd64.deb (рис.119).
Перейдем в домашний каталог, чтобы установить скаченный пакет: $ cd /home/user1ab/install/ (рис.120).
Установим сервер СЛК: $ sudo dpkg -i licenceserver-3.0.32-11163.amd64.deb (рис.121).
Пакет установлен, можно запустить сервер лицензирования. Выполним: $ sudo systemctl start licenceserver.service (рис.122).
Проверим, что служба работает (рис.123).
Время проверить работу сервера СЛК, для этого воспользуемся веб-интерфейсом. В браузе введем адрес в виде http://имя или адреснашего сервера:9099 (порт подключения 9099)
В нашем примере адрес будет: http://demo1ab:9099 (рис.124).
Теперь можем активировать коды активации или же установить ключи защиты, а также использовать СЛК сервер. Установка закончена.
Подведем итоги
В статье мы подробно продемонстрировали, как установить серверы «1С:Предприятие» на операционную систему Ubuntu 22.04 LT S Server.
При возникновении любых вопросов или сложностей обращайтесь к специалистам «1С-Архитектора бизнеса» с помощью формы ниже.