EvoBSD is a set of Ansible playbooks and roles providing a customisation of the OpenBSD operating system used by Evolix.
Go to file
Jérémy Lecour f89751669f
continuous-integration/drone/push Build is failing Details
continuous-integration/drone/tag Build is failing Details
Merge pull request 'Release of EvoBSD 6.8.0' (#37) from dev into master
Reviewed-on: #37
Reviewed-by: Jérémy Lecour <jlecour@noreply.gitea.evolix.org>
2020-10-23 12:13:26 +02:00
roles Revert "Add user with legacy hash ($2a…) instead of current hash ($2b…) for OpenBSD versions older than 5.7" 2020-10-23 10:17:12 +02:00
tasks Fix commit_etc_git.yml task author 2020-08-26 09:50:05 +02:00
vars Add empty vars_files for them not to generate errors 2020-10-23 10:02:26 +02:00
.drone.yml fix forgotten quote in .drone.yml 2020-06-04 13:02:47 -04:00
CHANGELOG Update CHANGELOG and bump to version 6.8.0 2020-10-23 11:29:31 +02:00
CONTRIBUTING.md Apply fix in last commit to other markdown files 2020-06-04 13:23:06 -04:00
LICENSE Update copyright to 2020 2020-09-10 11:55:43 +02:00
README.md Update README file - amend version number and command examples 2020-10-23 11:40:22 +02:00
evolixisation.yml Add a pf tag that we skip for subsequent use 2020-10-14 09:40:59 +02:00
hosts Change default Python version to 3.x 2020-10-23 11:38:56 +02:00
prerequisite.yml Change default Python version to 3.x 2020-10-23 11:38:56 +02:00


EvoBSD 6.8.0

EvoBSD is an ansible project used for customising OpenBSD hosts used by Evolix.

How to install an OpenBSD machine

Note : The system must be installed with a root account only. Put your public key in the remote root's autorized_keys (/root/.ssh/authorized_keys)

  1. Install ansible's prerequisites
ansible-playbook prerequisite.yml -CDi hosts -l HOSTNAME
  1. Run it

First use (become_method: su) :

ansible-playbook evolixisation.yml --ask-vault-pass -CDki hosts -u root -l HOSTNAME

Subsequent use (become_method: sudo) :

ansible-playbook evolixisation.yml --ask-vault-pass -CDKi hosts --skip-tags pf -l HOSTNAME


Changes can be tested by using Packer and vmm(4) :

  • This process depends on the Go programming language.


Needing a Golang eco system and some basics

pkg_add go-- packer-- git--
git clone https://github.com/double-p/packer-builder-openbsd-vmm.git


Set GOPATH (default: ~/go), if the 1.4GB dependencies wont fit.

make install
  • You need your unprivileged user to be able to run vmctl(8) through doas(1)
echo "permit nopass myunprivilegeduser as root cmd /usr/sbin/vmctl" >> /etc/doas.conf

See packer-builder-openbsd-vmm/examples/README.examples for further instructions

  • Enable NAT on your host machine
pass out on em0 inet from tap0:network to any nat-to (em0)

assuming em0 is your egress interface


See the contribution guidelines


MIT License