Choosing between OpenBSD and FreeBSD

Posted on 2020-02-07.
One of the questions I frequently run into is how to choose between OpenBSD and FreeBSD. In this small article I'll try to answer that question.

The question about how to choose between these two great systems is matter of both system capabilities and some personal preference.

As with any tool, the first question you need to answer is what kind of problem you're trying to solve. This comes before any personal preference because OpenBSD and FreeBSD are not equally suited to solve every problem.

If for example you're building a storage server and you need a really resilient filesystem with focus on data integrity then FreeBSD is the only choice as ZFS hasn't been ported to OpenBSD, and most likely never will, and FFS doesn't provide the integrity features ZFS does.

If you need a very performant filesystem, then FreeBSD is also the correct choice whether you choose to use UFS or ZFS because OpenBSDs FFS isn't as fast as the options FreeBSD provides.

If you're building a system with a heavy focus on security then OpenBSD is the better choice as it has a ton of security mitigations build into the operating system. Not only that, the code always undergoes very critical security auditing and the base system includes a great number of applications that has gone through the same auditing. Likewise a number of the third-party software components (from X.Org Server and downwards in the list) comes with OpenBSD-specific patches for increased security.

This doesn't mean that FreeBSD isn't suited to run as a firewall or a secure server, but FreeBSD haven't got as many mitigations as OpenBSD does. However, this also means that OpenBSD is often slower that FreeBSD with regard to issues that gets affected by these mitigations techniques.

If you need access to a large amount of third party applications, then FreeBSD has more than four times as many applications in the ports and packages system than OpenBSD does.

If you need a desktop system for your daily browsing the Internet, reading email, watching the occasional YouTube video, then both systems has a lot of window managers and desktop systems and both will serve you well. In this case it's more a matter of whether your hardware is supported well enough, such as your GPU, wifi (if you use that), etc., and personal preference with the regard to package management and security updates of such packages.

The best thing to do is to try and determine what your daily needs are and then test both systems to see which best fulfill your requirements. If both seems to fulfill your requirements equally well, then look into secondary issues and compare. If for example your main requirement is a desktop system and both systems work great for you, then you could look into how much security mitigation techniques serves you on your desktop system, or you could look into performance if for example you read and write a lot of big files to disk. Perhaps some of the third party applications you need is only present on one of the systems, or perhaps only FreeBSD has the latest edition of that third party application and unless you want to follow current OpenBSD, then only FreeBSD provides the latest package for that application.

Even though OpenBSD and FreeBSD share a common ancestry, and even though both systems are really great, there is also a big difference as to how they manage configuration of both the operating system and third party packages. FreeBSD also provides a lot of tuneable options for the kernel, the filesystem, and the network, that isn't present in OpenBSD.

In the end both systems can solve many of the same problems, but the way they do that is different, and the best way to determine which system suites you needs and personal preferences is to try them both out in the same setup.

In my previous articles, OpenBSD is fantastic and FreeBSD is an amazing operating system, I have shared some of the reasons why I think both of these operating systems are great.