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

Стратегия получения доступа по ssh без настройки маршрутизатора

Мне нужно будет удаленно администрировать чей-нибудь macbook pro через ssh. Проблема в том, что они будут перемещаться между сетями, поэтому я не могу просто настроить переадресацию портов на их маршрутизаторе. Какую стратегию я мог бы использовать для получения доступа, независимо от того, в какой сети они находятся?

Я думаю, что можно было бы заставить их запустить сценарий bash (надеюсь, дважды щелкнув значок на рабочем столе), который каким-то образом позволил мне войти в ssh.

Возможно, что-то вроде https://github.com/progrium/localtunnel мог сделать работу?

Спасибо!

Можете ли вы настроить OpenVPN между Macbook и вашим сайтом? Macbook может быть клиентом OpenVPN, используя TunnelBlick. Вы можете настроить сервер OpenVPN на своем сайте, используя все, что вам подходит. В этом случае Macbook инициирует VPN-соединение с вашим сайтом, а ваш сервер OpenVPN назначит ему статический IP-адрес внутри VPN. Затем вы можете просто использовать ssh на этот IP-адрес VPN.

Да, этот местный туннель, вероятно, подойдет. С другой стороны, OpenVPN гораздо более стандартизирован и понятен, чем localtunnel. И вы можете сделать с ним гораздо больше, если вам нужен дополнительный доступ.

Вам понадобится машина, которую вы будете администрировать, для исходящих подключений, чтобы добраться до нее за любыми брандмауэрами / маршрутизаторами, за которыми она окажется. Вы можете подумать о том, чтобы избавить себя от головной боли, реализуя это самостоятельно, и использовать что-то вроде Хамачи.

Насколько я понимаю, вы можете это сделать при условии, что:

1) у вас есть общедоступный IP и sshd-сервер, ИЛИ

2) если вы находитесь в интрасети, и вы можете настроить переадресацию портов на своем маршрутизаторе, чтобы порт 22 был перенаправлен на ваш компьютер.

Если 1) или 2) относятся к вам, и на компьютере с macos запущен сервер sshd. Если вы хотите получить к нему доступ, выполните следующие действия на macos (создайте из него скрипт и передайте его владельцам):

macos$ ssh -R 65022:localhost:22 root@<yourmachine_ip_address>

Он перенаправляет sshd-сервер macos на ваш порт 65022.

Теперь вы можете просто использовать ssh для порта 65022:

yourlocalmachine$ ssh -p 65022 root@127.0.0.1

и теперь вы должны использовать macos.

Кстати: yourmachine_ip_address может быть третьей машиной с доступом sshd, которым вы владеете, и с общедоступным IP-адресом. Затем на последнем шаге вы подключитесь к нему следующим образом:

yourlocalmachine$ ssh -p 65022 root@<yourmachine_ip_address>

ВНИМАНИЕ: я не уверен на 100%, что он будет работать (еще не тестировал), но это интересно - попробую, как только вернусь домой :)

ОБНОВЛЕНИЕ: Я тестировал это - работает как шарм.

ОБНОВЛЕНИЕ 2: во втором случае (когда мы используем третью машину), GatewayPorts yes должен быть установлен в файле / etc / sshd / sshd_config на этом компьютере.

Если вам конкретно нужен SSH, то это позволит какой-то VPN-клиент на Mac, который связывает его с вашей сетью. Когда вам нужно получить доступ, они запускают VPN, который назначает им статический адрес в вашей сети, а затем вы включаете SSH.