Я использую Arch Linux и ссылаюсь на Простой межсетевой экран с отслеживанием состояния — ArchWiki.
У меня есть два разных сценария bash для создания правил iptables: один для IPv4, а другой для IPv6. Каждый создает один или несколько ipset
списки (наборы) хэшей с использованием соответствующего семейства: inet или inet6.
Такой подход поддерживают этот ответ, «У вас должно быть два разных набора: один для IPv4, а другой для IPv6».
Я использую systemd ipset.service, и по умолчанию он загружает файл /etc/ipset.conf
. Этот файл конфигурации создает мои хеш-списки запрещенных IP-адресов и т. д. ipset
использует только один файл конфигурации, в отличие от iptables с /etc/iptables/iptables.rules и /etc/iptables/ip6tables.rules.
Каждый из моих сценариев bash для iptables имеет эту команду в конце:
ipset сохранить > /etc/ip6set.conf
Каков хороший способ объединить мои списки хешей ipset в один файл конфигурации, который будет загружаться, как и ожидалось, при запуске модуля systemd? Например, могу ли я запустить свои bash-скрипты в определенном порядке и изменить вторую команду на ipset сохранить >> /etc/ip6set.conf
добавить вместо замены?
Это не кажется хорошим подходом (т.е. он может сломаться). Как большинство людей справляются с этим?