Как получить удаленный доступ к raspberry pi, подключенный к VPN?

У меня есть Pi, который всегда включен и подключен к VPN, что означает, что я не могу получить к нему удаленный доступ. Я пытаюсь найти решение для удаленного доступа к нему, поэтому я ищу советы от гуру.

мое предпочитаемое / самое легкое решение до сих пор использовать мой 2-ой Пи, скоро приезжающ и быть использованным для дистанционного контроля. Я думаю о том, чтобы смонтировать общий диск с 1-го на этот и ssh-ing в него, поскольку он не будет подключен к VPN.

Это еще немного но запутанная. Любые другие варианты? Любые комментарии / идеи более чем приветствуются.

спасибо

7
задан user20224
06.05.2023 20:07 Количество просмотров материала 3513
Распечатать страницу

2 ответа

вы находитесь в той же локальной сети, что и ваш первый RPI? Если это так, вы не должны потеряли контакт с ним. Виртуальные частные сети работают путем добавления маршрутов, а не подавления существующих. Итак, если у вас был маршрут, как

    192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.74  metric 1 

перед запуском VPN, то тот же маршрут должен продолжать существовать после того, как VPN изменяет таблицу маршрутизации. Это делает ваш RPI доступным из локальной сети. Возможно, вам нужно связаться с ним по IP-адресу, а не по имени (если, конечно, вы не используете локальный DNS); также возможно, что из RPI вы не можете получить доступ к другим компьютерам в вашей локальной сети через имя, потому что DNS был перенаправлен через VPN (не обязательно так, но чаще всего).

если RPI не в локальной сети, то это уже другой вопрос; пожалуйста, укажите, является ли это дело.

EDIT:

у вас есть три возможности, два простых и немного более сложный.

  1. если вы всегда подключиться, скажем, 1.2.3.4, просто добавьте подходящий маршрут в таблицу маршрутизации первого ИРЦ:

     ip route add 1.2.3.4./32  via 192.168.0.1 dev eth0
    

это будет маршрутизировать пакеты для 1.2.3.4 через обычный шлюз локальной сети (я предположил, что это 192.168.0.1, если не изменить соответствующим образом), минуя VPN в целом;

  1. так как вы используете торговой VPN этот трюк вряд ли сработает. Если у вас был VPN-сервер на вашем собственном VPS (который, кстати, это то, что я всегда делаю, дешевые VPN-сервера-3 доллара / евро месяц, а у некоторых есть подсоединения), то вы просто подключаетесь к VPN серверу через VPN, то связываетесь с вашим RPI при помощи ssh, используя в качестве IP-адреса его конца туннеля! Итак, если ваш VPN туннель имеет адреса 10.0.0.1 для сервера и, скажем 10.0.0.6 для клиента RPI, это

       ssh me@10.0.0.6
    

подключит вас к ИРЦ. Поскольку вы используете коммерческий поставщик VPN, даже если вы можете подключиться к их серверу через VPN с ПК, который не РПИ, я сомневаюсь, что они позволили бы вам связаться с другим клиентом: это было бы толикой, как позволить лисе в куриное перо, не так ли?

  1. более сложное решение объясняется здесь для первого ИРЦ: основная идея заключается в настройке второй таблица маршрутизации, то, что может быть сделано только на Linux, даже не на Unix; эта вторая таблица маршрутизации делает не используйте VPN, только ваш обычный шлюз локальной сети. К определите пакеты, которые будут маршрутизированы через эту вторую таблицу маршрутизации, вам придется пометить все пакеты с определенной характеристикой, например те, которые входят в RPI на порту 22 (порт ssh) с модулем CONNTRACK, а не модуль MARK: это отмечает все соединение, а не только отдельный пакет, включая установленные, связанные пакеты. Теперь вы можете настроить ip rule, который выбирает отмеченные пакеты, сообщающие ядру использовать вторую таблицу маршрутизации,то есть один без VPN.
1
отвечен MariusMatutiae 2023-05-08 03:55

Если вы имеете в виду, что VPN делает ваше Пи недоступные для локальной сети (я предполагаю это, поскольку в противном случае VPN должен обеспечить доступ по SSH) и вы не можете открыть его, даже если подключены к одному маршрутизатору, можно использовать виртуальные интерфейсы для этого.

например, если у вас есть eth0 интерфейс, вы можете создать новый виртуальный интерфейс, как это:

ifconfig eth0:0 123.123.22.22

затем должны применяться обычные методы Linux для настройки интерфейса. больше info.

0
отвечен Ronan Paixão 2023-05-08 06:12

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

Ваш ответ

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

Имя
Вверх