Есть VPN сервер у которого белый постоянный IP и домен (например, 123.4.5.6 и abc.com). Данная машина является OpenVPN сервером (10.10.0.1) и к нему подключены клиенты.
Нужно из интернета обращаться к некоторым клиентам OpenVPN по адресам client1.abc.com, но где и как это прописывать? Разумеется субдомены (*.abc.com) указывают на OpenVPN сервер.
Я знаю можно поставить прокси-сервер Nginx и указывать ему что показывать на определенных субдоменах, но мне нужно передавать не только определенные порты (типа 80 и т.п.). Необходимо весь диапазон портов пробрасывать по субдоменам на клиентов.
Никак. Для этих целей вам нужен пул белых IP-адресов + свой DNS.
Если же адреса есть, то это дело техники - ставите на VPN DNS-сервер, задаете эти адреса в роли доменов 3 уровня и пробрасываете маршрутизацией пакеты с этих IP внутрь VPN сети на конкретного клиента.
=( мдаа, смотрите ведь есть прекрасный Nginx который может отдавать необходимый сайт с клиента из сети VPN по определенному субдомену (прокси-сервер), но только по определенному порту и протоколу.
Мне если честно нужно изначально каждому клиенту SSH (:22) и HTTP (:80). С HTTP я разберусь с помощью Nginx. Но как быть с SSH?
Подозреваю что ответ кроется в портах, которые скорее всего не определяют с какого домена пришли, а могут лишь понимать с какого IP пришли, я прав? НО и какие идеи с пробросом SSH?
Я знаю, что можно проброс портов устроить примерным образом:
Валерий Сотников: Вы сами ответили на свой вопрос: "по определенному порту и протоколу". В самом TCP-пакете содержится URL (подчеркиваю URL, а не адрес домена). HTTP-сервер может по URL определить домен и либо отдать определенный сайт, либо сработать как Reverse Proxy.
В более же общем случае TCP-пакет содержит только IP-адрес, который никак о домене не скажет.