Skip to content

Worker Configuration

James P edited this page Oct 8, 2026 · 1 revision

Worker Configuration

Each worker reads a JSON config, worker.json by default. Override with -config /path/to/file.json.

Example

{
  "server_url": "http://hashtasker.example.com:8080",
  "hostname": "worker-01",
  "checkin_interval": "30s",
  "hashcat_path": "/usr/bin/hashcat",
  "rulesets_path": "/opt/rules",
  "wordlists_path": "/mnt/nfs/wordlists",
  "temp_path": "/tmp/hashtasker"
}

Fields

Field Required Default Description
server_url Yes Base URL of the HashTasker server, no trailing path
hostname No OS hostname The worker's identity. Must be unique across the fleet; two workers with the same hostname will overwrite each other's state.
checkin_interval No 30s How often to report stats and poll for work. Go duration (15s, 30s, 1m). Keep it well under 60s or the server will mark the worker offline.
hashcat_path Yes Full path to the hashcat binary
rulesets_path No /opt/rules Local rules directory. Rule files are referenced by file name, so names must match the server's.
wordlists_path NFS only Local mount point of the shared wordlist directory. If unset, the worker reports NFS as unavailable, which blocks job creation when the server is in NFS mode.
temp_path Yes Scratch space for hash files, downloaded chunks, custom wordlists, and potfiles. Created if missing. Cleaned up when jobs end.

Disk Space

In push mode each worker downloads its slice of the wordlist into temp_path, so size it for roughly largest wordlist / number of workers per concurrent job. Uploaded custom wordlists are always downloaded in full.

Running Multiple Workers on One Host

Give each instance its own hostname, temp_path, and config file, and run each with -config.

Clone this wiki locally