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

Доступ к серверу Linux с частным IP без VPN

Я работаю в сети, в которой я не могу получить общедоступный IP-адрес или настроить доступ к VPN. Есть ли способ, которым я могу удаленно общаться с локальным сервером, используя посредника в облаке, которому локальный сервер и удаленный клиент отправляют исходящие запросы? Если локальный сервер каждые несколько секунд будет делать запрос общедоступному посреднику (EC2), чтобы узнать, ждет ли удаленный клиент, чтобы поговорить с ним, то тот факт, что у него нет общедоступного IP-адреса, не имеет значения. В этот момент я также мог сделать запрос от клиента в удаленном месте и каким-то образом передать ssh на сервер через общедоступного посредника. Таким образом, и клиент, и сервер инициируют исходящий запрос, который может исходить с частного IP-адреса, без каких-либо изменений в любой локальной сети. Есть яркие идеи?

Вы можете оставить обратный туннель ssh открытым для этой «облачной» конечной точки.

Предположим, что поле A - это ваш рабочий стол, поле P - это сервер с частным IP, а поле C - облачный сервер:

на P откройте туннель:

P% ssh C -R 2200:localhost:22

Оставьте этот сеанс запущенным.

Чтобы подключиться позже из A:

A% ssh C
C% ssh localhost -p 2200
P%    # you're now logged into P

Это работает только до тех пор, пока никто не прерывает этот первый сеанс ssh от P к C, но пока они этого не делают, это работает.

Я делал «туннель через доступный сервер» много раз; но недавно выяснилось, что намного проще просто использовать IPv6. Просто установите Miredo, (или активируйте Teredo в Windows), и вы получите свой собственный глобально доступный IPv6-адрес. Поскольку он подвержен изменениям, установите динамический DNS, и все готово.

Я думаю, что решение ssh, опубликованное MadHatter, является самым простым. Кроме того, в зависимости от того, что вы подразумеваете под «без VPN», вы можете настроить клиент OpenVPN на машине с частным IP-адресом и сервер OpenVPN на посреднике. Клиент OpenVPN будет предоставлять посреднику только исходящий UDP-трафик, но вы должны иметь возможность перейти к посреднику и получить полный доступ к частной машине через туннель. В этом отношении, при правильной конфигурации сервера OpenVPN на посреднике, ваша удаленная рабочая станция может быть настроена как другой клиент OpenVPN, и вы можете просто подключиться к серверу и прозрачно видеть частную машину.

Вы могли бы попробовать n2n из ntop чтобы установить соединение без изменения брандмауэра.