smorgasbord

module
v0.0.0-...-ccca5b4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 6, 2020 License: Apache-2.0

README

Smorgasbord

Go Documentation Build Status Go Report Card Coverage Status Maintainability

a range of open sandwiches and delicacies served as hors d'oeuvres or a buffet

Smorgasbord purpose is to ease up the administration of a wireguard-based VPN.
It creates, stores and distributes client configurations for its users and can derive server configuration using the provided agent. Users can self-service their public keys after authenticating via OpenID Connect. Rather than using a database the public keys and metadata are commited to a git repository, which is used as storage endpoint.

Smorgasbord primary goal is to provide a minimalistic environment to manage users across multiple wireguard servers applicable to embedded systems as well as more complex installments.

Concept of Smorgasbord

Backlog topics

The backlog contains some bigger topics, which we might implement in the future. However feel free to implement them yourself you need them.

Automatic removal

Currently it is required to manage the removal/deactivation of users manually, e.g. admin removing entries from git repository.

However if the information about the deactivation is available via OIDC, e.g. refresh token failing. It would be possible to deactivate users automatically.

Configure wireguard directly

Rather than provide the configuration and issuing a command (e.g. wg syncconf) the agent could configure wireguard interface directly using the go library.

About the name

This project started a late night project and the name was essentially what came up first after googling "synonym self-service". It might therefore be subject to change.

Directories

Path Synopsis
cmd
internal
pkg
testutil
Taken from dex, therefore their license applies.
Taken from dex, therefore their license applies.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL