Skip to content

Latest commit

 

History

History
76 lines (60 loc) · 1.86 KB

mod_block.md

File metadata and controls

76 lines (60 loc) · 1.86 KB

Introduction

Block incoming connection/request based on defined rules.

Module Configuration

Description

conf/mod_block/mod_block.conf

Config Item Description
Basic.ProductRulePath path of product rule configuration
Basic.IPBlacklistPath path of ip blacklist file

Example

[basic]
# product rule config file path
ProductRulePath = mod_block/block_rules.data

# global ip blacklist file path
IPBlacklistPath = mod_block/ip_blacklist.data

Format of IPBlacklistPath file

192.168.1.253 192.168.1.254
192.168.1.250

Rule configuration

Description

conf/mod_block/block_rules.data

Config Item Description
Version String
Verson of config file
Config Struct
Block rules for each product
Config{k} String
Product name
Config{v} Object
a list of rules
Config{v}[] Object
a block rule
Config{v}[].Cond String
Condition expression, See Condition
Config{v}[].Name String
Name of rule
Config{v}[].Action Object
Action of rule
Config{v}[].Action.Cmd String
Name of action
Config{v}[].Action.Params Object
a list of action parameters
Config{v}[].Action.Params[] String
a action parameter

Actions

Action Description
CLOSE Close the connection

Example

{
  "Version": "20190101000000",
  "Config": {
      "example_product": [
          {
            "action": {
                  "cmd": "CLOSE",
                  "params": []
              },
              "name": "example rule",
              "cond": "req_path_in(\"/limit\", false)"            
          }
      ]
  }
}