---
title: About module-agent deployment
summary: null
url: >-
  https://www.fastly.com/documentation/guides/next-gen-waf/setup-and-configuration/module-agent-deployment/about-module-agent-deployment
---

The [On-Prem WAF](https://docs.fastly.com/products/fastly-next-gen-waf#deployment-types) (formerly known as Core WAF) deployment method includes both module-agent and [reverse proxy](https://www.fastly.com/documentation/guides/next-gen-waf/setup-and-configuration/reverse-proxy-deployment/about-reverse-proxy-deployment) deployment options. With a module-agent deployment, you're responsible for managing your Next-Gen WAF deployment in your hosting environment.

The module-agent topology includes both the Next-Gen WAF module and the Next-Gen WAF agent [components](https://www.fastly.com/documentation/guides/next-gen-waf/getting-started/about-the-architecture). The module listens for incoming requests and passes them to the agent for a decision. The agent decides whether the request should be permitted to continue, blocked, rate limited, or tagged with signals. After receiving a decision from the agent, the module then blocks, allows, or rate limits requests in accordance with that decision.

To set up a module-agent deployment, complete the following steps:

1. [Install the agent](https://www.fastly.com/documentation/guides/next-gen-waf/setup-and-configuration/agent-management/getting-started-with-the-agent/).
2. [Install the module](https://www.fastly.com/documentation/guides/next-gen-waf/setup-and-configuration/module-agent-deployment/about-module-agent-deployment#installing-the-module).
3. [Verify the installation](https://www.fastly.com/documentation/guides/next-gen-waf/setup-and-configuration/module-agent-deployment/about-module-agent-deployment#verifying-your-installation).

## Installing the module

After installing the Next-Gen WAF agent, install the variation of the Next-Gen WAF module that is appropriate for your hosting environment. The module can exist as a plugin to your web server or as a language or framework specific implementation.

### Web server module options

Web server module variations are installed to extend the request handling logic and communicate with the agent for subsequent advice. The web server module options are as follows:

- [Apache module](https://www.fastly.com/documentation/guides/next-gen-waf/setup-and-configuration/module-agent-deployment/apache-module/installing-the-apache-module)
- [HAProxy module](https://www.fastly.com/documentation/guides/next-gen-waf/setup-and-configuration/module-agent-deployment/haproxy-module)
- [HAProxy SPOE module](https://www.fastly.com/documentation/guides/next-gen-waf/setup-and-configuration/module-agent-deployment/haproxy-spoe-module)
- [IIS module](https://www.fastly.com/documentation/guides/next-gen-waf/setup-and-configuration/module-agent-deployment/iis)
- [Kong plugin](https://www.fastly.com/documentation/guides/next-gen-waf/setup-and-configuration/module-agent-deployment/kong)
- [NGINX module](https://www.fastly.com/documentation/guides/next-gen-waf/setup-and-configuration/module-agent-deployment/nginx-module/about-the-nginx-module)

### Language and framework specific module (RASP) options

The language and framework specific module variations are installed at the application layer. The language and framework specific module options are as follows:

- [.Net Core module](https://www.fastly.com/documentation/guides/next-gen-waf/setup-and-configuration/module-agent-deployment/dotnet-core)
- [.Net module](https://www.fastly.com/documentation/guides/next-gen-waf/setup-and-configuration/module-agent-deployment/dotnet)
- [IBM HTTP server](https://www.fastly.com/documentation/guides/next-gen-waf/setup-and-configuration/module-agent-deployment/ihs)
- [Java module](https://www.fastly.com/documentation/guides/next-gen-waf/setup-and-configuration/module-agent-deployment/java-module/java-module-intro)
- [Node.js module](https://www.fastly.com/documentation/guides/next-gen-waf/setup-and-configuration/module-agent-deployment/nodejs-module)

### Open source module options

Our open source modules follow either a Fastly-service or self-service model.

- **Fastly-service model:** modules that Fastly updates and provides technical support for.
- **self-service model:** modules that have a public-only development workflow and that Fastly will not update or provide technical support for.

| Module                                                                                                                                  | Fastly-service model | Self-service model | License |
| --------------------------------------------------------------------------------------------------------------------------------------- | -------------------- | ------------------ | ------- |
| [Golang module](https://www.fastly.com/documentation/guides/next-gen-waf/setup-and-configuration/module-agent-deployment/golang-module) | ✔                    |                    | MIT     |
| [PHP module](https://github.com/fastly/sigsci-module-php)                                                                               |                      | ✔                  | MIT     |
| [Python module](https://github.com/fastly/sigsci-module-python)                                                                         |                      | ✔                  | MIT     |

> **HINT:** Per the MIT license included in the repositories for our open source modules, you may use our open source modules without restriction.

### Custom module option

You can write a custom module for your On-Prem WAF deployment. The custom module must be compatible with our [data flows](https://www.fastly.com/documentation/guides/next-gen-waf/developer/module-flows).

## Verifying your installation

After installing the agent and module, verify your installation:

### Next Gen Waf Control Panel

1.   Log in to the [Next-Gen WAF control panel](https://dashboard.signalsciences.net).

2.   From the **Sites** menu, select a site if you have more than one site.

3. Click **Agents** in the navigation bar near the top of the screen.
4. Check the module version under **Module** to confirm the correct version is listed.

> **HINT:** Until there has been at least one request since the agent and module were installed, the module information won't be listed. Once there is traffic the module information will be populated.

### Fastly Control Panel

1.   Log in to the [Fastly control panel](https://manage.fastly.com).

2.   Go to **Security** > **Next-Gen WAF** > [**Workspaces**](https://manage.fastly.com/security/ngwaf/workspaces).

3.   Go to **Security** > **Next-Gen WAF** > [**Deployment**](https://manage.fastly.com/security/ngwaf/deployment).

4. Check the module version under **Module** to confirm the correct version is listed.

> **HINT:** Until there has been at least one request since the agent and module were installed, the module information won't be listed. Once there is traffic the module information will be populated.

## Related content

- [About reverse proxy deployment](https://www.fastly.com/documentation/guides/next-gen-waf/setup-and-configuration/reverse-proxy-deployment/about-reverse-proxy-deployment)
- [Using an API with the Next-Gen WAF](https://www.fastly.com/documentation/guides/next-gen-waf/developer/using-an-api-with-the-next-gen-waf)
