Я хочу выполнить несколько сетевых инструментов безопасности в контейнерах LXC как ntopng, suricata, фырканье, и т.д.
Я сцепил один из NIC своего сервера до порта, который заполнен к моему брандмауэру... так в основном, этот NIC видел бы весь трафик, это проходит через брандмауэр. Я добавил мост с brctl и добавил интерфейс к мосту. Но никакой трафик не был передан контейнерам через мост...
USE_LXC_BRIDGE="false"
установлен в lxc конфигурации. -I FORWARD -m physdev --physdev-is-bridged -j ACCEPT
находится в before.rules
на основной установке. Контейнеры LXC используют veth
режим. Если я установил тип сети на phys
вещи работают (на один контейнер за один раз), но это не будет работать, если я захочу выполнить несколько инструментов!
Вот то, что я изучил:
Linux bridge
А является неправильным употреблением... В brctl
мир, bridge
ведет себя больше как switch
из сетевого мира. Мосты умны в смысле, они выясняют, какие MAC-адреса присоединены к нему и только передают кадрам Ethernet звену моста, которое имеет MAC-адрес соответствия для эффективности. Это - поведение, Вы ожидали бы физический сетевой переключатель.
виртуальное программное обеспечение определило устройство, которое я ищу, походит на сети hub
... Где все кадры являются ретрансляцией всем членам концентратора, независимо от MAC-адреса, кадр был предназначен для.
Подсказки:
Так для моего моста span0
:
brctl setageing span0 0
brctl setfd span0 0
или в /etc/network/interfaces
:
auto span0
iface span0 inet manual
bridge_ports em1
bridge_fd 0
bridge_maxwait 0
bridge_stp off
bridge_maxage 0
bridge_ageing 0
гмм. Надежда это помогает кому-то еще!