Monday, April 23, 2007

An Unnatural Love Affair with OpenBSD

Before I journey too far into this web log, I feel it is necessary that I present a bit of myself in order that you the reader understand more clearly where I am coming from. I am a very opinionated person, and hold my passions close. So allow me to give you some background so that my postulations bring about a sense of understanding.

I first tinkered with open source software in 1998 with a friend from high school. We were working with Red Hat 5.2. I had no idea what I was doing, but it seemed cool somehow. It didn't last long however. I had an extensive MP3 collection back then (nearly 15,000 songs) and my audio card wasn't working in Linux. So I went back to Windows 98se. I ended up remaining a slave to Windows 98se until 2001 when the company I worked for at the time needed a firewall/gateway solution. I offered to find a solution to their problem (running Windows 2k Advanced server as a firewall/gateway was a mess) and began looking in the open source world.

My first install was FreeBSD. The choice was based on a number of points, I had a friend who swore by it, the documentation was exhaustive and the 'ports' system was lauded as a leader in dealing with add on software. Before settling on FreeBSD I also took a gander at Slackware, Red Hat 8 and Mandrake Linux. These were all a bit "ugly" compared to what I had experienced installing FreeBSD. What I mean by "ugly" is the installs and user experience seemed very thrown together and a bit patchy. If there was such a thing as digital duct tape these OS's were using it. I also started studying IPTABLES (Linux firewall) and IPFW (FreeBSD's native firewall). IPTABLES read like a child had decided to use those word magnant's to write rules and I was immediately turned off by the syntax. IPFW was admittedly not that much better but seemed more powerful and also worked in my favorite open source operating system, FreeBSD.

So thus began my love affair with BSD. IPFW solved my problem and was relatively easy to pick up and place a legitimate firewall in front of our network of 25. However, I soon ran into a problem. NAT didn't work well, and stateful connections were being dropped or panic'd the kernel. I was trying to find some of my n00b posts from back then with what the issue was but I couldn't find any. Anyways facing a limitation in IPFW at the time (that later IPFW2 solved) I was stuck and had to find a solution.

Thats where the OS love of my life and I met for the first time. I read an article on pf and OpenBSD 3.0. Love at first sight, I was head over heals for Puffy. pf, if you haven't used it, is probably the least complex firewall in the known world. The syntax is sexy! Simplicity abounds without giving up complete control and power over your packet filtering. I read every article, man page and interview I could possibly find on pf and OpenBSD. I started reading code (why? I have no idea I didn't understand half of what I read), I started installing it on everything I could find.

I can remember the first time I installed it, where I was and everyone around me. Yes I know I have issues. But man, if you have used OpenBSD you know what I am talking about.

So in 2002, I officially changed every computer I owned (except one for my wife to work on her dissertation) to OpenBSD. I made my life fit around it. If OpenBSD didn't do it, I didn't care to do it. Here I am 4 years later and my passion for OpenBSD hasn't dwindled in the slightest, in fact is has grown exponentially.

So where does this leave me? Well with a web log in which I can talk about OpenBSD and my love affair with the OS, the philosophy and the freedom. Stay tuned.

No comments: