Title: GearBSD: a project to help automating your OpenBSD | |
Author: Solène | |
Date: 01 June 2021 | |
Tags: gearbsd rex openbsd | |
Description: | |
# Introduction | |
I love NixOS and Guix for their easy system configuration and easy | |
jumping from one machine to another by using your configuration file. | |
To some extent, I want to make it possible to do so on OpenBSD with a | |
collection of parametrized Rex modules, allowing to configure your | |
system piece by piece from templates that you feed with variables. | |
Let me introduce you to GearBSD, my project to do so. | |
GearBSD gitlab page | |
# How to use | |
You need to clone https://tildegit.org/solene/gearbsd using git and you | |
also need to install Rex with pkg_add p5-Rex. | |
Use cd to enter into a directory like openbsd/pf (the only one module | |
at this time), edit the Rexfile to change the variables as you want and | |
run "doas rex configure" to apply. | |
Video example (asciinema recording) | |
# Example with PF | |
The PF module has a few variables, in TCPports and UDPports you can | |
list ports or ports ranges that will be allowed, if no ports are in the | |
list then the "pass" rules for that protocol won't be there. | |
If you want to enable nat on em0 for your wg0 interface, set "nat" to | |
1, "nat_from_interface" to "wg0" and "nat_to_interface" to "em0" and | |
the code will take care of everything, even enabling the sysctl for | |
port forwarding. | |
# More work required | |
It's only a start but I want to work hard on it to make OpenBSD a more | |
accessible system for everyone, and more pleasant to use. |