c0repwn3r 7513eb8318 | ||
---|---|---|
.idea | ||
api | ||
dnapi-rs | ||
tfclient | ||
tfweb | ||
trifid-api | ||
trifid-pki | ||
.build.yml | ||
.env | ||
.gitignore | ||
Cargo.lock | ||
Cargo.toml | ||
LICENSE.txt | ||
README.md | ||
api.txt | ||
dnclient |
README.md
trifid
trifid is an open-souce reimplementation of the Defined Networking management protocol for Nebula networks.
It includes a reimplementation of the API Server, the Web UI, and dnclient
- all fully compatible with the original implementation.
We also include a Rust library for interacting with keys and certificates in the Nebula PKI. Find it in trifid-pki/
, or on crates.rs as trifid-pki
The API implementation is tested with the official dnclient implementaiton, and the dnclient implementation is tested with the official API server, to ensure complete feature parity between the two.
The original Web UI does not work with trifid-api quite yet, as we haven't finished reverse engineering that API. Feature table below:
Features
trifid-api feature table:
Feature | trifid-api | api.defined.net |
---|---|---|
Enroll in sites with dnclient | Yes | Yes |
Automatic config update polling by dnclient | Not yet | Yes |
Group-based firewalling | Not yet | Yes |
SSO authentication | Not yet | Yes |
Extensive API documentation | In the works | No |
Open-source server | Yes | No |
All functionality avaliable via API | Yes | No |
tfclient feature table:
Feature | tfclient | dnclient |
---|---|---|
Enroll in trifid-api/api.defined.net sites | Not yet | Yes |
Automatic VPN profile setup | Not yet | Yes |
CLI for using the full API | Not yet | No |