Рейтинг:0

Iptables: как разрешить пересылку с сетевой карты wireguard только на какой-то IP

флаг cn

Контекст

я успешно интегрировал Wireguard в моей локальной сети, чтобы я мог получить доступ к своему NAS (192.168.1.45) извне.

|Маршрутизатор| ===:5182=> |VPN-сервер| ====> |NAS|
192.168.1.254 192.168.1.21 (влан0) 192.168.1.45
                        10.10.10.1 (вес0)

Пересылка пакетов через мой VPN-сервер зависит от:

  1. IP-переадресация в /etc/sysctl.conf (см. мой сценарий)
  2. добавлены следующие правила () когда интерфейс wireguard (WG0) встал.
PostUp = iptables -A FORWARD -i wg0 -j ПРИНЯТЬ; iptables -t nat -A POSTROUTING -o $main_nic -j MASQUERADE; ip6tables -A FORWARD -i wg0 -j ПРИНЯТЬ; ip6tables -t nat -A POSTROUTING -o $main_nic -j MASQUERADE

(это команда wireguard, выполняемая, когда я останавливаюсь WG0)

PostDown = iptables -D FORWARD -i wg0 -j ПРИНЯТЬ; iptables -t nat -D POSTROUTING -o $main_nic -j MASQUERADE; ip6tables -D FORWARD -i wg0 -j ПРИНЯТЬ; ip6tables -t nat -D POSTROUTING -o $main_nic -j MASQUERADE

Необходимость

Это работает как шарм, но как я могу ограничить вещи, чтобы клиент, входящий в мою локальную сеть через эту точку входа VPN, мог получить доступ только к 192.168.1.45 и ни к какому другому IP-адресу? Совместимо ли это с IP-переадресация?

В идеале, если бы этим можно было полностью управлять в PostUp PostDown директивы wireguard (независимо от предыдущих правил в системе), это было бы потрясающе. Пробовал кое-что, но, скажем прямо, я больше разработчик, чем сетевой администратор.

Рейтинг:1
флаг gu

Конечно, вы можете вместо того, чтобы произвольно разрешать трафик, просто убедитесь, что он идет на ожидаемый IP-адрес назначения:

-A ВПЕРЕД -m conntrack --ctstate УСТАНОВЛЕНО, СВЯЗАННО -j ПРИНЯТЬ 
-A ВПЕРЕД -i wg0 -d 192.168.1.45 -j ПРИНЯТЬ

Кстати, я бы не стал добавлять и удалять правила в PostUp и PostDown хуки, их бесполезно удалять, когда интерфейс больше не существует, поскольку в этом случае они ничего не делают. Просто оставляйте их там все время, это менее подвержено ошибкам и проще в управлении.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.