UFW работает очень хорошо для меня, за исключением случаев, когда это не ...
Я хочу иметь возможность добавить другое правило вручную, которое будет применяться при загрузке?
- где я должен поставить это правило?
- как сделать так, чтобы он запускался при загрузке?
- как мне заставить его играть с UFW?
Ответы:
Согласно этой вики-странице Ubuntu (прокрутите вниз до «Расширенные функциональные возможности»), вы можете достичь желаемого, поместив свои собственные
iptables
правила в следующие файлы:/etc/ufw/before.rules
/etc/ufw/after.rules
before
Файл оценивается до того , какufw
применяются правила;after
файл вычисляется после. (Есть также соответствующие файлыbefore6
иafter6
файлы правил, для вашихip6tables
правил.)Предполагается, что эти файлы правил имеют
iptables-restore
несовместимый синтаксис, вероятно потому, чтоufw
просто загружают их, используяiptables-restore
. Наконец, обратите внимание , что вам нужно остановить и перезапуститьufw
после внесения каких - либо изменений в файлы правил.источник
UFW удалит любое добавленное вручную правило, в
/etc/ufw/user.rules
котором НЕ предшествует комментарий:Когда UFW sanity проверяет правила при запуске, он ожидает сопровождающего комментария. Если он НЕ присутствует, даже если синтаксис правила правильный, UFW все равно удалит его.
И не просто используйте произвольный комментарий: это ДОЛЖЕН быть комментарий, который UFW вставит при создании пользовательского правила через cli, то есть:
Поэтому, если вы хотите предварительно заполнить серию правил в наборе правил в простом файле, вам все равно нужно создать правила через интерфейс CLI UFW, чтобы узнать синтаксис комментариев, которые он ожидает, чтобы правило прошло проверку и сохранялось. ,
Попробуйте описанное выше и БЕЗ комментария и перезагрузите приведенное выше правило HTTP для образца; Вы заметите только с комментарием, что добавленное вручную правило выдержит перезапуск ( включение UFW) UFW.
Это действительно нелогичное поведение и совсем не задокументировано.
источник