Подключение к нескольким компьютерам по SSH только за одним публичным IP?

У меня следующая положение. Я нахожу себя все более и более используемым (хотя и платным) как "компьютерный парень" по соседству для "исправления" общих "проблем."Будучи хакером, я думал о предоставлении в качестве услуги для моих клиентов удаленной помощи через SSH / VNC. Концептуально это здорово, но есть несколько деталей реализации, с которыми я борюсь.

  1. определение IP-адреса маршрутизатора каждого клиента. Это можно сделать обычно с динамическим DNS, но я мысль о написании небольшой программы, которая будет посылать текущий IP-адрес маршрутизатора на мой сервер, так что я могу держать на вершине вещей. Динамический DNS, конечно, проще, но он может усложниться, если я использую внешнюю службу. Я скупой, так что чем меньше я должен платить, тем лучше, и это не было бы идеально, чтобы создать новую учетную запись для маршрутизатора каждого клиента. Вот мои варианты динамического DNS:

    1. я мог бы платить ежемесячно за хостинг для сервера имен, и создать иерархия доменов, что имеет смысл и реализовать динамический DNS.
    2. я мог бы купить сервер с низкой спецификацией и привязать хост и сделать все локально, но, как указано выше.
    3. я смог поручить клиентов в месяц (!?!) для "динамических сборов за хостинг DNS" и использовать вырученные средства для оплаты за хороший счет от DynDNS.org или что-то.
  2. поддержка нескольких компьютеров за пределами их маршрутизатора. Для этого у меня тоже есть варианты:

    1. реализовать OpenVPN где возможно и просто использовать удаленный VPN для доступа к компьютерам, как если бы они были локальными машинами в сети. (Вот как работают виртуальные частные сети? Я бы по существу появился на маршрутизаторе как просто еще один IP-адрес, и у меня был бы полный доступ ко всем машинам в сети, правильно?)
    2. реализовать некоторые обратное соединение взломать, чтобы они подключаются ко мне, а затем у меня установить соединение SSH с ними.
    3. мерзкий способ переадресации портов. Это означает поддержание база данных каждого клиента и номер порта каждой машины клиента для SSH на маршрутизаторе. Фу.
  3. возможность удаленной поддержки ноутбуков. Скажем, мой клиент находится в кафе в другом штате, и что-то идет не так. Поскольку многие из вышеперечисленных решений имеют дело с решениями на основе маршрутизаторов, все выходит из окна. Это не имеет большого значения, чтобы иметь возможность сделать это заранее, так как это своего рода крайний случай, но все же.

Can кто-то порекомендует лучший способ 1. найдите общедоступный IP-адрес каждой машины, 2. установите с ним связь и 3. возможно, предоставить удаленный * удаленный сервис, если они " роуминг?"

22
задан Naftuli Kay
07.04.2023 2:32 Количество просмотров материала 3368
Распечатать страницу

3 ответа

многие вопросы могут быть проигнорированы при использовании TeamViewer. Клиенту нужно только запустить программу и сообщить вам идентификатор (статический) и пароль (временный); программа заботится об обходе NAT и предлагает удаленный рабочий стол и передачу файлов. Нет альтернативы SSH, но TeamViewer, по-видимому, также позволяет VPN-подключение в сеть клиента. (Я не уверен, что это работает без администратора / root.)

для динамического DNS Вы можете повторно использовать существующий Инструменты "DynDNS updater", например,inadyn - они могут быть указаны на произвольные серверы, и все они работают, делая простой запрос HTTP вы можете войти.

для "поддержки нескольких компьютеров за пределами их маршрутизатора", IPv6 приходит на ум, – если только ваш провайдер поддерживает это... в противном случае VPN (вы правы в том, как они работают) будет более надежным, если внутренний адрес изменится или будет подключено новое устройство.

1
отвечен grawity 2023-04-08 10:20

вы смотрели на веб-сервисов, таких как logmein или gotomypc? Я использую logmein, когда помогаю своему отцу, и я считаю, что у них есть продукт, который может удовлетворить ваши потребности.

2
отвечен Daniel B. 2023-04-08 12:37

для VNC со стороны" клиента " (который может быть за брандмауэрами/маршрутизаторами и т. д.) настройка сервера на вашем конце с прослушиванием-это то, что я думаю, что вы ищете. Raymond cc сделал хорошую и хорошую запись о том, как это сделать:http://www.raymond.cc/blog/archives/2007/04/05/free-and-easy-remote-access-with-vnc-reverse-connections/

для SSH revese соединений может быть сделано как "nohup ssh-f-N-r 10000: localhost: 22 username@your_side", который сделает ssh в your_side:10000 конечном итоге на клиента вы пытаетесь поддержать. Это потребует имя пользователя на вашем конце вы можете дать своим клиентам, конечно. Более подробную информацию можно прочитать, напримерhttp://www.vdomck.org/2005/11/reversing-ssh-connection.html

оба они потребуют, чтобы люди, которых вы пытаетесь поддержать, выполняли какую-то" начальную " работу в конце, но это обычно (по моему опыту) большая проблема.

1
отвечен Jontas 2023-04-08 14:54

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх