⚠️ Дисклеймер

Материал предоставлен “как есть” и отражает практический опыт эксплуатации в конкретных инфраструктурах.

Авторы не гарантируют:

  • корректность решений в вашей среде;
  • совместимость с вашей конфигурацией;
  • отсутствие побочных эффектов.

Применение любых инструкций выполняется на ваш страх и риск.

Перед внедрением изменений рекомендуется:

  • тестирование на изолированном контуре;
  • проверка зависимостей и текущей конфигурации;
  • наличие актуальных резервных копий (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-certificates

2. Установка 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 update

2.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.service

2.3 Базовая настройка

Переключаемся на пользователя postgres:

sudo -u postgres psql

Создаём пользователя для 1С:

CREATE ROLE usr1cv8 WITH LOGIN SUPERUSER PASSWORD 'SuperPuperStr0ngP@sswordForSrvPGSQL!';

⚠️ ВНИМАНИЕ

Автор не рекомендует оставлять пользователя с правами “СУПЕРПОЛЬЗОВАТЕЛЬ”, данный пример предоставлен “как есть” и отражает практический опыт эксплуатации в конкретных инфраструктурах и ситуациях, а также в изолированных средах.

Выход:

\q

3. Настройка доступа к 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-17

4. Установка сервера 1С (srv1c) и публикация через Apache2

В этом разделе — практическая настройка:

  • установка сервера 1С
  • регистрация службы
  • настройка кластера
  • публикация через Apache

1. Установка зависимостей

 
apt install -y imagemagick unixodbc ttf-mscorefonts-installer unzip

2. Установка сервера 1С

Распаковываем дистрибутив:

unzip server64_8_3_27_1936.zip
cd server64_8_3_27_1936

Запускаем установку:

./setup-full-8.3.27.1936-x86_64.run

3. Создание симлинка 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.service

5. Настройка имени сервера

Задаём hostname:

hostnamectl set-hostname enterprise1c

Добавляем в /etc/hosts:

vi /etc/hosts
127.0.0.1   enterprise1c
127.0.0.1   enterprise1c.local.corp

6. Настройка кластера 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/*.wsap

11. Подключение модуля 1С

vi /etc/apache2/mods-available/wsap24.load
LoadModule _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.conf

6. Безопасность

Минимально:

  • ограничить доступ к PostgreSQL по IP
  • закрыть лишние порты (ufw)
  • использовать сложные пароли

Итог

После выполнения шагов получаем:

  • сервер 1С на Linux (srv1c)
  • PostgreSQL Pro, оптимизированный под 1С
  • готовую к работе инфраструктуру