Skip to content

Plugin Bouncer Middleware

Appears in

  • .Values.middlewares.$name.data

pluginName

Define the pluginName

Keymiddlewares.$name.data.pluginName
Typestring
Required
Helm tpl
Defaultbouncer

Example

middlewares:
middleware-name:
data:
pluginName: my-plugin-name

enabled

Define the enabled

Keymiddlewares.$name.data.enabled
Typebool
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
enabled: true

logLevel

Define the logLevel

Keymiddlewares.$name.data.logLevel
Typestring
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
logLevel: DEBUG

updateIntervalSeconds

Define the updateIntervalSeconds

Keymiddlewares.$name.data.updateIntervalSeconds
Typeint
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
updateIntervalSeconds: 60

updateMaxFailure

Define the updateMaxFailure

Keymiddlewares.$name.data.updateMaxFailure
Typeint
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
updateMaxFailure: 0

defaultDecisionSeconds

Define the defaultDecisionSeconds

Keymiddlewares.$name.data.defaultDecisionSeconds
Typeint
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
defaultDecisionSeconds: 60

httpTimeoutSeconds

Define the httpTimeoutSeconds

Keymiddlewares.$name.data.httpTimeoutSeconds
Typeint
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
httpTimeoutSeconds: 10

crowdsecMode

Define the crowdsecMode

Keymiddlewares.$name.data.crowdsec
Typestring
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
crowdsecMode: live

crowdsecAppsecEnabled

Define the crowdsecAppsecEnabled

Keymiddlewares.$name.data.crowdsecAppsecEnabled
Typebool
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
crowdsecAppsecEnabled: false

crowdsecAppsecHost

Define the crowdsecAppsecHost

Keymiddlewares.$name.data.crowdsecAppsecHost
Typestring
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
crowdsecAppsecHost: crowdsec:7422

crowdsecAppsecFailureBlock

Define the crowdsecAppsecFailureBlock

Keymiddlewares.$name.data.crowdsecAppsecFailureBlock
Typebool
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
crowdsecAppsecFailureBlock: true

crowdsecAppsecUnreachableBlock

Define the crowdsecAppsecUnreachableBlock

Keymiddlewares.$name.data.crowdsecAppsecUnreachableBlock
Typebool
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
crowdsecAppsecUnreachableBlock: true

crowdsecLapiKey

Define the crowdsecLapiKey

Keymiddlewares.$name.data.crowdsecLapiKey
Typestring
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
crowdsecLapiKey: privateKey-foo

crowdsecLapiHost

Define the crowdsecLapiHost

Keymiddlewares.$name.data.crowdsecLapiHost
Typestring
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
crowdsecLapiHost: crowdsec:8080

crowdsecLapiScheme

Define the crowdsecLapiScheme

Keymiddlewares.$name.data.crowdsec
Typestring
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
crowdsecLapiScheme: http

crowdsecLapiTLSInsecureVerify

Define the crowdsecLapiTLSInsecureVerify

Keymiddlewares.$name.data.crowdsecLapiTLSInsecureVerify
Typebool
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
crowdsecLapiTLSInsecureVerify: false

crowdsecCapiMachineId

Define the crowdsecCapiMachineId

Keymiddlewares.$name.data.crowdsecCapiMachineId
Typestring
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
crowdsecCapiMachineId: login

crowdsecCapiPassword

Define the crowdsecCapiPassword

Keymiddlewares.$name.data.crowdsecCapiPassword
Typestring
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
crowdsecCapiPassword: password

crowdsecCapiScenarios

Define the crowdsecCapiScenarios

Keymiddlewares.$name.data.crowdsecCapiScenarios
Typelist of string
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
crowdsecCapiScenarios:
- crowdsecurity/http-path-traversal-probing
- crowdsecurity/http-xss-probing
- crowdsecurity/http-generic-bf

forwardedHeadersTrustedIPs

Define the forwardedHeadersTrustedIPs

Keymiddlewares.$name.data.forwardedHeadersTrustedIPs
Typelist of string
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
forwardedHeadersTrustedIPs:
- 10.0.10.23/32
- 10.0.20.0/24

clientTrustedIPs

Define the clientTrustedIPs

Keymiddlewares.$name.data.clientTrustedIPs
Typelist of string
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
clientTrustedIPs:
- 192.168.1.0/24

forwardedHeadersCustomName

Define the forwardedHeadersCustomName

Keymiddlewares.$name.data.forwardedHeadersCustomName
Typestring
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
forwardedHeadersCustomName: X-Custom-Header

remediationHeadersCustomName

Define the remediationHeadersCustomName

Keymiddlewares.$name.data.remediationHeadersCustomName
Typestring
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
remediationHeadersCustomName: cs-remediation

redisCacheEnabled

Define the redisCacheEnabled

Keymiddlewares.$name.data.redisCacheEnabled
Typebool
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
redisCacheEnabled: false

redisCacheHost

Define the redisCacheHost

Keymiddlewares.$name.data.redisCacheHost
Typestring
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
redisCacheHost: "redis:6379"

redisCachePassword

Define the redisCachePassword

Keymiddlewares.$name.data.redisCachePassword
Typestring
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
redisCachePassword: password

redisCacheDatabase

Define the redisCacheDatabase

Keymiddlewares.$name.data.redisCacheDatabase
Typestring
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
redisCacheDatabase: "5"

crowdsecLapiTLSCertificateAuthority

Define the crowdsecLapiTLSCertificateAuthority

