About the NGINX module (original) (raw)

You can use our NGINX module to deploy the Next-Gen WAF directly onto your hosting environment. In the module-agent deployment topology, the NGINX module accesses request data from incoming requests via the NGINX API. Then, the module passes the data to the Next-Gen WAF agent for inspection via remote procedure calls (RPC) through a Unix domain socket (UDS) or over transmission control protocol (TCP). The agent then tells the module how to handle the requests, and the module blocks, allows, or rate limits requests per the agent's direction.

Choosing an NGINX module variation

Our NGINX module has two variations:

Both module variations implement similar request handling logic to pass the request to the Next-Gen WAF agent for inspection.

The NGINX module variation you install depends on your business and hosting environment requirements.

TIP

If you're unsure which module variation to install and aren't already using OpenResty or NGINX Plus, we recommend installing the dynamic module for NGINX Open Source because it doesn't have dependencies outside of NGINX itself.

Module variation NGINX model Module package name Notes
Dynamic NGINX Open Source nginx-module-sigsci-nxo This package is compiled against the appropriate NGINX releases. Certain upstream repositories that maintain their own NGINX releases may deviate from these builds and cause issues installing.
Dynamic NGINX Plus nginx-module-sigsci-nxp
Lua OpenResty sigsci-module-nginx
Lua NGINX Open Source sigsci-module-nginx ngx_http_lua_module must be installed.
Lua NGINX Plus sigsci-module-nginx nginx-plus-module-lua must be installed.

Supported versions

Our Compatibility and requirements guide lists the distributions our NGINX module has packages available for. We update our NGINX module after a mainline NGINX release occurs. We will expedite a release when there are exceptions (e.g., critical vulnerability).

WARNING

NGINX and various other upstreams that supply NGINX builds often stop releasing or updating NGINX packages for certain distribution release repositories after a certain period of time, often coinciding with distribution end of life dates, which is outside of our control. This may mean that for certain distribution releases, certain versions of the module may not be available or the appropriate package may be outdated for your release. If you believe a package should be made available for your version on your platform, contact support@fastly.com.