Войти

Показать полную графическую версию : как сделать Web terminal для SSH доступа без Real IP ?


vyazikov
23-10-2014, 17:28
Друзья всем привет..
не знаю насколько правильный раздел я выбрал но задам свой вопрос тут)
у меня есть 4 Linux debian машины которые находятся в разных местах и подключены к интернету, но до них нету REAL IP и не достучаться из вне...

Нужно реализовать такую задачу.
Устройства по DHCP получают адрес и соединяются с моим центральным сервером VDS которая имеет внешний IP конечно же...
Я с любой клинетской машины захожу на этот VDS по Web , выбираю устройство , и открываю в окне терминал SSH с ним...
-для удаленных машин жеталеьно скрипты на Python но это может быть и какой-то готовый софт
-на VDS будет Web server . на котором будет как бы промежуточный брокер для установки соединения, это может быть PHP , JS , Java на фоне может быть что-то еще, какой-то сервер.
-желательно что бы от удаленной машины до сервера связь была по 80 порту, другие могут быть закрыты. (если это реально)

Покопавшись в интернете я нашел много примеров как сделать простой WebTerminal на той машине куда надо терминалиться, однако до нее нет доступа по внешнему IP....
Графически схема работы должна быть примерно такая

PC_1---------|
PC_2---------| VDS | -WEB UI ssh client
PC_3---------|

Поскольку я соверешнно не gредставляю как это организовать, то любые советы были бы полезными.

заранее спасибо!

Spaser
23-10-2014, 17:59
А для какой цели Вам SSH? Может проще TeamViewer установить?

vyazikov
23-10-2014, 18:26
а собственно компьютеры Линуксовые без GUI вообще... да и нужен SSH чтоб подкрутить конфиги при необходимостии рестартнуть сервисы и все такое.

vadblm
23-10-2014, 19:05
VPN-сервер поднимите на VDS, пусть искомые машины к нему подключаются при старте автоматически, для надёжности можно в крон на них скриптик запихнуть, скажем раз в минуту проверять статус VPN подключения, если упало, попытаться переподключиться. OpenVPN отлично подойдёт, но это не принципиально.

Web терминалы в целом имхо штука небезопасная, но вот GateOne показался неплохим в этом плане, использует SSL, авторизацию, при необходимости ключи тоже можно прикрутить. Ну а дальше в браузере https://VDS, там ssh://<vpn адрес клиента> и вуаля.

vyazikov
23-10-2014, 19:33
а варианты без VPN????
там на этих машинках идет хороший такой трафик постоянно, мегабита на 4-6. Я боюсь что VPN будет снижать пропускную способность, эти машиники вещают видео в сеть.

vadblm
23-10-2014, 19:39
там на этих машинках идет хороший такой трафик постоянно, мегабита на 4-6. Я боюсь что VPN будет снижать пропускную способность, эти машиники вещают видео в сеть. »
А зачем вам этот трафик гонять через VPN? :o

vyazikov
23-10-2014, 20:34
тогда я не очень силен в VPN)) мне казалось весь трафик сразу улетает через этот туннель...) не имел дела с этим))

vadblm
23-10-2014, 21:31
тогда я не очень силен в VPN)) мне казалось весь трафик сразу улетает через этот туннель...) не имел дела с этим)) »
От реализации зависит. Но в принципе можно же настроить маршруты как хочешь. Ну и у того же OpenVPN

By default, when an OpenVPN client is active, only network traffic to and from the OpenVPN server site will pass over the VPN. General web browsing, for example, will be accomplished with direct connections that bypass the VPN.

Поскольку у вас нет опыта с впнами, можно проще поступить, если у вас есть доступ к шлюзам, за которыми сидят машинки без публичных адресов — просто пробросьте SSH порт с шлюза на них. Я так обычно и делаю.

vyazikov
23-10-2014, 21:50
нет нету! доступа нету вообще ни к чему..
Машинки передвигаются из разных мест и разных сетей, уловия которых я совершенно не знаю и доступа не имею. В том числе физического доступа к машинкам не имею.. Грубо говоря настроил, отдал заказчику и все.
Вот и встает задача ими как-то управлять, потому что каждый раз ехать забирать или выезжать на место не круто((( Звонит юзер говорит чето не работает, а Юзер он Юзер))))) разобраться могу по SSH но как достучаться до машинки? просить юзера мол оставь свой комп я через teamviewer поставлю Putty и подключусь по локалке и щас все проверю -не вариант.

vadblm
23-10-2014, 21:51
Значит, придётся курить VPN.

vyazikov
23-10-2014, 21:56
ну либо я думал чожно установить какой-то терминальй сервер, или Jabber client или чето наподобии, углубившись в программирование

vadblm
23-10-2014, 22:05
установить какой-то терминальй сервер »
Как вы с его помощию собираетесь добираться до клиентов. Которые хз где?
Jabber client или чето наподобии »
Это другой подход, не универсальный и без ручного контроля. Puppet например. Теже конфиги раздать (да в принципе что угодно можно сделать) им милое дело, но проверить не сможете, как прошло.

User001
24-10-2014, 11:29
а варианты без VPN???? »Читайте на тему Reverse SSH (SSH Tunneling - Poor Techie's VPN (http://www.linuxjournal.com/content/ssh-tunneling-poor-techies-vpn)).




© OSzone.net 2001-2012