Keymiddlewares.$name.data.crowdsecLapiTLSCertificateAuthority
Typestring
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
crowdsecLapiTLSCertificateAuthority: |-
-----BEGIN CERTIFICATE-----
MIIEBzCCAu+gAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwgZQxCzAJBgNVBAYTAlVT
...
Q0veeNzBQXg1f/JxfeA39IDIX1kiCf71tGlT
-----END CERTIFICATE-----

crowdsecLapiTLSCertificateBouncer

Define the crowdsecLapiTLSCertificateBouncer

Keymiddlewares.$name.data.crowdsecLapiTLSCertificateBouncer
Typestring
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
crowdsecLapiTLSCertificateBouncer: |-
-----BEGIN CERTIFICATE-----
MIIEHjCCAwagAwIBAgIUOBTs1eqkaAUcPplztUr2xRapvNAwDQYJKoZIhvcNAQEL
...
RaXAnYYUVRblS1jmePemh388hFxbmrpG2pITx8B5FMULqHoj11o2Rl0gSV6tHIHz
N2U=
-----END CERTIFICATE-----

crowdsecLapiTLSCertificateBouncerKey

Define the crowdsecLapiTLSCertificateBouncerKey

Keymiddlewares.$name.data.crowdsecLapiTLSCertificateBouncerKey
Typestring
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
crowdsecLapiTLSCertificateBouncerKey: |-
-----BEGIN RSA PRIVATE KEY-----
MIIEogIBAAKCAQEAtYQnbJqifH+ZymePylDxGGLIuxzcAUU4/ajNj+qRAdI/Ux3d
...
ic5cDRo6/VD3CS3MYzyBcibaGaV34nr0G/pI+KEqkYChzk/PZRA=
-----END RSA PRIVATE KEY-----

captchaProvider

Define the captchaProvider

Keymiddlewares.$name.data.captchaProvider
Typestring
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
captchaProvider: hcaptcha

captchaSiteKey

Define the captchaSiteKey

Keymiddlewares.$name.data.captchaSiteKey
Typestring
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
captchaSiteKey: FIXME

captchaSecretKey

Define the captchaSecretKey

Keymiddlewares.$name.data.captchaSecretKey
Typestring
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
captchaSecretKey: FIXME

captchaGracePeriodSeconds

Define the captchaGracePeriodSeconds

Keymiddlewares.$name.data.captchaGracePeriodSeconds
Typeint
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
captchaGracePeriodSeconds: 1800

captchaHTMLFilePath

Define the captchaHTMLFilePath

Keymiddlewares.$name.data.captchaHTMLFilePath
Typestring
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
captchaHTMLFilePath: /captcha.html

banHTMLFilePath

Define the banHTMLFilePath

Keymiddlewares.$name.data.banHTMLFilePath
Typestring
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
banHTMLFilePath: /ban.html

captchaHTMLFilePath

Define the captchaHTMLFilePath

Keymiddlewares.$name.data.captchaHTMLFilePath
Typestring
Required
Helm tpl
Default-

Example

middlewares:
middleware-name:
data:
captchaHTMLFilePath: /captcha.html

Full Examples

middlewares:
middleware-name:
enabled: true
type: plugin-bouncer
data:
enabled: true
logLevel: DEBUG
updateIntervalSeconds: 60
updateMaxFailure: 0
defaultDecisionSeconds: 60
httpTimeoutSeconds: 10
crowdsecMode: live
crowdsecAppsecEnabled: false
crowdsecAppsecHost: crowdsec:7422
crowdsecAppsecFailureBlock: true
crowdsecAppsecUnreachableBlock: true
crowdsecLapiKey: privateKey-foo
crowdsecLapiHost: crowdsec:8080
crowdsecLapiScheme: http
crowdsecLapiTLSInsecureVerify: false
crowdsecCapiMachineId: login
crowdsecCapiPassword: password
crowdsecCapiScenarios:
- crowdsecurity/http-path-traversal-probing
- crowdsecurity/http-xss-probing
- crowdsecurity/http-generic-bf
forwardedHeadersTrustedIPs:
- 10.0.10.23/32
- 10.0.20.0/24
clientTrustedIPs:
- 192.168.1.0/24
forwardedHeadersCustomName: X-Custom-Header
remediationHeadersCustomName: cs-remediation
redisCacheEnabled: false
redisCacheHost: "redis:6379"
redisCachePassword: password
redisCacheDatabase: "5"
crowdsecLapiTLSCertificateAuthority: |-
-----BEGIN CERTIFICATE-----
MIIEBzCCAu+gAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwgZQxCzAJBgNVBAYTAlVT
...
Q0veeNzBQXg1f/JxfeA39IDIX1kiCf71tGlT
-----END CERTIFICATE-----
crowdsecLapiTLSCertificateBouncer: |-
-----BEGIN CERTIFICATE-----
MIIEHjCCAwagAwIBAgIUOBTs1eqkaAUcPplztUr2xRapvNAwDQYJKoZIhvcNAQEL
...
RaXAnYYUVRblS1jmePemh388hFxbmrpG2pITx8B5FMULqHoj11o2Rl0gSV6tHIHz
N2U=
-----END CERTIFICATE-----
captchaProvider: hcaptcha
captchaSiteKey: FIXME
captchaSecretKey: FIXME
captchaGracePeriodSeconds: 1800
captchaHTMLFilePath: /captcha.html
banHTMLFilePath: /ban.html