fix: keel-overlay-coraza: no blank pages under gzip, and its state hook declared #25
No reviewers
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Keel-Linux/common!25
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fix/coraza-gzip-empty-body"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Until Keel-Linux/libnginx-mod-http-coraza#3 is released: with the response headers held for phase 4, a static file asked for with gzip is an empty gzip stream while
sendfileis on (libnginx-mod-http-coraza#2), so browsers get blank pages whenever Coraza is enabled.keel.conf(the Coraza-enabled http context) now sayscoraza_delay_response_headers off. Evidence, on a container of the Keel Web step 7 image with 0.21.0-0keel1, a server that sets neither directive:denysendfile offnginx -t: "sendfile" directive is duplicatecoraza_delay_response_headers offsendfile offcannot be set fromconf.d/without editing Debian'snginx.conf; the delay off keeps the WAF blocking and loses only the clean error page of a phase 4 deny. keel-overlay-coraza 0.1.1. The line goes once 0.21.0-0keel2 is installed (with it, the delay on gives a whole gzip body and a clean phase 4 403).Test plan
overlay-web.bats, new test "with Coraza on, a static page asked for with gzip comes back whole": fails on 0.1.0 (625 bytes plain, 0 through gzip), passes with thiskeel.conf; thestate enabled,state disabledand rollback tests pass too (run in the container above)webjobSecond commit: the Coraza manifest declares
hooks.statekeel 0.15.0 (Keel-Linux/keel#63, after its review) runs a state hook only when the overlay manifest declares it; the handbook erratum is Keel-Linux/handbook#35. The manifest now names
/usr/lib/keel/overlays/coraza/state, the package depends on keel (>= 0.15.0), and the web job builds keel at the head of #63 (a510b9f) until it merges; re-pin to the merge commit then. New test: "the coraza manifest declares its state hook" (failed before, passes now, in the same container). Merge after keel#63.