← На главную
Публикация информационной базы 1С на веб-сервере (например, Apache) позволяет пользователям подключаться к программе через браузер или тонкий клиент без прямого доступа к файловой системе сервера. Однако при попытке предоставить доступ удаленным пользователям из интернета часто возникает препятствие: интернет-провайдер не предоставляет постоянный статический IP-адрес. Разберем детально, как устроена работа веб-сервера с динамическими адресами, чем отличается белый динамический адрес от серого (CGNAT) и какие существуют способы организации стабильного подключения.
Шаг 1. Проверяем локальные настройки веб-сервера и брандмауэра
Прежде чем настраивать сетевую маршрутизацию и внешние сервисы, убедимся, что веб-сервер вообще готов принимать подключения не только с локального компьютера. Часто при начальной установке база публикуется исключительно на адрес локальной петли.
- Проверка привязки интерфейсов в Apache: откроем конфигурационный файл веб-сервера
httpd.conf. Найдем директиву Listen. Если там указано Listen 127.0.0.1:80 или Listen localhost:80, веб-сервер будет отвечать только на запросы, инициированные с этого же компьютера. Чтобы веб-сервер слушал запросы со всех сетевых интерфейсов, укажем директиву в формате: Listen 80 или Listen 0.0.0.0:80. После внесения изменений обязательно перезапустим службу Apache. - Настройка межсетевого экрана (брандмауэра): локальный брандмауэр операционной системы часто блокирует входящие сетевые пакеты на стандартные веб-порты из внешних подсетей. Необходимо открыть входящий порт (по умолчанию
TCP 80 для HTTP или TCP 443 для HTTPS) либо добавить исполняемый файл веб-сервера httpd.exe в список разрешенных приложений. - Проверка внутри локальной сети: выясним IP-адрес компьютера в локальной сети (например,
192.168.1.50) или имя компьютера в рабочей группе. Попробуем открыть веб-клиент 1С с соседнего компьютера в той же локальной сети по адресу вида http://192.168.1.50/base_name или http://server-pc/base_name. Если база открывается, локальная часть настроена верно.
Шаг 2. Определяем тип внешнего IP-адреса: белый или серый
Возможность прямого подключения через интернет напрямую зависит от того, какой адрес выделяет интернет-провайдер на WAN-порту маршрутизатора (роутера):
- Белый (публичный) динамический IP-адрес: этот адрес уникален в сети интернет и маршрутизируется глобально, однако провайдер может менять его при каждой перезагрузке роутера или по истечении времени аренды сессии. На такой адрес можно подключиться снаружи напрямую, зная текущий IP.
- Серый (частный) IP-адрес за NAT провайдера (CGNAT): провайдер выдает клиентам адреса из специальных диапазонов (например,
100.64.0.0/10, 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16). В этом случае сотни абонентов выходят в сеть под одним общим публичным адресом. Прямое входящее подключение к роутеру из глобальной сети в такой ситуации невозможно без специальных туннелей.
Чтобы выяснить тип адреса, сравним IP-адрес, отображаемый в веб-интерфейсе роутера в графе WAN IP (или Internet IP), с адресом, который показывают публичные сервисы определения IP в браузере. Если адреса совпадают и не входят в диапазоны частных сетей — адрес белый. Если в роутере отображается адрес из серого диапазона, а сервис видит другой публичный IP — адрес серый.
Вариант 1. Решение для белого динамического IP: DDNS и проброс портов
Если провайдер предоставляет белый динамический IP-адрес, организуем прямое подключение следующим образом:
- Настройка проброса портов (Port Forwarding): в веб-интерфейсе домашнего или офисного роутера создадим правило проброса портов. Направим входящий внешний трафик с внешнего порта (например,
80 или нестандартного, такого как 8080) на внутренний локальный IP-адрес компьютера с веб-сервером (192.168.1.50) на порт 80. Компьютеру с базой данных в настройках DHCP роутера обязательно зафиксируем постоянный статический внутренний IP по его MAC-адресу. - Подключение службы динамического DNS (Dynamic DNS / DDNS): чтобы не выяснять сменившийся IP-адрес вручную после каждой перезагрузки роутера, используем сервисы DDNS (например, No-IP, DynDNS или встроенные службы производителей роутеров). Специальный клиент на роутере или компьютере периодически отправляет текущий внешний IP-адрес на сервер DDNS, связывая его с постоянным доменным именем (например,
mycompany1c.ddns.net). - Подключение пользователей: удаленные пользователи прописывают в браузере или тонком клиенте постоянный адрес вида
http://mycompany1c.ddns.net:8080/base_name.
Обратите внимание на ограничения DDNS: при смене IP-адреса провайдером обновление записей в глобальной системе DNS может занимать от нескольких минут до часа. В этот период база данных будет временно недоступна для удаленных клиентов.
Вариант 2. Решение для серого IP или отсутствия белого адреса
Если адрес серый, стандартный проброс портов на роутере работать не будет. Проанализируем возможные варианты преодоления операторского NAT:
- Аренда статического белого IP-адреса у провайдера: самый надежный и простой в эксплуатации технический способ. Большинство интернет-провайдеров предоставляют фиксированный публичный IP-адрес за небольшую ежемесячную абонентскую плату. Это снимает необходимость в сервисах DDNS и исключает сбои при смене адреса.
- Использование сервиса 1С:Линк: фирменный сервис фирмы «1С», созданный специально для безопасного подключения к базам без необходимости иметь белый IP-адрес и настраивать роутер. Специальный агент («Агент 1С:Линк»), установленный на сервере, сам устанавливает защищенный исходящий туннель к серверам 1С, через которые проксируется веб-трафик к базе. Сервис удобен для небольших баз и нерегулярной работы, однако при высокой нагрузке или нестабильном канале связи скорость работы может снижаться.
- Организация VPN-сервера с промежуточным узлом: развернем собственный виртуальный сервер (VDS/VPS) с публичным статическим IP-адресом у любого хостинг-провайдера. Локальный сервер с 1С и удаленные клиентские компьютеры подключаются к общему VPN-серверу (например, на базе WireGuard или OpenVPN). Все участники оказываются внутри единой защищенной виртуальной сети и обращаются к базе по внутреннему VPN-адресу сервера.
- Использование оверлейных P2P/Mesh-сетей: программные оверлейные сети строят виртуальную защищенную сеть между устройствами напрямую, используя механизмы пробива NAT (STUN/ICE-технологии). Устройства объединяются в закрытую подсеть, внутри которой тонкий клиент 1С может обращаться к локальному серверу по выделенному виртуальному IP-адресу.
- Использование обратных туннелей (Reverse Tunnels): утилиты обратного туннелирования создают исходящее подключение от локального веб-сервера к удаленному публичному серверу и проксируют входящие веб-запросы к локальному Apache, предоставляя готовый публичный URL с поддержкой HTTPS.
- Облачные службы производителей роутеров: некоторые современные маршрутизаторы имеют встроенные облачные релей-сервисы с доменами производителя. Они способны проксировать HTTP/HTTPS-трафик к внутренним устройствам локальной сети даже при работе через серый IP оператора.
Важные особенности лицензирования и безопасности при веб-публикации
Организуя внешний доступ к базе 1С через веб-сервер, обязательно учтем архитектурные требования платформы 1С:Предприятие:
- Особенности раздачи клиентских лицензий: при публикации файловой базы через веб-сервер клиентские однопользовательские программные лицензии, установленные на компьютерах удаленных пользователей, не могут быть переданы на веб-сервер. Вся нагрузка по лицензированию ложится на машину с Apache. На компьютере с веб-сервером должна быть установлена многопользовательская программная лицензия или должен быть доступен сетевой аппаратный ключ защиты HASP.
- Использование протокола HTTPS: передача учетных данных (логинов и паролей) через открытый протокол HTTP в глобальной сети небезопасна. Кроме того, современные веб-браузеры в целях безопасности блокируют доступ веб-клиента 1С к буферу обмена, криптографическим механизмам и файловой системе, если страница открыта не по безопасному протоколу HTTPS. Рекомендуется настроить на Apache SSL/TLS-сертификат.
- Риски работы с файловыми базами через веб-сервер: веб-сервер запускает процессы расширения платформы от имени системной службы. При работе нескольких удаленных пользователей по нестабильным каналам связи аварийное отключение сессий или сетевые таймауты в файловом режиме могут приводить к взаимоблокировкам и повреждению файла базы данных
1Cv8.1CD. Для постоянной многопользовательской работы через интернет рекомендуется перевод информационной базы на клиент-серверный вариант (SQL).