Synchronizes your WireGuard settings with Pro Custodibus.
Project description
Pro Custodibus Agent
Pro Custodibus is a service that makes WireGuard VPNs easy to deploy and manage. You run the Pro Custodibus agent on your own internal hosts, and the agent monitors and synchronizes your hosts' WireGuard settings with the remote Pro Custodibus service.
Installing
Requires python 3.7 or newer and libsodium. Installer script can install requirements, plus the agent itself, on most linuxes. Install from source like the following:
./install.sh --install
Or run it like the following to see more options:
./install.sh --help
See the Installer Documentation for full details.
Docker
The docker/wireguard.dockerfile is built weekly and pushed to the docker.io/procustodibus/wireguard repository. It produces a base WireGuard image without the agent.
The docker/agent.dockerfile is built weekly and pushed to the docker.io/procustodibus/agent repository. It produces a Docker image with WireGuard and the latest agent installed together.
Run either image by placing your WireGuard or Pro Custodibus configuration files in a host directory like /srv/containers/wireguard/conf
, and then running the image like the following:
docker run \
--cap-add NET_ADMIN \
--publish 51820:51820/udp \
--name wireguard \
--rm \
--volume /srv/containers/wireguard/conf:/etc/wireguard \
procustodibus/agent
See the Container Documentation for full details.
Development
Set up dev env
-
Create a virtualenv with pyenv:
pyenv virtualenv 3.10.4 procustodibus-agent
-
Activate the virtualenv:
pyenv local procustodibus-agent 3.7.16 3.8.16 3.9.16 3.10.10 3.11.2
-
Install tox:
pip install tox
-
Install pre-commit and pre-push hooks:
tox -e pre-commit install tox -e pre-commit install -- -t pre-push
Dev tasks
List all tox tasks you can run:
tox -av
Run unit tests in watch mode:
tox -e watch
Build and run docker dev image (with *.conf
files in /srv/containers/wireguard/conf
):
tox -e build
docker/dev.sh dev
docker run \
--cap-add NET_ADMIN \
--publish 51820:51820/udp \
--name wireguard \
--rm \
--volume /srv/containers/wireguard/conf:/etc/wireguard \
procustodibus-agent:dev
Run all (docker-based) installer tests:
docker-compose -f test_install/docker-compose.yml build --pull
tox -e py310 test_install
Manually run pre-push hook on all version-controlled files:
tox -e pre-commit run -- -a --hook-stage push
Resources
- Home page: https://www.procustodibus.com/
- Documentation: https://docs.procustodibus.com/guide/agents/run/
- Changelog: https://docs.procustodibus.com/guide/agents/download/#changelog
- Issue tracker: https://todo.sr.ht/~arx10/procustodibus-agent
- Source code: https://git.sr.ht/~arx10/procustodibus-agent
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for procustodibus_agent-1.3.2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 35e32f743cb03a26714ebf6c150fe6e38d00b8419536b5dd9b25aebf527df0d3 |
|
MD5 | fb8e348725456d880a71da6947b56248 |
|
BLAKE2b-256 | aea1308ac38ca0bb004d44924490a584991921a748b9926be18c31c1a97ecaa8 |
Hashes for procustodibus_agent-1.3.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f70b4a00ddeffdbde20185c21723674a60925fd4cced556382f1c6aa3749602e |
|
MD5 | ff38a50159d5df6182e55774d5a0ba14 |
|
BLAKE2b-256 | e17368d379c8edf480611e11491e21634e0b6f391333255bc263838105c81485 |