Назад | Перейти на главную страницу

Пользовательские туннели SFTP

По сути, у меня есть пара разных стеков Centos7 LAMP, работающих на разных виртуальных машинах (на xenserver) и openSSH. У меня также есть пара промежуточных прокси-серверов аутентификации (один для HTTP, один для SSH, один для SFTP), для безопасности, и поэтому все виртуальные машины могут работать на одних и тех же портах. Прокси-сервер HTTP работает, но у меня возникли проблемы с настройкой прокси-сервера SFTP. Я хочу, чтобы клиенты были подключены к соответствующему VPS на основе их имени пользователя.

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

В этом примере предположим, что кто-то пытается просмотреть vps1.com через порт 80 через мой внешний IP-адрес (12.345.678.90). Сначала они попадают в маршрутизатор (который порт перенаправляет их на HTTP-прокси), а HTTP-прокси перенаправляет их на правильный локальный компьютер с помощью VirtualHosts. Предположим, у vps1.com есть локальный IP-адрес 192.168.1.10, а у vps2.com - 192.168.1.20. Они перенаправляются на правильный локальный IP-адрес и обслуживают правильный контент. Отлично, эта часть работает нормально.

Теперь предположим, что веб-мастер vps1.com хочет войти в систему и изменить свой веб-сайт. Он войдет в SFTP-клиент по адресу 12.345.678.90 на порт 2222 как пользователь johnVPS1. Маршрутизатор успешно переносит его на прокси-сервер SFTP (на 192.168.1.7). Теперь прокси-сервер SFTP должен туннелировать или перенаправлять его на правильный VPS, чтобы он мог редактировать свой веб-сайт, но у него не будет доступа ни к чему другому.

                          External IP 12.345.678.90
                                   Router
             ---------------------------------------------
                   /                              \
       Port 80    /                                \  Port 2222
                 /                                  \ 
                /                                    \
         HTTP Proxy                                  SFTP Proxy
           /     \                                    /     \
vps1.com  /       \  vps2.com              johnVPS1  /       \  billVPS2
         /         \                                /         \ 
192.168.1.10:80    192.168.1.20:80   192.168.1.10:2222   192.168.1.20:2222

Некоторые вещи, которые я пробовал до сих пор ---

Пожалуйста, может кто-нибудь направить меня по правильному пути? Я все сделал неправильно, или я просто что-то упустил? Я потратил последние несколько дней, пытаясь понять это, я был бы очень признателен, если бы кто-нибудь мог указать мне верный путь!