При настройке удаленной работы с информационной базой 1С часто возникает вопрос: можно ли вынести на внешний хостинг только веб-сервер (Apache или IIS), оставив кластер серверов 1С и базу данных на локальном компьютере? Разберем архитектурные особенности платформы 1С:Предприятие, выясним, почему такое разделение неэффективно, и рассмотрим надежные варианты предоставления доступа к локальной базе из внешней сети.
Проанализируем взаимодействие компонентов 1С при работе через веб-клиент или тонкий клиент по протоколам HTTP/HTTPS. Веб-сервер в связке с 1С выполняет роль шлюза: он принимает клиентский запрос и через модуль расширения (например, wsap24.dll для Apache или wsisapi.dll для IIS) взаимодействует с кластером 1С или напрямую с файловой базой.
В процессе работы генерируется интенсивный поток служебных RPC-вызовов. Для стабильной работы требуется минимальный сетевой отклик (задержка ping должна быть менее 1–2 миллисекунд) и высокая пропускная способность канала. Если разместить веб-сервер на внешнем хостинге, а базу данных оставить в локальной сети, мы неизбежно столкнемся со следующими проблемами:
1Cv8.1CD), попытка подключить к ней удаленный веб-сервер через сетевой ресурс (SMB/NFS) по интернету приведет к повреждению структуры базы при малейшем сбое связи.Таким образом, действует фундаментальное правило: веб-сервер, кластер серверов 1С и база данных должны находиться в пределах одного локального сетевого контура (либо полностью на локальном сервере, либо целиком на виртуальном хостинге/VDS).
Рассмотрим самый производительный и простой способ публикации, когда все компоненты остаются на локальном компьютере, а доступ извне настраивается через маршрутизатор.
Разберем по шагам схему подключения:
80 (HTTP) или 443 (HTTPS) на локальный IP-адрес компьютера, где запущен веб-сервер.A-запись, привязывающую ваш домен к публичному IP-адресу маршрутизатора.Если нет возможности получить публичный IP-адрес или провайдер использует технологию CGNAT («серый» IP), рассмотрим сервис 1С:Линк. Этот сервис создает защищенный туннель между локальным компьютером и облачным сервером авторизации 1С.
Особенности решения:
yourname.link.1c.ru.Для обеспечения максимального уровня безопасности при работе с конфиденциальными базами данных открывать прямой доступ к портам в сеть интернет не рекомендуется. Разберем организацию защищенного канала с использованием VPN или дешевого VPS в качестве шлюза.
Посмотрим на схему с внешним реверс-прокси:
server {
listen 443 ssl;
server_name 1c.yourdomain.ru;
ssl_certificate /etc/letsencrypt/live/1c.yourdomain.ru/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/1c.yourdomain.ru/privkey.pem;
location / {
proxy_pass http://10.8.0.2:80;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
В качестве альтернативы можно использовать оверлейные сети (Mesh VPN), такие как Tailscale или ZeroTier, что позволяет безопасно объединить удаленные клиентские ПК и локальный сервер в одну приватную сеть вообще без открытия публичных портов.
Начиная с версии 8.3.14, платформа 1С:Предприятие включает утилиту автономного сервера ibsrv. Это исполняемый файл со встроенным HTTP-сервером, который избавляет от необходимости разворачивать и конфигурировать внешние веб-серверы Apache или IIS.
Автономный сервер позволяет:
При выводе веб-сервера во внешнюю сеть необходимо минимизировать риски несанкционированного доступа. Разберем ключевые параметры файла конфигурации публикации default.vrd.
Проанализируем файл default.vrd и отключим неиспользуемые протоколы (OData, Web-сервисы, HTTP-сервисы), если они не требуются клиентам для работы:
<?xml version="1.0" encoding="UTF-8"?>
<point xmlns="http://v8.1c.ru/8.2/virtual-resource-system"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
base="/base_name"
ib="File="C:\Bases\Trade";"
enableStandardOData="false">
<ws enable="false"/>
<httpServices enable="false"/>
</point>
Важные правила безопасной эксплуатации: