Kleened installation
Requirements
- Recent versions of FreeBSD on amd64: 13.x or 14.x.
- In principle it should work on other archtectures, provided they have the necessary kernel modules.
- The ZFS kernel module. Included in the official releases.
- The PF firewall kernel module. Included in the official releases.
Install using pkg
Since Kleened is not part of the official ports repository yet, it has to be downloaded manually.
The easiest way to get the latest version of Kleened and install it using
pkg
.
On FreeBSD14.x:
$ fetch https://github.com/kleene-project/kleened/releases/download/v0.1.0-rc.1/kleened-0.1.0rc1_FreeBSD14-amd64.pkg
$ sudo pkg install kleened-0.1.0rc1_FreeBSD14-amd64.pkg
On FreeBSD13.x:
$ fetch https://github.com/kleene-project/kleened/releases/download/v0.1.0-rc.1/kleened-0.1.0rc1_FreeBSD13-amd64.pkg
$ sudo pkg install kleened-0.1.0rc1_FreeBSD13-amd64.pkg
Install using ports
Alternatively, build it from source using the FreeBSD port (which is not part of the official FreeBSD ports tree yet):
$ git clone https://github.com/kleene-project/ports.git kleene-ports
$ cd kleene-ports/sysutils/kleene-daemon
$ sudo make install
Configuration
It is recommended to take a peek at the configuration file before running
Kleened. It is located at /usr/local/etc/kleened/config.yaml
and contains
defaults intended to work in most basic cases.
Once Kleened is installed, enable it:
$ sudo sysrc kleened_enable=yes
This ensures that it will start when the system is restarted.
Initialize the host
To make sure that all host requirements are met and the host system is properly configured, run
$ sudo service kleened init
It is also possible to do a dry-run instead using
service kleened dryinit
to see which requirements are met and what
Kleened intends to configure.
Finally, start Kleened
$ sudo service kleened start
Klee installation
There are several ways of installing Klee depending on tooling and platform. The following provides a couple of examples.
Install using pipx
pipx
works on many differen platforms and can be used to install python packages
in isolated environments to avoid dependency conflicts from other python applications.
pipx
can be installed on most operating systems.
For instance, on FreeBSD:
$ sudo pkg install py311-pipx
On a Debian-based Linux distribution
$ sudo apt install pipx
Then install Klee by
$ pipx install kleene-cli
This is the most common way that uses the latest version from PyPI.
Install latest development version
Alternatively, Klee can be installed directly from source using
$ git clone https://github.com/kleene-project/klee
$ pipx install ./klee
If pipx install -e ./klee
is used instead, it will be installed in ‘editable’
mode, meaning that any changes made to Klee will take effect the next time klee
is invoked.