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

fwbuilder / iptables вручную скрипт + автоматически сгенерированные правила при запуске?

Fedora 11

Наш предыдущий ИТ-специалист установил правила iptable на нашем брандмауэре таким образом, что это сбивало меня с толку, и он не задокументировал их. Я надеялся, что кто-нибудь поможет мне разобраться в этом.

Очевидно, что служба iptables запускается при запуске, но /etc/sysconfig/iptables файл не был изменен (значения по умолчанию).

Я нашел в /etc/rc.local он делал это:

# We have multiple ISP connections on our network.
# The following is about 50+ rules to route incoming and outgoing
# information. For example, certain internal hosts are specified here
# to use ISP A connection while everyone else on the network uses
# ISP B connection when access the internet.
ip rule add from 99.99.99.99 table Whatever_0
ip rule add from 99.99.99.98 table Whatever_0
ip rule add from 99.99.99.97 table Whatever_0
ip rule add from 99.99.99.96 table Whatever_0
ip rule add from 99.99.99.95 table Whatever_0
ip rule add from 192.168.1.103 table ISB_A
ip rule add from 192.168.1.105 table ISB_A
ip route add 192.168.0.0/24 dev eth0 table ISB_B
# etc...

а затем ближе к концу файла, ПОСЛЕ всех правил ip, которые он только что объявил, у него есть это:

/root/fw/firewall-rules.fw

Он запускает файл правил брандмауэра, который был автоматически создан fwbuilder.

Некоторые вопросы

  1. Почему он объявляет все эти правила IP в rc.local вместо объявления их в fwbuilder как и все остальные правила? Есть ли в этом преимущество или необходимость? Или это просто плохо организованный способ реализации правил межсетевого экрана?

  2. Почему он объявляет правила IP ДО выполнения fwbuilder сценарий? Я бы предположил, что одним из первых fwbuilder скрипт избавляется от существующих правил перед объявлением всех новых. Я ошибаюсь в этом? Если бы это было так, сценарий fwbuilder просто удалял бы все правила IP, которые были определены в rc.local. Есть ли в этом смысл?

  3. Почему он выполняет все это при запуске в rc.local вместо того, чтобы просто использовать iptables-save чтобы сохранить настройки брандмауэра на /etc/sysconfig/iptables что будет реализовано во время выполнения?

Отображаемые вами IP-правила не имеют прямого отношения к iptables. В ip команда управляет расширенной маршрутизацией. В вашей системе что-то настроено для раздельной маршрутизации. В iptables команда управляет правилами брандмауэра (netfilter).

iptables-save / iptables-restore ничего не делает напрямую с маршрутами и правилами.

Увидеть Linux Advanced Routing & Traffic Control HOWTO для подробного описания того, что вы можете делать с iproute2.