Скорее всего это невозможно, но спросить нужно. И так, есть маленький зоопарк с 6 серверов. HaProxy в качестве балансировщика + еще 5 для остальных нужд.
Задача: подключаться к разным серверам по поддомену. Например:
ssh user@foo.example.com -> ssh-server1
ssh user@bar.example.com -> ssh-server2
Прокинуть порт на один сервер просто, но как проксировать всё? (опять же, скорее всего это просто невозможно)
Кусок конфига HaProxy
...
# #--- Балансировка SSH ---# #
frontend ssh
bind *:22
mode tcp
timeout client-fin 5m
timeout server-fin 5m
tcp-request inspect-delay 5s
tcp-request content accept if { req.ssl_hello_type 1 }
use_backend ssh-dns.backend if !{ req.ssl_hello_type 1 } { payload(0,7) -m bin 5353482d322e30 } OR !{ req.ssl_hello_type 1 } { req.len 0 }
....
# SSH DNS server proxy
backend ssh-dns.backend
mode tcp
server dns-server 192.168.1.108:22
Править конфиги на одном клиенте - не вариант) Если кто-то сталкивался с подобным, или может есть удачные попытки реализации буду очень признателен за любую помощь :)