This directory contains code for the central permuter@home controller server, written in Rust. All p@h traffic passes through here.
If you just want to run a regular p@h server, you don't need to care about this.
To setup your own copy of the controller server:
- Install Rust and (for the libsodium dependency) GCC.
- Run
cargo build --release
. - Run
./target/release/pahserver setup --db path/to/database.json
and follow the instructions there. This will set thepriv_seed
part ofconfig.toml
, and set up an initial trusted client. The rest ofconfig.toml
can be copied fromconfig_example.toml
. - Set up a reverse proxy that forwards HTTPS traffic from an external port or route to HTTP for a port of your choice, e.g. using Nginx or Traefik. If applicable, configure your firewall to let the external port through.
- Start the server with:
./target/release/pahserver run --listen-on 0.0.0.0: --config config.toml --db path/to/database.json
and configure the system to run this at startup.