При развертывании веб-сайта или публикации базы 1С на веб-сервере (например, под управлением IIS или Apache) разработчики и администраторы часто сталкиваются с технической задачей: как сделать так, чтобы пользователи могли заходить в систему по понятному буквенному имени (например, my-company-1c.ru), а не вводить сложный цифровой адрес с указанием порта вида http://0.0.0.1:9090. Ситуация усложняется, если провайдер предоставляет динамический или вовсе «серый» IP-адрес.
В этой статье мы подробно разберем, как привязать имя к веб-сайту, избавиться от порта в адресной строке и настроить стабильный удаленный доступ даже в самых сложных сетевых условиях.
Если у вас есть постоянный публичный («белый») IP-адрес, процедура привязки имени выглядит достаточно просто. Проанализируем этот процесс по шагам:
A-запись. Эта запись указывает, какому IP-адресу соответствует ваше доменное имя.Пример настройки в панели DNS:
@ (или www)A0.0.0.1 (укажите ваш реальный внешний IP-адрес)После обновления DNS-серверов в интернете (это может занять от нескольких минут до 24 часов) при вводе имени в браузере запросы будут автоматически перенаправляться на ваш IP-адрес.
Важно понимать фундаментальное ограничение: DNS-записи связывают домен только с IP-адресом, но не умеют перенаправлять трафик на конкретный порт. По умолчанию все браузеры ищут веб-сайты по протоколу HTTP на порту 80, а по защищенному протоколу HTTPS — на порту 443. Если ваш веб-сервер слушает порт 9090, пользователям все равно придется вводить имя.ru:9090.
Чтобы решить эту проблему и спрятать порт, мы можем использовать два основных метода:
Метод А. Перенаправление портов на роутере (Port Forwarding)
Если ваш веб-сервер находится за роутером, вы можете настроить правило трансляции портов. В настройках роутера создается правило, которое перенаправляет входящие запросы с внешнего стандартного порта 80 (или 443) на внутренний IP-адрес вашего сервера и локальный порт 9090.
Метод Б. Настройка обратного прокси-сервера (Reverse Proxy)
Это более профессиональное и гибкое решение. На сервере устанавливается веб-сервер, выступающий в роли посредника (например, Nginx). Он принимает все запросы из интернета на стандартном порту 80 или 443, а затем незаметно для пользователя перенаправляет их локально на порт 9090.
Рассмотрим пример конфигурационного файла Nginx для перенаправления запросов:
server {
listen 80;
server_name my-company-1c.ru;
location / {
proxy_pass http://127.0.0.1:9090;
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;
}
}
Часто провайдеры выдают «белый» IP-адрес, но он меняется при каждой перезагрузке роутера (динамический IP). В этом случае обычная статическая A-запись перестанет работать, как только адрес изменится. На помощь приходят технологии Dynamic DNS (DDNS).
Многие производители современных роутеров (например, Keenetic, ASUS) предоставляют встроенный и абсолютно бесплатный сервис DDNS:
KeenDNS. Вы можете прямо в интерфейсе роутера за пару кликов выбрать свободное имя в домене производителя (например, my1c.keenetic.link).Если ваш роутер не поддерживает собственный сервис, можно воспользоваться бесплатными сторонними провайдерами DDNS, такими как DuckDNS или Dynu DNS, которые не требуют постоянного ручного продления аккаунта (в отличие от старых сервисов вроде No-IP).
Если ваш интернет-провайдер выдает только «серый» IP-адрес (вы находитесь за NAT провайдера, и прямое подключение извне невозможно), стандартные методы DDNS без облачного режима работать не будут. В этом случае мы можем реализовать проверенную схему с использованием недорогого виртуального сервера (VDS) с белым IP-адресом:
WireGuard или OpenVPN) между вашим офисным роутером (или сервером 1С) и арендованным VDS. Таким образом, локальный сервер и VDS объединяются в одну защищенную сеть.Nginx, который будет принимать запросы из интернета на белом IP VDS-сервера и переправлять их через VPN-туннель прямо на ваш локальный веб-сервер с 1С.Чтобы избежать сложной настройки VPN, маршрутизации и аренды серверов для обхода «серого» IP, рассмотрим современный инструмент — Cloudflare Tunnel. Это бесплатная технология, которая позволяет безопасно связать локальный веб-сервер с внешним доменным именем без необходимости иметь белый IP и открывать порты на роутере.
Выясним, как работает этот механизм:
cloudflared.http://localhost:9090.Если веб-сервер или база 1С на управляемых формах предназначены не для публичного пользования, а только для сотрудников вашей компании, выставлять сервер в открытый интернет — небезопасно. Лучше использовать технологию Mesh-сетей, таких как Tailscale или ZeroTier.
Разберем, в чем преимущество данного подхода: