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

Использование knockd с shorewall

Я хотел бы перенести свою старую чистую конфигурацию брандмауэра iptables на настройку Shorewall. Я понял основы, но не смог воспроизвести существующую настройку knockd:

Установка в /etc/knockd.conf просто:

[tmpAndPermKnock]
    sequence      = 10000,11000,12000
    seq_timeout   = 9
    tcpflags      = syn
    start_command = /sbin/iptables -I tmpknock -s %IP% -j ACCEPT; 
                    /sbin/iptables -F permknock;
                    /sbin/iptables -I permknock -s %IP% -j ACCEPT
    cmd_timeout   = 30
    stop_command  = /sbin/iptables -D tmpknock -s %IP% -j ACCEPT

Теперь я могу легко связать свои существующие цепочки с этими цепочками, например:

iptables -A open-in -p tcp --dport 22 -j tmpknock
iptables -A open-in -p tcp --dport 80 -j permknock

Как я могу интегрировать это с простой настройкой Shorewall? Я действительно только начинаю заниматься шорохом и не знаю, как прыгнуть на свои цепи. Думаю, это будет примерно так:

/ etc / shorewall / rules (не работает):

#ACTION         SOURCE        DEST      PROTO      DEST
JUMP(tmpknock)  net           fw        tcp        22
JUMP(permknock) net           fw        tcp        80

... но в http://shorewall.net/manpages/shorewall-rules.html ...

Кажется, здесь нет хорошего решения (boo Shorewall): - / Кажется, есть два варианта:

  1. Напишите собственный модуль Shorewall на Perl. Существует некоторая документация по написанию модулей для реализации детонации с использованием недавний матч цель или использование ручные цепи.
  2. Напиши start сценарий расширения (который запускается после того, как Shorewall установит все свои правила), чтобы вставить правило перехода в цепочки детонации в цепочке INPUT.