Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
19 мая 2024, 06:41

Локальное подключение к серверу 1С через SSH-туннель - "Ошибка определения принадлежности ..."

Автор trefmanic, 02 ноя 2017, 18:26

0 Пользователей и 1 гость просматривают эту тему.

trefmanic

Добрый день! Специфическая проблема.

В удалённой сети есть два сервера: 1С+PostgreSQL и интернет-шлюз. У меня есть доступ по SSH к шлюзу и я пытаюсь построить туннель до сервера 1С. Моё рабочее место - Ubuntu 16.04.3 LTS, платформа 1С версии 8.3.10.2650. Адрес моей машины в локальной сети: 192.168.10.10, адаптер br0.

Вот конфигурация .ssh/config

ЦитироватьHost ssh_to_1c
    # Внешний адрес шлюза в удалённой сети
    HostName 172.17.2.121
    Port 22
    User trefmanic
    # Проброс портов к серверу 1С+PostgreSQL
    # 192.168.1.9 - адрес сервера в удалённой сети
    # 1cmain - имя этого сервера
    #----------------------------
    # PostgreSQL
    LocalForward *:5432 192.168.1.9:5432
    # Блок портов сервера 1С
    LocalForward *:1540 192.168.1.9:1540
    LocalForward *:1541 192.168.1.9:1541
    LocalForward *:1560 192.168.1.9:1560
    LocalForward *:1561 192.168.1.9:1561
    LocalForward *:1562 192.168.1.9:1562
Открываются порты на всех доступных интерфейсах (*).
При подключении с этими настройками порты открываются успешно:
Цитировать
[20:06:49@warp]$ sudo netstat -antpl | grep 'ssh'
tcp        0      0 0.0.0.0:1561            0.0.0.0:*               LISTEN      7545/ssh       
tcp        0      0 0.0.0.0:1562            0.0.0.0:*               LISTEN      7545/ssh       
tcp        0      0 0.0.0.0:1540            0.0.0.0:*               LISTEN      7545/ssh       
tcp        0      0 0.0.0.0:1541            0.0.0.0:*               LISTEN      7545/ssh       
tcp        0      0 0.0.0.0:1560            0.0.0.0:*               LISTEN      7545/ssh       
tcp        0      0 0.0.0.0:5432            0.0.0.0:*               LISTEN      7545/ssh
Если попробовать подключиться из клиента, запущенного на другом ПК в нашей сети к моему рабочему месту, всё работает ОК. Однако, если я пытаюсь подключиться из клиента, запущенного на том же самом рабочем месте, на котором выполняется проброс портов, получаю ошибку "Ошибка определения принадлежности клиентского и серверного процессов одному компьютеру".

Что пробовал: добавлял алиас
Цитироватьsudo ifconfig br0:100 10.10.10.1
и прописывал в /etc/hosts:
Цитировать10.10.10.1    1cmain
используя другой формат LocalForward:
ЦитироватьLocalForward 10.10.10.1:1540 192.168.1.9:1540
Всё равно та же самая ошибка.

Вопрос: можно ли обойти это и использовать для подключения через SSH-туннель только 1 машину?

P.S. При установке платформы в Ubuntu устанавливается и сервер 1С. Перед тем, как проводить эти манипуляции я убедился, что сервер на моём рабочем месте не запущен. Также пробовал удалять платформу полностью и ставить только тонкий клиент.
[Si non Confectus non Reficiat]

Dipod

Цитата: trefmanic от 02 ноя 2017, 18:26
Добрый день! Специфическая проблема.

В удалённой сети есть два сервера: 1С+PostgreSQL и интернет-шлюз. У меня есть доступ по SSH к шлюзу и я пытаюсь построить туннель до сервера 1С. Моё рабочее место - Ubuntu 16.04.3 LTS, платформа 1С версии 8.3.10.2650. Адрес моей машины в локальной сети: 192.168.10.10, адаптер br0.

Вот конфигурация .ssh/config

ЦитироватьHost ssh_to_1c
    # Внешний адрес шлюза в удалённой сети
    HostName 172.17.2.121
    Port 22
    User trefmanic
    # Проброс портов к серверу 1С+PostgreSQL
    # 192.168.1.9 - адрес сервера в удалённой сети
    # 1cmain - имя этого сервера
    #----------------------------
    # PostgreSQL
    LocalForward *:5432 192.168.1.9:5432
    # Блок портов сервера 1С
    LocalForward *:1540 192.168.1.9:1540
    LocalForward *:1541 192.168.1.9:1541
    LocalForward *:1560 192.168.1.9:1560
    LocalForward *:1561 192.168.1.9:1561
    LocalForward *:1562 192.168.1.9:1562
Открываются порты на всех доступных интерфейсах (*).
При подключении с этими настройками порты открываются успешно:
Цитировать
[20:06:49@warp]$ sudo netstat -antpl | grep 'ssh'
tcp        0      0 0.0.0.0:1561            0.0.0.0:*               LISTEN      7545/ssh       
tcp        0      0 0.0.0.0:1562            0.0.0.0:*               LISTEN      7545/ssh       
tcp        0      0 0.0.0.0:1540            0.0.0.0:*               LISTEN      7545/ssh       
tcp        0      0 0.0.0.0:1541            0.0.0.0:*               LISTEN      7545/ssh       
tcp        0      0 0.0.0.0:1560            0.0.0.0:*               LISTEN      7545/ssh       
tcp        0      0 0.0.0.0:5432            0.0.0.0:*               LISTEN      7545/ssh
Если попробовать подключиться из клиента, запущенного на другом ПК в нашей сети к моему рабочему месту, всё работает ОК. Однако, если я пытаюсь подключиться из клиента, запущенного на том же самом рабочем месте, на котором выполняется проброс портов, получаю ошибку "Ошибка определения принадлежности клиентского и серверного процессов одному компьютеру".

Что пробовал: добавлял алиас
Цитироватьsudo ifconfig br0:100 10.10.10.1
и прописывал в /etc/hosts:
Цитировать10.10.10.1    1cmain
используя другой формат LocalForward:
ЦитироватьLocalForward 10.10.10.1:1540 192.168.1.9:1540
Всё равно та же самая ошибка.

Вопрос: можно ли обойти это и использовать для подключения через SSH-туннель только 1 машину?

P.S. При установке платформы в Ubuntu устанавливается и сервер 1С. Перед тем, как проводить эти манипуляции я убедился, что сервер на моём рабочем месте не запущен. Также пробовал удалять платформу полностью и ставить только тонкий клиент.

У меня такая же проблема. Вам удалось её решить?

Похожие темы (5)

Рейтинг@Mail.ru

Поиск