Как подключиться к хранилищу конфигурации на сервере за NAT, если есть доступ по RDP?

01.06.21

Разработка - Групповая разработка (Git, хранилище)

В статье находится инструкция по подключению базы 1С к хранилищу конфигурации, если хранилище не опубликовано в интернет, но опубликовано по TCP в локальной сети клиента.

Дано:

  • Требуется работать локально на своём мощном компе и быть подключенным к хранилищу клиента.
  • Клиент ни при каких условиях не хочет поднимать VPN в свою локальную сеть или публиковать хранилище в интернет.
  • У вас есть подключение по RDP к компьютеру в локальной сети клиента с которого вы можете подключиться к хранилищу.
  • Хранилище конфигурации клиента опубликовано по протоколу TCP.

Решение:

  1. Приобретаете белый ip адрес у своего провайдера. У меня провайдер domru, у него это добро стоит всего 20 руб. в месяц.
  2. Поднимаете у себя на домашнем компе ssh сервер.
  3. С помощью ssh клиента Putty в своём rdp сеансе на сервере клиента подключаетесь к своему компьютеру и делаете Remote TCP forwarding для хранилища.
  4. Со своего компьютера подключаетесь к хранилищу через проброшенный порт

Плюсом такого решения для клиента является то, что соединение активно только пока активно ssh подключение из rdp сеанса на сервере клиента. Если вам закроют доступ к rdp, то подключаться к хранилищу вы не сможете.

Минусом такого решения для меня является то, что мой домашний комп уязвим для атаки из сети клиента, т.к. свой логин и пароль мне приходится набирать в сеансе rdp и клиенту ничего не стоит их перехватить.

Далее подробнее по пунктам:
Поднятие ssh сервера

У меня Windows 10. Я воспользовался нативным сервером OpenSSH который можно установить с помощью PowerShell.

Запускаем PowerShell с правами администратора и проверяем установлен ли у нас сервер OpenSSH или нет. Для этого выполняем команду:

 

Get-WindowsCapability -Online | ? Name -like 'OpenSSH.Ser*'

 

Как видно из результата команды - сервер у меня уже установлен. Если у вас он не установлен, то выполните команду

Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

Затем настраиваем службу нашего SSH сервера
Я решил, что меня волнует безопасность моего компьютера, поэтому сервер я всегда буду стартовать только вручную, когда мне это надо:

Set-Service -Name sshd -StartupType 'Manual'

Если вас безопасность не парит, то можете поставить службу в автозапуск:

Set-Service -Name sshd -StartupType 'Automatic'

Затем стартуем службу:

Start-Service sshd

Проверяем, что 22-й порт брандмауера открыт и прослушивается:
 

Get-NetFirewallRule -Name *OpenSSH-Server* |select Name, DisplayName, Description, Enabled

netstat -na| Select-String '0.0.0.0:22'

Если вы подключены к интернету через роутер, то требуется пробросить какой-нибудь внешний порт на свой компьютер в локальной сети. Я покажу на примере моего роутера tp-link. Для доступа к веб-интерфейсу моего роутера мне нужно перейти в браузере по адресу http://192.168.0.1/ У вас адрес может быть другой.

Для начала зарезервируем в своей локальной сети адрес для своего компьютера. Я зарезервировал для своего компа адрес 192.168.0.101 и в дальнейших настройках буду использовать его. MAC-адрес своего компьютера можно увидеть в списке подключенных клиентов выше.

 

 

Далее выполняем проброс случайного порта роутера на 22-й порт нашего компьютера. Я выбрал порт 2020.

 

 

Подключение к серверу SSH из сеанса RDP

Заходим по RDP на сервер клиента и скачиваем подходящий клиент Putty.exe Ссылка

Запускаем его и настраиваем подключение:


 

В поле Host Name вводите ваш белый ip, который вам выдал провайдер. Порт вводите тот, который пробросили на роутере. У меня это 2020. Сохраняете настройки сессии кнопкой Save. Нажимаете кнопку Open и проверяете, что клиент подключается к вашему домашнему компьютеру. Потребуется ввести логин и пароль пользователя домашнего компьютера.

Если всё получилось, закрываем соединение командой exit.

Теперь требуется сделать обратный проброс порта для того, чтобы мы могли подключится к хранилищу с нашего домашнего компьютера:

 

 

В поле Source Port пишем любой порт, который мы будем использовать в 1С для подключения к хранилищу. У меня это 3333. В поле Destination пишем имя компьютера, на котором развернуто хранилище или localhost, если хранилище находится на том же компьютере, к которому вы подключены по rdp. Стандартный порт хранилища конфигурации 1С - 1542.

