OpenBSD Archive
The state of toolchains in OpenBSD
OpenBSD 6.9 released
OpenBSD 6.8 released
OpenBSD 6.7 released
Rethinking OpenBSD security
OpenBSD system-call-origin verification
OpenBSD 6.6 released
OpenBSD is now my workstation
OpenBSD on a laptop
You won't find nearly as many online resources about setting up OpenBSD, because honestly, you really don't need any. Unlike much of Linux and FreeBSD, the included manuals are high quality, coherent, and filled with practical examples. You also need very little third party software to do basic tasks - almost everything you need is well-integrated into the base system.
You'll notice that many features that require toil to achieve on FreeBSD, such as suspend on lid close, working volume buttons, and decent battery life, work out of the box on OpenBSD. You can tell the developers actually use this thing on their personal devices.
And while the official OpenBSD FAQ has all you need to get an installation up and running, it takes a bit of grinding to massage the base installation into a seamless laptop experience. So, I wrote this guide to give you a jump start. Things should just work as long as you have a non-bleeding-edge, semi-mainstream laptop, but ThinkPads are your best bet. Enjoy!
OpenBSD 6.4 released
We are pleased to announce the official release of OpenBSD 6.4. This is our 45th release. We remain proud of OpenBSD's record of more than twenty years with only two remote holes in the default install.
As in our previous releases, 6.4 provides significant improvements, including new features, in nearly all areas of the system.
OpenBSD’s unveil()
One of the key aspects of hardening the user-space side of an operating system is to provide mechanisms for restricting which parts of the filesystem hierarchy a given process can access. Linux has a number of mechanisms of varying capability and complexity for this purpose, but other kernels have taken a different approach. Over the last few months, OpenBSD has inaugurated a new system call named unveil() for this type of hardening that differs significantly from the mechanisms found in Linux.
OpenBSD on the Microsoft Surface Go
For some reason I like small laptops and the constraints they place on me (as long as they're still usable). I used a Dell Mini 9 for a long time back in the netbook days and was recently using an 11" MacBook Air as my primary development machine for many years. Recently Microsoft announced a smaller, cheaper version of its Surface tablets called Surface Go which piqued my interest.
Quite a few things don't yet work on OpenBSD, but these first few people who try things like OpenBSD on new Surface devices pave the way for support to improve.
Towards secure system graphics: Arcan and OpenBSD
Let me preface this by saying that this is a (very) long and medium-rare technical article about the security considerations and minutiae of porting (most of) the Arcan ecosystem to work under OpenBSD. The main point of this article is not so much flirting with the OpenBSD crowd or adding further noise to software engineering topics, but to go through the special considerations that had to be taken, as notes to anyone else that decides to go down this overgrown and lonesome trail, or are curious about some less than obvious differences between how these things "work" on Linux vs. other parts of the world.
You know you're getting something good with a preface like this.
OpenBSD 6.3 released
We are pleased to announce the official release of OpenBSD 6.3. This is our 44th release. We remain proud of OpenBSD's record of more than twenty years with only two remote holes in the default install.
As in our previous releases, 6.3 provides significant improvements, including new features, in nearly all areas of the system.
CDE on OpenBSD 6.2
If you've noticed a disruption in the time-space continuum recently, it is likely because I have finally been able to compile and install the Common Desktop Environment (CDE) in a current and actively-developed operating system (OpenBSD 6.2 in this case).
Since it's been a while - I love CDE.
New OpenBSD kernel security feature
Over the last three weeks I've been working on a new randomization feature which will protect the kernel.
The situation today is that many people install a kernel binary from OpenBSD, and then run that same kernel binary for 6 months or more. We have substantial randomization for the memory allocations made by the kernel, and for userland also of course.
However that kernel is always in the same physical memory, at the same virtual address space (we call it KVA).
Improving this situation takes a few steps.
OpenBSD 6.1 released
We are pleased to announce the official release of OpenBSD 6.1. This is our 42nd release. We remain proud of OpenBSD's record of more than twenty years with only two remote holes in the default install.
As in our previous releases, 6.1 provides significant improvements, including new features, in nearly all areas of the system.
OpenBSD on the HP Stream 7
Recent events have rocked the mobile computing world to its core. OpenBSD retired the zaurus port, leaving users in desperate need of a new device. And not long before that, Microsoft released the Anniversary Update to Windows 10, but increased the free space requirement needed to install the update to exceed what's possible on devices with only 32GB, leaving users with cheap 32GB eMMC equipped devices such as the HP Stream series searching for a new operating system. With necessity as both mother and father, the scene is set for a truly epic pairing. OpenBSD on the HP Stream 7.
The HP Stream line is a series of budget computers in a couple form factors. The Stream 11 is a fairly typical netbook. However, the Stream 7 and 8 are tablets. They look like cheap Android devices, but inside the case, they’re real boys, er PCs, with Intel Atom CPUs.
To install OpenBSD on such a device, we need a few parts.
OpenBSD 6.0 released
OpenBSD 6.0 has been released, with tones of improvements. They're listing this one as one of the biggest changes:
In their latest attempt to push better security practices to the software ecosystem, OpenBSD has turned W^X on by default for the base system. Binaries can only violate W^X if they're marked with PT_OPENBSD_WXNEEDED and their filesystem is mounted with the new wxallowed option. The installer will set this flag on the /usr/local partition (where third party packages go) by default now, but users may need to manually add it if you're upgrading. More details can be found in this email. If you don't use any W^X-violating applications, you don't need the flag at all.