namespace | description | description-source | categories | language | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Nebula |
Nebula is a scalable overlay networking tool with a focus on performance, simplicity and security. It lets you seamlessly connect computers anywhere in the world. Nebula is portable, and runs on Linux, OSX, Windows, iOS, and Android. It can be used to connect a small number of computers, but is also able to connect tens of thousands of computers. |
|
en |
Install nebula
with:
$ guix package -i nebula
This will give you access to:
nebula
nebula-cert
Refer to Getting started (quickly) on Github.
Open /etc/system.scm
and adjust accordingly:
Add required imports. It may look something like this:
(use-modules (gnu)
(gnu system)
(px system config)
(px services networking)) ;; add this only
Add service, to services:
(services (cons*
(service nebula-service-type) ;; add this only
%px-server-services)) ;; on desktop, this is 'px-desktop-services'
The default config is assumed to be at /etc/nebula/config.yml
(service nebula-service-type
(list (nebula-configuration
(provision '(nebula-1))
(config-path "/etc/nebula/network1/config.yml"))
(nebula-configuration
(provision '(nebula-2))
(config-path "/etc/nebula/network2/config.yml"))))
define configuration as a plain-file
:
(define %nebula-config-file
(plain-file "nebula.yml"
"---
pki:
ca: /etc/nebula/certs/ca.crt
cert: /etc/nebula/certs/host.crt
key: /etc/nebula/certs/host.key
..."))
use the configuration in the nebula-service-type
:
(service nebula-service-type
(list (nebula-configuration
(provision '(nebula))
(config-path %nebula-config-file))))