Appearance
自定义配置
执行安装脚本以后,配置文件路径为/usr/local/web-firewalld/manifest/config/config.yaml
,可以根据需求进行修改。
yml
server:
address: ":8000"
https: false # 启用https
# httpsCertPath: "./manifest/config/server.crt"
# httpsKeyPath: "./manifest/config/server.key"
openapiPath: "/api/api.json" # 在线文档访问地址
swaggerPath: "/api/docs" # 在线文档访问地址
swaggerCss: ./resource/public/docs/swagger.css
swaggerJs: ./resource/public/docs/swagger.js
serverRoot: "./resource/public/html"
indexFiles: [ "index.html", "main.html" ]
accessLogEnabled: true
# shell操作日志存放路径
shellMode: bash # shell模式 仅支持 bash sh两种,设置成其他的无效默认sh
shellLog: /var/log/web-firewall/shell
logger:
path: "/var/log/web-firewall/access" # 日志文件路径。默认为空,表示关闭,仅输出到终端
# file: "" # 日志文件格式。默认为"{Y-m-d}.log"
prefix: "access" # 日志内容输出前缀。默认为空
level: "info" # 日志输出级别
stdout: false # 日志是否同时输出到终端。默认true
# rotateSize: 0 # 按照日志文件大小对文件进行滚动切分。默认为0,表示关闭滚动切分特性
# rotateExpire: 0 # 按照日志文件时间间隔对文件滚动切分。默认为0,表示关闭滚动切分特性
rotateBackupLimit: 30 # 按照切分的文件数量清理切分文件,当滚动切分特性开启时有效。默认为0,表示不备份,切分则删除
# rotateBackupExpire: 0 # 按照切分的文件有效期清理切分文件,当滚动切分特性开启时有效。默认为0,表示不备份,切分则删除
# rotateBackupCompress: 0 # 滚动切分文件的压缩比(0-9)。默认为0,表示不压缩
rotateCheckInterval: "1d" # 滚动切分的时间检测间隔,一般不需要设置。默认为1小时
logger:
path: "/var/log/web-firewall/log/" # 日志文件路径。默认为空,表示关闭,仅输出到终端
file: "{Y-m-d}.log" # 日志文件格式。默认为"{Y-m-d}.log"
prefix: "" # 日志内容输出前缀。默认为空
level: "INFO" # 日志输出级别,不区分大小写 all 所有日志 DEBU < INFO < NOTI < WARN < ERRO < CRIT
timeFormat: "2006-01-02T15:04:05" # 自定义日志输出的时间格式,使用Golang标准的时间格式配置
# ctxKeys: [ ] # 自定义Context上下文变量名称,自动打印Context的变量到日志中。默认为空
header: true # 是否打印日志的头信息。默认true
stdout: true # 日志是否同时输出到终端。默认true
rotateSize: 0 # 按照日志文件大小对文件进行滚动切分。默认为0,表示关闭滚动切分特性
rotateExpire: "1d" # 按照日志文件时间间隔对文件滚动切分。默认为0,表示关闭滚动切分特性
rotateBackupLimit: 30 # 按照切分的文件数量清理切分文件,当滚动切分特性开启时有效。默认为0,表示不备份,切分则删除
rotateBackupExpire: 0 # 按照切分的文件有效期清理切分文件,当滚动切分特性开启时有效。默认为0,表示不备份,切分则删除
rotateBackupCompress: 0 # 滚动切分文件的压缩比(0-9)。默认为0,表示不压缩
rotateCheckInterval: "1d" # 滚动切分的时间检测间隔,一般不需要设置。默认为1小时
stdoutColorDisabled: false # 关闭终端的颜色打印。默认开启
writerColorEnable: false # 日志文件是否带上颜色。默认false,表示不带颜色
firewall:
type: auto # 配置防火墙类型,可选参数 nftables/iptables/auto 默认auto
typePriority: nftables # nftables/iptables type 为auto 设置优先检测防火墙类型,在某些系统下两种会共存 默认nftables
chainPriority: #配置链的优先级,仅type为 nftables时生效
input: 0
output: 100
forward: 100
prerouting: 100
postrouting: 100
database:
logger:
path: "/var/log/web-firewall/sql"
level: "info"
stdout: false
default:
link: "sqlite::@file(./resource/db.sqlite3)"
debug: false