RZ Ruzor Docs

ruzord daemon reference

Server Usage

Rust-native Pyzor-compatible client and server documentation.

Daemon

ruzord listens for Pyzor-compatible UDP requests and stores digest records in the selected backend.

ruzord --homedir /var/lib/ruzor -a 0.0.0.0 -p 24441
ruzord --homedir /var/lib/ruzor   --dsn /var/lib/ruzor/ruzord.db   --password-file ruzord.passwd   --access-file ruzord.access   -a 0.0.0.0 -p 24441

Backends

EngineDSNNotes
gdbmPath to database fileDefault backend; compatible with Python GNU gdbm records.
redishost,port,password,db[,username]Redis v1 hash format; optional username supports managed Redis ACL users.
redis_v0host,port,password,db[,username]Legacy Redis string format; optional username supports managed Redis ACL users.
mysqlhost,user,password,database,tableUses the upstream Pyzor MySQL schema.
ruzord -e redis --dsn 127.0.0.1,6379,,0 -a 127.0.0.1 -p 24441
ruzord -e redis --dsn 127.0.0.1,6379,,0 -a 0.0.0.0 -p 24441 \
  --proxy-source public.pyzor.org
ruzord -e redis_v0 --dsn 127.0.0.1,6379,,0 -a 127.0.0.1 -p 24441
ruzord -e mysql --dsn 127.0.0.1,ruzor,secret,ruzord,digests -a 127.0.0.1 -p 24441

Proxy Sources

--proxy-source accepts comma-separated host[:port] sources. When a local check has no positive match, ruzord checks those Pyzor-compatible sources in order, returns the first positive upstream Count or WL-Count, and caches that positive upstream response in the active backend. Empty upstream matches and upstream errors are not cached.

ruzord -e redis --dsn 127.0.0.1,6379,,0 -a 0.0.0.0 -p 24441 \
  --proxy-source public.pyzor.org,backup.example:24441

MySQL Schema

CREATE TABLE digests (
  digest char(40) NOT NULL,
  r_count int(11) DEFAULT NULL,
  wl_count int(11) DEFAULT NULL,
  r_entered datetime DEFAULT NULL,
  wl_entered datetime DEFAULT NULL,
  r_updated datetime DEFAULT NULL,
  wl_updated datetime DEFAULT NULL,
  PRIMARY KEY (digest)
);

Concurrency And Process Modes

ruzord --threads true --max-threads 10 --db-connections 10 -a 127.0.0.1 -p 24441
ruzord --processes true --max-processes 40 -a 127.0.0.1 -p 24441
ruzord --pre-fork 4 -e redis --dsn 127.0.0.1,6379,,0 -a 127.0.0.1 -p 24441
ruzord --detach /var/log/ruzord.out --homedir /var/lib/ruzor

Signals

Use SIGTERM for graceful shutdown and SIGUSR1 to reload password and access files.

kill -TERM $(cat /var/lib/ruzor/ruzord.pid)
kill -USR1 $(cat /var/lib/ruzor/ruzord.pid)