Coraza Server is the most ambitious implementation of Coraza WAF, it's designed to integrate with systems written in different languages, like C, using multiple protocols like SPOA, REST and GRPC.
To install coraza library you are required to have a C compiler, libinjection and pcre installed, see https://coraza.io/docs/tutorials/dependencies/
If you cannot install these dependencies you may
go install github.com/jptosso/coraza-server/cmd/coraza-server@master
Configuration is not stable yet.
To install Coraza plugins you must copy the content from cmd/coraza-server/main.go
and add the dependencies named with _, for example:
package main
import (
"flag"
"os"
"sync"
"github.com/jptosso/coraza-server/config"
"github.com/jptosso/coraza-server/protocols"
"github.com/jptosso/coraza-waf"
"github.com/jptosso/coraza-waf/seclang"
"github.com/sirupsen/logrus"
"gopkg.in/yaml.v2"
// Plugins
_ "github.com/path/to-plugin"
)