Плох ли это способ избежать изоляции хоста с помощью WireGuard?

Плох ли это способ избежать изоляции хоста с помощью WireGuard?

Фон

Я добавляю поддержку WireGuard VPN для встроенного устройства. Пользователь сможет AllowedIPsсамостоятельно задать конфигурацию. WireGuard использует разрешенные IP-адреса для установки маршрутов на хосте, поэтому пользователь сможет изолировать устройство (сделать невозможным подключение по TCP). Я думал о способах предотвращения этого.

Потенциальное решение

Одним из возможных решений является добавление правил IP для интерфейсов хоста, так что любой трафик с исходным IP интерфейса всегда будет маршрутизироваться через этот интерфейс. Если бы у нас был один интерфейс хоста eth0 с IP 172.17.0.2 и один интерфейс wireguard wg0 с IP 172.22.0.4, конфигурация выглядела бы примерно так:

ip route add default via 172.17.0.1 dev eth0 table 1    
ip rule add from 172.17.0.2 table 1

Это означает, что соединения, исходящие от устройства, по-прежнему должны маршрутизироваться обычным образом, но если кто-то подключается к устройству с использованием TCP (для HTTP или ssh), ответы должны быть перенаправлены обратно.

Вопросы

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

Связанный контент