У меня есть следующее затруднение. Я становлюсь все более и более используемым (хотя и платным) в качестве "компьютерного парня" по соседству для "решения" общих "проблем". Будучи хакером, я подумывал о предоставлении удаленной помощи своим клиентам через SSH/VNC. Концептуально это здорово, но есть несколько деталей реализации, с которыми я борюсь.
Определение IP-адреса каждого клиента. Обычно это можно сделать с помощью динамического DNS, но я подумал о написании небольшой программы, которая будет отправлять текущий IP-адрес маршрутизатора на мой сервер, чтобы я мог быть в курсе всех событий. Динамический DNS, конечно, проще, но он может усложниться, если я использую внешний сервис. Я дешевка, поэтому чем меньше мне придется платить, тем лучше, и было бы не идеальным создавать новую учетную запись для маршрутизатора каждого клиента. Вот мои варианты для динамического DNS:
- Я мог бы ежемесячно платить за хостинг для сервера имен и создавать иерархию доменов, которая имеет смысл, и реализовывать динамический DNS.
- Я мог бы купить сервер с низкой спецификацией и хост BIND и делать все локально, но, как указано выше.
- Я мог бы взимать плату с клиентов в месяц (!?!) за «Динамический DNS-хостинг» и используйте вырученные средства, чтобы оплатить хороший аккаунт на DynDNS.org или что-то в этом роде.
Поддержка нескольких компьютеров за пределами их маршрутизатора. Для этого у меня также есть варианты:
- Реализуйте OpenVPN, где это возможно, и просто используйте удаленный VPN для доступа к компьютерам, как если бы они были локальными компьютерами в сети. (Вот как работает VPN? По сути, я бы показал маршрутизатору просто еще один IP-адрес, и у меня был бы полный доступ ко всем машинам в сети, верно?)
- Реализуйте некоторый взлом обратного соединения, чтобы они со мной соединились, и затем я установил соединение SSH с ними.
- Непростой способ переадресации портов. Это включает в себя ведение базы данных каждого клиента и номера порта каждого компьютера клиента для SSH на маршрутизаторе. Тьфу.
Возможность удаленной поддержки ноутбуков. Скажем, мой клиент в кафе в другом штате, и что-то идет не так. Поскольку многие из вышеперечисленных решений имеют дело с решениями на основе маршрутизаторов, все выходит за рамки. Это не имеет большого значения, чтобы иметь возможность сделать это заранее, так как это своего рода крайний случай, но все же.
Может ли кто-нибудь порекомендовать лучший способ: 1. найти общедоступный IP-адрес каждой машины, 2. установить соединение с ним и 3. возможно, предоставить удаленный * удаленный сервис, если они «находятся в роуминге»?"