У клиента 1С была опубликована наружу «в лоб» — порт с офисного роутера пробрасывался прямо на внутренний сервер. Снаружи был виден и IP компании, и сам рабочий сервер: его можно было спокойно сканировать и искать бреши. Мы вынесли reverse proxy на HAProxy на виртуальную машину у хостинг-провайдера и подключили его к офису по WireGuard, изолировали веб-сервер 1С в DMZ и оставили только необходимые порты. Наружу компания не публикует ничего — снаружи виден только облачный прокси.
Контекст и задача
Рабочий сервер стоял «лицом к интернету»
1С публиковалась наружу самым простым способом: порт с офисного роутера пробрасывался напрямую на внутренний сервер 1С. Снаружи это выглядит так — у компании виден публичный IP, за которым сразу торчит боевой сервер.
В чём риск: такой сервер можно круглосуточно сканировать, мониторить и искать в опубликованном сервисе уязвимости. Стоит найти одну брешь — и злоумышленник оказывается сразу внутри сети, на рабочем сервере. Дальше компрометация всей сети — вопрос времени.
Решение
Спрятали сервер за reverse proxy и заперли в DMZ
HAProxy в облаке — единая точка входа
Подняли HAProxy на отдельной виртуальной машине у хостинг-провайдера и сделали его единственной публичной точкой входа. Все внешние подключения к 1С приходят на этот облачный прокси, а не на офис. Прокси принимает запрос и сам обращается к веб-сервер 1С — снаружи никто не видит, что и где находится за ним.
Скрыли IP компании и её сеть
Наружу теперь торчит только адрес облачной виртуальной машины с прокси. Публичный IP компании, реальный сервер 1С и внутренняя сеть из интернета не видны вообще — атаковать «саму компанию» больше нельзя, потому что снаружи её попросту не видно.
По WireGuard — и только до веб-сервера 1С в DMZ
Облачный прокси подключается к офису по зашифрованному туннелю WireGuard, а сам офис не публикует наружу ни одного порта. Через туннель HAProxy видит ровно один узел — веб-сервер 1С, вынесенный в отдельный сегмент DMZ и изолированный от остальной сети. Больше в офисе прокси недоступно ничего: даже если его попытаются взломать, дальше веб-сервера в DMZ он не пройдёт.
Два интернет-канала и живой туннель
У офиса два интернет-канала от разных провайдеров. WireGuard держится за живой канал и при обрыве одного провайдера автоматически переключается на второй — 1С остаётся доступной, а переключение проходит незаметно для пользователей.
Оставили только необходимые порты
Внутри тоже по минимуму: веб-сервер 1С в DMZ достукивается только до сервера 1С и его базы SQL в основной сети, каждый раз по одному нужному порту. Снаружи открытых портов у офиса нет вообще — весь вход идёт через WireGuard-туннель к облачному прокси, а «долбёж» по портам гасится ещё на нём.
Результат
Снаружи атаковать стало нечего
- ✓Компании из интернета не видно. Снаружи виден только облачный прокси у хостера — публичный IP компании, сервер 1С и LAN скрыты.
- ✓Взлом не даёт хода в сеть. Веб-сервер 1С заперт в DMZ, а прокси стоит в облаке отдельно от компании — ни то, ни другое не открывает дорогу в корпоративную сеть.
- ✓Поверхность атаки минимальна. Наружу у офиса нет открытых портов вообще — вход только через WireGuard-туннель к облачному прокси; «долбёж» по портам до внутренних систем не доходит.
- ✓Канал не падает вместе с провайдером. В офисе два интернет-канала, WireGuard держится за живой — при обрыве одного 1С продолжает работать через второй.
- ✓Для пользователей ничего не изменилось. 1С работает как раньше — просто теперь через защищённый вход.
Технологии проекта
Что использовали
- HAProxy
- Reverse proxy
- VM у хостинг-провайдера
- WireGuard (туннель облако ↔ офис)
- Два интернет-канала (failover)
- DMZ для веб-сервера 1С
- Скрытие IP компании (backend)
- Межсетевой экран (firewall)
- Изоляция веб-сервер → 1С → SQL
1С или другой сервис опубликованы напрямую наружу?
Спрячем рабочий сервер за reverse proxy, изолируем публикацию в DMZ и оставим только нужные порты — снаружи атаковать станет нечего. Быстрая и недорогая мера, которая закрывает один из главных рисков.