Исключение пакетов fwmark (ed) из туннеля Wireguard

В сценарии, описанном здесь , я получил эту конфигурацию в клиенте (сервер WG конечной точки имеет два общедоступных IP-адреса)

[Interface]
Address = <ip_to_use>/32
PrivateKey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

[Peer]
PublicKey = yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
AllowedIPs = 0.0.0.0/0
Endpoint = <wg_server_ip>:51820
PersistentKeepalive = 10

Теперь я хотел бы исключить из Wireguard туннелирует либо все процессы от пользователя , либо все пакеты (к и от) определенных портов.

Мне было доведено до моего сведения, что это можно сделать с помощью fwmark, установленного самой WG, и я не нужно использовать другую метку, как предлагается здесь .

Это IPtables 1.6 в Ubuntu 16.04. Как я могу исключить из туннеля WG, используя метку, созданную wg-quick, для каждого пользователя или порта?

1
задан 25 July 2018 в 05:15
1 ответ

Решение, которое я нашел, заключалось в обновлении до Ubuntu 18.04.1, что позволило следующей новой функции решить проблему одной строкой:

PostUp = ip rule add uidrange 0-0 lookup main
PostDown = ip rule del uidrange 0-0 lookup main

Запуск 16.04.5 с ядром 4.15 не работал. разрешить uidrange . Использование uidrange также требует, чтобы iproute2 был более поздней версии, чем предоставляется репозиторием Xenial. Одного Iptables 1.6.1 недостаточно.

0
ответ дан 4 December 2019 в 03:47

Теги

Похожие вопросы