Сохраняем настройки подключения на вкладке настроек сессии, открываем SSH соединение по кнопке open, вводим логин и пароль и возвращаемся на свой домашний комп.

Подключение к хранилищу через проброшенный порт

Открываем конфигуратор и подключаемся к хранилищу:

 

 

В пути у нас всегда будет localhost т.к. мы в шаге выше сделали проброс 3333 порта нашего домашнего компьютера через ssh туннель на компьютер к которому мы подключены по RDP. 3333 - это "любой порт", что я пробросил в шаге выше. RepoName - это название опубликованного хранилища конфигурации.

Profit

Если не хотите давать доступ к своему домашнему компу по логину и паролю, то можете сгенерировать ssh ключи для доступа к нему, запретить на нем подключение по логину и паролю, разрешить подключение с помощью ssh ключа и добавить сгенерированный ключ в список доверенных. Я не стал этим заморачиваться.

Вступайте в нашу телеграмм-группу Инфостарт

Администрирование Хранилище

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

Разработка Инструментарий разработчика Групповая разработка (Git, хранилище) Разработчик Платные (руб)

Практический курс по работе с AI-агентами для разработчиков 1С уровня middle и senior, а также тимлидов команд: от постановки задач и передачи контекста до создания расширений, интеграций, MCP-инструментов, тестов и проверки готового решения.

50000 руб.

10.09.2026    14062    123    0    

87

DevOps и автоматизация разработки Групповая разработка (Git, хранилище) Системный администратор Разработчик 1С 8.3 1С 8.5 Бесплатно (free)

В прошлой статье у ERP оставалось 89 отказов загрузки, у ЗУП — 19. Теперь обе конфигурации совпали с эталонами, а собранные файлы прошли круг через платформу. Развертка выделена в открытый репозиторий cf-unwrapper: библиотека на Rust и консольная утилита. Показываю результаты, объясняю границы «100%» и приглашаю к проверкам и развитию проекта.

02.11.2026    321    oyti    1    

1

DevOps и автоматизация разработки Групповая разработка (Git, хранилище) Разработчик 1С:Предприятие 8 Россия Бесплатно (free)

Практическое руководство для команд, которые хотят уйти с хранилища конфигурации на git, не переходя на новую среду разработки. Подойдёт разработчикам и тимлидам, которые настраивают командную разработку на типовых и собственных конфигурациях.

02.11.2026    644    vanya_gonchar    2    

6

Файловый обмен (TXT, XML, DBF), FTP DevOps и автоматизация разработки Групповая разработка (Git, хранилище) Системный администратор Разработчик 1С 8.5 Бесплатно (free)

В прошлой статье я выгрузил Бухгалтерию в XML байт в байт и спросил, на чем проверить дальше. Вы ответили: ERP, старые релизы, зарплата. Прогнал пять конфигураций, от клиента ЭДО до ERP на 120 тысяч файлов. Рассказываю, что сломалось после Бухгалтерии, почему эталону платформы нельзя верить на слово, как выгрузить одну конфигурацию в формат трех версий платформы - и почему cf-конвертер становится отдельным продуктом, Разверткой.

02.11.2026    430    oyti    2    

3

Инструментарий разработчика Групповая разработка (Git, хранилище) Разработчик Стажер 1С 8.3 Абонемент ($m)

Два разработчика, по десять правок «Нано-УТ 2.0» в git: длинные ветки против слияния после каждой правки, 22 слияния с загрузкой main в чистую базу. ConfigDumpInfo.xml конфликтовал в 11 слияниях из 11, построчное объединение ломало XML и модули. Показываю, что убрать строкой в .gitattributes, что разбирать целыми вставками и как увидеть конфликты до слияния. Прилагаются инструмент с 38 тестами и материалы опыта.

1 стартмани

29.10.2026    414    Ninel_S    3    

-1

DevOps и автоматизация разработки Групповая разработка (Git, хранилище) Файловый обмен (TXT, XML, DBF), FTP Системный администратор Разработчик 1С 8.5 Бесплатно (free)

Выгрузка типовой Бухгалтерии в XML через базу занимает больше четырёх минут. Я написал движок, который читает файл конфигурации напрямую и выгружает его за 35 секунд, совпадая с выгрузкой платформы байт в байт во всех 90 385 файлах. Загрузка обратно тоже работает: круг через платформу совпадает полностью. Рассказываю, как ускоряли, как проверяем и что при загрузке XML теряет сама платформа. А в конце спрашиваю, нужно ли это кому-то, кроме меня, и на какой конфигурации проверить следующей.

27.10.2026    990    oyti    20    

16

