Firehol (брандмауэр) с мостом: как фильтровать

У меня есть два интерфейса: eth0 (публичный адрес) и lxcbr0 с 10.0.3.1.
У меня гость LXC работает с ip 10.0.3.10

Это мой конфиг firehol:

version 5

trusted_ips=`/usr/local/bin/strip_comments /etc/firehol/trusted_ips`
trusted_servers=`/usr/local/bin/strip_comments /etc/firehol/trusted_servers`

blacklist full `/usr/local/bin/strip_comments /etc/firehol/blacklist`

interface lxcbr0 virtual
    policy return 
    server "dhcp dns" accept 

router virtual2internet inface lxcbr0 outface eth0
    masquerade
    route all accept

interface any world
    protection strong

    #Outgoing these protocols are allowed to everywhere
    client "smtp pop3 dns ntp mysql icmp" accept

    #These (incoming) services are available to everyone
    server "http https smtp ftp imap imaps pop3 pop3s passiveftp" accept

    #Outgoing, these protocols are only allowed to known servers
    client "http https webcache ftp ssh pyzor razor" accept dst "${trusted_servers}"

На моем хосте я могу подключаться только к "доверенным серверам" через порт 80. В моем госте я могу подключиться к порту 80 на каждом хосте. Я предполагал, что firehol заблокирует это.

Есть ли что-то, что я могу добавить / изменить, чтобы мои гости унаследовали правила интерфейса eth0?

1 ответ

Вы хотите включить net.bridge.bridge-nf-call-iptables sysctl, который будет запускать мостовые пакеты через iptables перед их передачей. Вам может потребоваться настроить отдельные правила, в зависимости от того, как настроен ваш мост, но вы определенно можете фильтровать пакеты через мост, используя iptables, если вы включите этот sysctl.

Другие вопросы по тегам