-
Notifications
You must be signed in to change notification settings - Fork 92
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
The plugin can generate credentials for CoCo PODs (or VMs) that want to join a Nebula encrypted overlay network. The service is accessible only for CoCo PODs that were attested. At initialization phase, the plugin generates the CA key and certificate based on the config pointed in the kbs-config.toml. At runtime, the plugin can take GET requests to generate credentials. The parameters are provided via query string; the CoCo POD name node and IP address (CDR format e.g. 10.9.1.2/21) are required, the other parameters listed in the NebulaCredentialParams structure are optional. Signed-off-by: Claudio Carvalho <[email protected]>
- Loading branch information
Showing
12 changed files
with
630 additions
and
14 deletions.
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
58 changes: 58 additions & 0 deletions
58
kbs/config/docker-compose/self-signed-nebula-ca-config.toml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,58 @@ | ||
# Required: <String> | ||
# Path to the nebula-cert binary obtained from the Nebula release | ||
nebula_cert_bin_path = "/usr/local/bin/nebula-cert" | ||
|
||
# Required: <String> | ||
work_dir = "/opt/confidential-containers/kbs/nebula-ca" | ||
|
||
[settings] | ||
|
||
# Required: <String> | ||
# Name of the certificate authority | ||
name = "Nebula CA for Trustee KBS" | ||
|
||
# Optional: <u32> | ||
# Argon2 iterations parameter used for encrypted | ||
# private key passphrase (default 1) | ||
## argon_iterations = 1 | ||
|
||
# Optional: <u32> | ||
# Argon2 memory parameter (in KiB) used for encrypted | ||
# private key passphrase (default 2097152) | ||
## argon_memory = 2097152 | ||
|
||
# Optional: <u32> | ||
# Argon2 parallelism parameter used for encrypted private | ||
# key passphrase (default 4) | ||
## argon_parallelism = 4 | ||
|
||
# Optional: <String> | ||
# EdDSA/ECDSA Curve (25519, P256) (default "25519") | ||
## curve = "25519" | ||
|
||
# Optional: <String> | ||
# Amount of time the certificate should be valid for. | ||
# Valid time units are seconds: | ||
# "s", minutes: "m", hours: "h" (default 8760h0m0s) | ||
## duration = "8760h0m0s" | ||
|
||
# Optional: <String> | ||
# Comma separated list of groups. This will limit which | ||
# groups subordinate certs can use | ||
## groups = "servers,ssh" | ||
|
||
# Optional: <String> | ||
# Comma separated list of ipv4 address and network | ||
# in CIDR notation. This will limit which ipv4 addresses and | ||
# networks subordinate certs can use for ip addresses | ||
## ips = "192.168.100.10/24" | ||
|
||
# Optional: <String> | ||
# Path to write a QR code image (png) of the certificate | ||
## out_qr = "/opt/confidential-containers/kbs/plugin/nebula/ca/ca.png" | ||
|
||
# Optional: <String> | ||
# Comma separated list of ipv4 address and network | ||
# in CIDR notation. This will limit which ipv4 addresses and | ||
# networks subordinate certs can use in subnets | ||
## subnets = "192.168.86.0/24" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -5,6 +5,7 @@ | |
pub mod error; | ||
pub mod plugin_manager; | ||
|
||
pub mod nebula_ca; | ||
pub mod resource; | ||
pub mod sample; | ||
|
||
|
Oops, something went wrong.