Рефакторинг и качество кода Групповая разработка (Git, хранилище) Разработчик 1С 8.3 Абонемент ($m)

Скрипт на Python посчитал метрики 2711 общих модулей УТ 11.5: 26 модулей длиннее 10 000 строк кода. Проверила счёт на синтетических модулях и показала, где рейтинг ошибается: самый длинный модуль оказался в нём ниже девяти коротких. Для разработчиков 1С. В архиве скрипт, тесты и журналы.

1 стартмани

26.10.2026    452    Ninel_S    8    

-3

Групповая разработка (Git, хранилище) Разработчик 1С 8.3 Абонемент ($m)

Общие модули 1С вынесла в подмодуль Git и подключила к двум проектам на выгрузке «Нано-УТ» и платформе 8.3.27. Подмодуль на весь каталог CommonModules загружается; клон без --recursive даёт код 1, а забытый указатель и смена ветки молча дают базу не той версии. Переименованная процедура прошла /CheckModules при 28 вызовах. В архиве скрипты, диагностика подмодулей, тесты и журналы.

1 стартмани

26.10.2026    433    Ninel_S    0    

-1
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. user1606647 01.06.21 08:16 Сейчас в теме
Добрый день! Спасибо за статью! Очень интересно, а главное понятно написано!!!
2. pavel06 2 01.06.21 12:38 Сейчас в теме
VPN клиент поднимать не хочет, а RDP доступ к серверу давать хочет. Оригинально защищается.
CSiER; Dipod; +2 – Ответить
3. Dipod 118 01.06.21 13:43 Сейчас в теме
(2)К сожалению, такова жизнь. Мотивы клиента мне не известны. Согласовать VPN не удалось.
Sinsinmin; +1 – Ответить
4. Yashazz 4931 01.06.21 13:49 Сейчас в теме
А что мешает работать на самом РДП? Прямо оттуда? Всегда так делаю, нареканий у клиентов не вызывало. Зачем ещё какой-то комп к этому припахивать - что, терминальная машина совсем слабенькая и/или сервер у клиента никудышный?
6. Dipod 118 01.06.21 14:02 Сейчас в теме
(4) На этом проекте около 40 программистов, конфигурация ЕРП. RDP сервер тормозит под такой нагрузкой. Я помучался и решил сбежать на свой комп.
7. Yashazz 4931 01.06.21 14:22 Сейчас в теме
(6) Я б попросил клиента ещё один РДП организовать в таком случае) Вытаскивать на свой локальный комп, неважно через что, конфу клиента, страдающего избирательной паранойей, чревато. Да и инфраструктура может подвести - интеграция с техникой какой-либо или сторонним ПО, мало ли... Тоже всё на личный комп пробрасывать да дублировать?)
8. Dipod 118 01.06.21 15:22 Сейчас в теме
(7) У нас эти 40 программистов распределены на 4 терминальных сервера, плюс аналитики, тестировщики и консультанты сверху, которых я не посчитал. На этом ресурсы клиента закончились.
14. Yashazz 4931 01.06.21 17:44 Сейчас в теме
(8) Сурово.

В любом случае способ хороший, может пригодиться. Плюсую.
5. пользователь 01.06.21 14:01
Сообщение было скрыто модератором.
...
9. starik-2005 3309 01.06.21 15:22 Сейчас в теме
У меня провайдер domru, у него это добро стоит всего 20 руб. в месяц.
1. А общий прайс? У меня 100 мб/с стоит 199, а белый IP - 150. Итого 349 в месяц. А у Вас там инет стоит 600 рублей, поэтому 20 рублей за IP погоды не сделают.

2. Если у Вас есть роутер собственный, то у вендора 99% есть облако, которое может дать Вам доступ к Вашему роутеру по своему внутреннему DNS (фактически, домен второго уровня в облаке вендора). В итоге будет что-то типа klientxxxyyy.kinetick.com, а дальше внутри себе делаете проброску нужного порта.
10. Dipod 118 01.06.21 15:25 Сейчас в теме
(9)
1. Я плачу 650 руб/мес за 250 мб/с. Плюс 20 руб/мес за белый ip.

2. Спасибо, не знал.
11. starik-2005 3309 01.06.21 15:29 Сейчас в теме
(10)
за 250 мб/с
Зачем Вам столько? А пинг какой? (2ip.ru, например):
Прикрепленные файлы:
12. Dipod 118 01.06.21 15:34 Сейчас в теме
(11) скорость такая? - чтоб было :-) Хочется :-)
Прикрепленные файлы:
13. starik-2005 3309 01.06.21 16:51 Сейчас в теме
Для отправки сообщения требуется регистрация/авторизация