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

Развертывание VPN на программных устройствах

Я работаю над программным устройством на базе платформы Linux. Я хочу иметь безопасный способ доступа к каждому установленному устройству через Интернет для удаленной отладки и поддержки. Чтобы пройти NAT и иметь возможность просто подключиться к устройству, я думал о OpenVPN как о решении. Проблема в том, что я не могу отправить один сертификат с образом устройства и связать всех с ним, поскольку openvpn не разрешает более одного сеанса на один сертификат.

Другая проблема - изоляция между VPN-клиентами, так что один клиент не сможет подключиться к другому. как этого можно достичь. Спасибо

Вы уверены, что действительно хотите, чтобы прибор открывался перед вами безоговорочно? Разве это не должна быть какая-то легкодоступная функция во время первой загрузки? Когда пользователь / клиент хочет иметь канал поддержки, сертификат может быть отправлен по электронной почте, зашифрован вашим открытым ключом (так что только ваш секретный ключ может расшифровать и сохранить его на сервере vpn).

С вашей стороны должно быть легко сопоставить эти электронные письма и обработать их автоматически.

попробуйте Miredo дать каждому устройству глобально маршрутизируемый номер IPv6. Добавьте динамический DNS или свою собственную базу данных регистрации, и все готово.

но если подумать, может быть проще просто сгенерировать клиентские сертификаты для OpenVPN при первом запуске.

Вы можете сгенерировать клиентские сертификаты OpenVPN при создании образа, если сервер настроен с помощью --duplicate-cn. Затем у вас есть сетевое соединение с устройствами и вы можете получить новый сертификат, подписанный с помощью реального CA или чего угодно, что вы хотите сделать ... вероятно, не лучшая идея продолжать работать с сертификатом по умолчанию на каждом устройстве.

Идея Miredo ортогональна ... что, скорее всего, может помочь вам в первую очередь подключиться, поскольку Miredo может пройти через многие NAT, которые OpenVPN не может.