⚠️ Дисклеймер
Материал предоставлен “как есть” и отражает практический опыт эксплуатации в конкретных инфраструктурах.
Авторы не гарантируют:
- корректность решений в вашей среде;
- совместимость с вашей конфигурацией;
- отсутствие побочных эффектов.
Применение любых инструкций выполняется на ваш страх и риск.
Перед внедрением изменений рекомендуется:
- тестирование на изолированном контуре;
- проверка зависимостей и текущей конфигурации;
- наличие актуальных резервных копий (backup).
Введение
В этой инструкции рассматривается установка:
- Ubuntu 24.04 Server
- PostgreSQL Pro (версия для 1С)
- сервер 1С (srv1c)
Цель — получить рабочую серверную инфраструктуру для 1С с использованием Linux.
1. Подготовка системы
После установки Ubuntu 24.04 необходимо обновить систему:
apt update && apt upgrade -yУстановить базовые утилиты:
apt install -y wget curl gnupg2 software-properties-common ca-certificates2. Установка PostgreSQL Pro (1С версия)
Для 1С рекомендуется использовать PostgreSQL Pro Standard, так как он содержит оптимизации под 1С.
2.1 Добавление репозитория
echo "deb https://repo.postgrespro.ru/pgpro-1c-17/ubuntu $(lsb_release -cs) main" > /etc/apt/sources.list.d/pgpro-1c.listИмпорт ключа:
wget -O - http://repo.postgrespro.ru/1c/1c-17/keys/pgpro-repo-add.sh | bashОбновление пакетов:
apt update2.2 Установка PostgreSQL
apt install -y postgrespro-1c-17Проверка сервиса:
systemctl status postgrespro-1c-17Настраиваем PostgreSQL перед использованием 1С
systemctl stop postgrespro-1c-17.service
rm -rf /var/lib/pgpro/1c-17/data/*
/opt/pgpro/1c-17/bin/pg-setup initdb --locale=ru_RU.UTF-8 --tune=1c
systemctl status postgrespro-1c-17.service2.3 Базовая настройка
Переключаемся на пользователя postgres:
sudo -u postgres psqlСоздаём пользователя для 1С:
CREATE ROLE usr1cv8 WITH LOGIN SUPERUSER PASSWORD 'SuperPuperStr0ngP@sswordForSrvPGSQL!';⚠️ ВНИМАНИЕ
Автор не рекомендует оставлять пользователя с правами “СУПЕРПОЛЬЗОВАТЕЛЬ”, данный пример предоставлен “как есть” и отражает практический опыт эксплуатации в конкретных инфраструктурах и ситуациях, а также в изолированных средах.
Выход:
\q3. Настройка доступа к PostgreSQL
Редактируем файл:
/var/lib/pgpro/1c-17/data/pg_hba.confДобавляем:
host all all 0.0.0.0/0 md5Редактируем:
/var/lib/pgpro/1c-17/data/postgresql.confМеняем:
listen_addresses = '*'Перезапуск:
systemctl restart postgrespro-1c-174. Установка сервера 1С (srv1c) и публикация через Apache2
В этом разделе — практическая настройка:
- установка сервера 1С
- регистрация службы
- настройка кластера
- публикация через Apache
1. Установка зависимостей
apt install -y imagemagick unixodbc ttf-mscorefonts-installer unzip2. Установка сервера 1С
Распаковываем дистрибутив:
unzip server64_8_3_27_1936.zip
cd server64_8_3_27_1936Запускаем установку:
./setup-full-8.3.27.1936-x86_64.run3. Создание симлинка current
Для удобства обновлений создаём ссылку:
ln -s /opt/1cv8/x86_64/8.3.27.1936/ /opt/1cv8/currentЭто позволит не менять пути при обновлении версии в зависимых приложениях, например Apache2.
4. Регистрация службы srv1c
Подключаем systemd unit:
systemctl link /opt/1cv8/x86_64/8.3.27.1936/srv1cv8-8.3.27.1936@.service
systemctl enable srv1cv8-8.3.27.1936@
systemctl start srv1cv8-8.3.27.1936@default.service
sleep 5
systemctl status srv1cv8-8.3.27.1936@default.service5. Настройка имени сервера
Задаём hostname:
hostnamectl set-hostname enterprise1cДобавляем в /etc/hosts:
vi /etc/hosts127.0.0.1 enterprise1c
127.0.0.1 enterprise1c.local.corp6. Настройка кластера 1С
Файл списка серверов:
vi /home/usr1cv8/.1cv8/1C/1cv8/1cv8wsrv.lst
Пример:
{
{1,
{bbb3312312bb-0111-aaaa-fff30-dasfdf3423e63,"Enterprise 1C cluster",1541,"enterprise1c.local.corp",0,0,0,60,0,0,0,
{1,
{"enterprise1c.local.corp",1541}
},0,0,1,0,0,0,0,""}
}Файл кластера:
vi /home/usr1cv8/.1cv8/1C/1cv8/reg_1541/1CV8Clst.lst
Пример:
{0,
{bbb3312312bb-0111-aaaa-fff30-dasfdf3423e63,"Enterprise 1C cluster",1541,"enterprise1c.local.corp",0,0,0,60,0,0,0,
{1,
{"enterprise1c.local.corp",1541}
},0,0,1,0,0,0,0,""},
}
7. Установка Apache
apt install -y apache2
Создаём каталоги:
mkdir -p /etc/apache2/1c/
mkdir -p /var/www/1c/base-acc
mkdir -p /var/www/1c/base-hrm
8. Публикация базы (VRD)
base-acc
Создадим файл публикации 1с
vi /var/www/1c/base-acc/default.vrdСодержимое файла:
<?xml version="1.0" encoding="UTF-8"?>
<point xmlns="http://v8.1c.ru/8.2/virtual-resource-system"
base="/base-acc"
ib="Srvr=enterprise1c.local.corp;Ref=base-acc;">
<ws pointEnableCommon="true"/>
<standardOdata enable="false"
reuseSessions="autouse"
sessionMaxAge="20"
poolSize="10"
poolTimeout="5"/>
<analytics enable="true"/>
</point>base-hrm
Создадим файл публикации 1с
vi /var/www/1c/base-hrm/default.vrdСодержимое файла:
<?xml version="1.0" encoding="UTF-8"?>
<point xmlns="http://v8.1c.ru/8.2/virtual-resource-system"
base="/base-hrm"
ib="Srvr=enterprise1c.local.corp;Ref=base-hrm;">
<ws pointEnableCommon="true"/>
<standardOdata enable="false"
reuseSessions="autouse"
sessionMaxAge="20"
poolSize="10"
poolTimeout="5"/>
<analytics enable="true"/>
</point>9. Настройка Apache2 (.wsap)
base-acc
Создадим файл конфигурации для base-acc
vi /etc/apache2/1c/base-acc.wsapСодержимое файла:
Alias "/base-acc" "/var/www/1c/base-acc"
<Directory "/var/www/1c/base-acc/">
AllowOverride All
Options None
Require all granted
SetHandler 1c-application
ManagedApplicationDescriptor "/var/www/1c/base-acc/default.vrd"
</Directory>base-hrm
Создадим файл конфигурации для base-hrm
vi /etc/apache2/1c/base-hrm.wsapСодержимое файла:
Alias "/base-hrm" "/var/www/1c/base-hrm"
<Directory "/var/www/1c/base-hrm/">
AllowOverride All
Options None
Require all granted
SetHandler 1c-application
ManagedApplicationDescriptor "/var/www/1c/base-hrm/default.vrd"
</Directory>10. Подключение конфигурации Apache2
Подключаем в основной файл конфигурации созданные файлы:
vi /etc/apache2/apache2.confВ конец файла допишем:
IncludeOptional 1c/*.wsap11. Подключение модуля 1С
vi /etc/apache2/mods-available/wsap24.loadLoadModule _1cws_module "/opt/1cv8/current/wsap24.so"Включаем модуль:
a2enmod wsap24Перезапустим Apache2
systemctl restart apache2Проверка в браузере
http://enterprise1c.local.corp/base-acc http://enterprise1c.local.corp/base-hrm
5. Рекомендации по настройке
PostgreSQL
Основные параметры:
shared_buffers = 25% RAM
work_mem = 16MB
maintenance_work_mem = 256MBСистема
Отключить swap (или минимизировать):
swapon --showНастроить лимиты:
/etc/security/limits.conf6. Безопасность
Минимально:
- ограничить доступ к PostgreSQL по IP
- закрыть лишние порты (ufw)
- использовать сложные пароли
Итог
После выполнения шагов получаем:
- сервер 1С на Linux (srv1c)
- PostgreSQL Pro, оптимизированный под 1С
- готовую к работе инфраструктуру