2023-07-06 17:26:52 +08:00
2023-07-06 17:26:52 +08:00
2023-07-05 10:44:57 +08:00
2023-07-05 10:44:57 +08:00
2023-06-28 17:36:20 +08:00
2023-06-28 14:35:48 +08:00
2023-07-05 12:20:31 +08:00
2023-07-05 12:20:31 +08:00
2023-07-05 12:20:31 +08:00

lua-resty-coraza

Name

Lua implementation of the libcoraza for modsecurity Web Application Firewall.

Installation

luarocks install lua-resty-t1k

Synopsis


init_worker_by_lua_block{
    coraza = require "resty.coraza"
    waf = coraza.create_waf()
    -- add rule from file
    coraza.rules_add_file(waf, "%s/t/coraza.conf")

    -- your corerule set, add rule from directive
    coraza.rules_add(waf, "Include %s/t/coreruleset/crs-setup.conf.example")
    coraza.rules_add(waf, "Include %s/t/coreruleset/rules/*.conf")
}

location /t {
    access_by_lua_block {
        coraza.do_create_transaction(waf)
        coraza.do_access_filter()
        coraza.do_interrupt()
    }

    content_by_lua_block {
        ngx.say("passed")
    }

    header_filter_by_lua_block{
        coraza.do_header_filter()
        coraza.do_interrupt()
    }

    log_by_lua_block{
        coraza.do_log()
        coraza.do_free_transaction()
    }
}

if you need more log for debug, please turn on the debug on nginx.

error_log logs/error.log debug;
Description
No description provided
Readme 100 KiB
Languages
Lua 56.5%
Perl 43.5%