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

Изоляция подсетей Linux

У меня следующая конфигурация в моей системе

                   | br0 (lan0 to lanX + WiFi Home SSID) 
ethX(internet) -     
                   | br1 (WiFi Guest SSID). 

Мне нужно, чтобы оба моста имели доступ к Интернету (через ethX), но изолировали друг друга.

Я ожидал, что по умолчанию маршрутизация между интерфейсами моста не будет включена, но это не похоже на случай, и я могу пинговать из моей гостевой сети в домашнюю сеть.

Я думаю, что могу использовать iptable для блокировки трафика с br0 на br1, но я надеюсь найти более элегантное решение, которое позволит маршрутизацию только на восходящий интерфейс без необходимости настраивать специальные правила для каждой подсети, которую я добавляю в систему.

Есть ли в наличии? Я тоже буду в порядке, используя iptables, но надеюсь, что смогу установить положительное правило, то есть маршрутизация к разрешенному отдыху ethX заблокирована.

Спасибо, Илья.

Лучший способ - сначала отбросить все, а затем разрешить пересылку на комбинацию (-и) интерфейса, которую вы хотите, например:

iptables -F FORWARD
iptables -P FORWARD DROP
iptables -A FORWARD -i br0 -o br1 -s 192.168.1.0/24 -j ACCEPT

.. и так далее. Приведенная выше настройка позволяет вашей надежной сети br0 добраться до ненадежных br1, но не наоборот. Любые дополнительные интерфейсы, которые вы добавляете в систему, не смогут пересылать, если вы специально не добавите их в список выше. Если вы хотите br0 чтобы иметь возможность пересылать везде, сделайте это так:

iptables -A FORWARD -i br0 -j ACCEPT

Все сети должны по-прежнему выходить из вашего интерфейса NAT. ethX.