Можете ли вы создать свои собственные варианты?
Если под созданием вы имеете в виду написать модуль ядра Linux, то да. Вы можете собрать все модули и новые опции. Есть также много нестандартных модулей netfilter для неясных или новых протоколов и фильтрации, которые не попали в основное ядро.
Модули иногда добавляются в ядро. Таким образом, указанный вами модуль policy
, по-видимому, доступен в моей системе Ubuntu 12.04 и более старой системе Debian. Но он не установлен на более старой системе Debian, которая у меня есть.
Я искал эти варианты для iptables, но не смог ничего найти.
Похоже, что документально подтверждено системой Ubuntu на странице руководства iptables(8). Кажется, это также задокументировано на справочной странице i.nets die.net . Многие из них не будут доступны в вашей системе из-за возраста или из-за того, что ваша система построена иначе.
Вот выдержка из моей справочной страницы.
policy Эти модули соответствуют политике, используемой IPsec для обработки пакета.
--dir {in|out}
Used to select whether to match the policy used for decapsula‐
tion or the policy that will be used for encapsulation. in is
valid in the PREROUTING, INPUT and FORWARD chains, out is valid
in the POSTROUTING, OUTPUT and FORWARD chains.
--pol {none|ipsec}
Matches if the packet is subject to IPsec processing. --pol none
cannot be combined with --strict.
...
Если у вас есть файл .config, используемый для сборки вашего ядра, вы можете увидеть, была ли установлена опция для сборки его как модуля.
# grep -i policy /boot/config-2.6.26-2-686
CONFIG_NETFILTER_XT_MATCH_POLICY=m