mesozoa/example-config.yaml

41 lines
1.3 KiB
YAML

---
# Mesozoa listens to this address
# It should be a local address, that receives traffic from the reverse-proxy.
listen: 127.0.0.1:8504
# Mesozoa relays accepted traffic to this address
pass: 127.0.0.1:8000
# Domain to set the cookies
domain: 127.0.0.1
# Duration (in seconds) of validity of a challenge
challenge-timeout: 3600
# PoW difficulty
# Mean PoW duration is multiplied by 2 when this number is incremented by 1.
# (TODO: unused for now, needs dynamic challenge page)
#target-zeros: 15
# Action applied when no policy matches
# (see below for legal values)
default-action: allow
# Policy groups are evaluated in order.
# The first matching group stops evaluation.
# Policies within a group are all evaluated at the same time.
# The first matching policy (order from the list here) is applied and stops evaluation.
# `name` is for logging, put anything you want.
# `first-line` is a regex for the first line of the HTTP request.
# `action` is one of the following:
# - "allow": relay without challenge
# - "challenge": ask Pow challenge and relay iff client succeeds
# - "drop": drop connection and do not relay
policy-groups:
- - name: Favicon
first-line: "^GET /favicon.ico "
action: allow
- name: robots.txt
first-line: "^GET /robots.txt "
action: allow
- name: Test
first-line: "^GET /test/[a-z]+/"
action: challenge