Shorewall - подстановочный фильтр по MAC-адресу источника
В настоящее время у меня есть компьютер Debian с двумя сетевыми интерфейсами, выступающими в роли маршрутизатора / шлюза.
У меня есть несколько дешевых IP-камер, которые пытаются получить доступ к внешним службам, предположительно для какой-то "облачной" функциональности. Эта функция не может быть отключена.
Я хотел бы добавить правила в Shorewall, чтобы отбрасывать исходящие пакеты с этих камер, чтобы они не имели доступа к Интернету. В прошлом я использовал аналогичный метод для предотвращения загрузки ненужных файлов конфигурации из подержанных VOIP-устройств потребительского уровня.
Чтобы добиться этого, я мог бы добавить фильтры по MAC-адресу или IP для каждой камеры. Это немного утомительно. например
DROP local:~AA:BB:CC:11:22:33
DROP local:~AA:BB:CC:11:22:44
DROP local:~AA:BB:CC:11:22:55
etc..
Могу ли я использовать какой-то подстановочный знак? например
DROP local:~AA:BB:CC:*
Камеры совместно используют подсеть с несколькими другими устройствами, и нежелательно перемещать их в новую подсеть только для того, чтобы применить к ним правила брандмауэра.
Версия Shorewall - 5.0.15.6 для ядра 3.16.0-4-amd64
1 ответ
Короткий ответ будет: нет, вы не можете.
Shorewall имеет ограниченную поддержку подстановочных знаков для имен интерфейсов (т.е. используйте 'ppp+'; это будет соответствовать ppp0, ppp1, ppp2..etc.) И именам портов ( http://shorewall.net/manpages/shorewall-interfaces.html), но не для MAC-адреса или IP-адрес.
Я также сделал быстрый тест, чтобы получить только "ОШИБКА: неверный MAC-адрес....".