What is your favorite server OS?

Not so long I was tasked with setting up a web server for a new project. The list of requirements was simple: it needed to run PHP. I was told the rest of the details were up to me. The hardware was already in place too: a spare Dell Power Edge server that got purchased about a year, and never actually used for anything. So the job was easy – rack the beast up, install OS, update, upgrade, deploy the new app and then test it.

Since the OS choice was left to me, I went with the no-brainer option: Ubuntu. Why? Because I’m familiar with it. I know a lot of it’s quirks, I have installed it on many a server, an I also run it on my work desktop. Since I would be maintaining that machine, I figured I might as well choose an OS that I was familiar with. Plus it would feel at home in the rack that already contained two other Ubuntu rigs – one of which was a Clonezilla server.

Setting it all up took me no time. Installation was a breeze – I opted for a very minimalistic set of packages, applied the usual security tweaks, I loaded up the new PHP page and made sure it was working. Once all was said and done, I shot a request to networking team to give the new server their blessing, and give it a routable IP and inbound internet access. They took one look at my specs and said “No, Ubuntu is verboten!”

Anything that is going to be touching the internet, I was told, had to run FreeBSD.

“Since when?” I asked incredulously.

It turns out that the rule has been in effect ever since the entire networking team have had intercourse with my mom last night. Or at least that’s what I gathered from their rather dense technical explanation. Thanks a lot mom!

So I was about to get into a nasty spat with some networking guy over this, since I really did not feel like scrapping all the work and starting over. Especially since I had no experience maintaining FreeBSD. But… Well, this gave me an excuse to actually install and mess around with a new OS. In the past I have worked on various platforms: Debian, Ubuntu, Mandriva, Solaris… Never on BSD though. So I was somewhat curious.

The reasoning behind the FreeBSD rule was security, and I guess I couldn’t really argue with that either. It did have a reputation for being robust, stable and secure. Of course, I could make a big fuss, yell and scream like a baby but that did not seem like a productive use of my time. You see, I have this nasty habit of being logical when faced with adversity.

So I ended up installing FreeBSD and learning quite a bit about it in the process. When done, I was actually grateful they have pushed me into it, because I quite liked it. Is the server more secure because of it? I don’t know. For sure, it’s a smaller target considering Ubuntu’s popularity. Then again, I don’t know it as well, so chances are I might make bad mistakes during maintenance. So I guess it works out just about the same.

Here is my Friday question for you: what is your favorite server OS and why? Are you a BSD fan? Do you like Debian based systems? Unix guy? Do you run Windows? Here is a quick poll:

Favorite server OS?
  • Add an Answer
View Results

I would love to hear your reasoning in the comments. Do you think my colleges were right in pushing for FreeBSD, or do you think it wouldn’t matter in the long run?

Let me know in the comments.

This entry was posted in sysadmin notes and tagged . Bookmark the permalink.

11 Responses to What is your favorite server OS?

  1. Joshua Kehn UNITED STATES Google Chrome Mac OS says:

    I’m an Ubuntu fan for servers, just because it’s simpler and everything works. If Rackspace started offering convenient FreeBSD VPSs I would probably switch as I use OS X as my main machine and that built on FreeBSD.

    Reply  |  Quote
  2. icebrain PORTUGAL Mozilla Firefox Linux Terminalist says:

    I use Debian everywhere I can (server, desktop, laptop…), but I’ve tried FreeBSD in the past. It’s still a Unix and it has all the nice software I use (Vim, zsh, etc), but on the other hand I found the ports annoying compared to aptitude. To be frank I didn’t use it long enough to grok the system, so I can’t say much about it.

    I have an hosting account at NearlyFreeSpeech which uses FreeBSD for everything, so a few weeks ago I installed it on a VM so I could build Golang binaries for it (NFS lets you run your own CGI apps), but I gave up when I realized it would be easier to simply cross-compile.

    For sure, it’s a smaller target considering Ubuntu’s popularity.

    I’m not quite sure of that. I mean, Ubuntu is mostly popular on the desktop, where its affected by different vulnerabilities than on a server. On the other hand, Linux is still Linux, and what affects RedHat, Debian, etc will probably affect Ubuntu too, so considering that the target is still bigger.
    Kind of hard to know.

    Reply  |  Quote
  3. Morghan UNITED STATES Safari Linux says:

    It depends on the system specs. I prefer using Slackware for servers, but if I’m working with old equipment where compiling things myself would take more time than it is worth I run Debian because there are reliable packages for just about everything in the repos.

    Reply  |  Quote
  4. astine UNITED STATES Mozilla Firefox Windows says:

    Hmm this is a toughy. I work at the Library of Congress and we have a Solaris and AIX running here. I hate both of them but Solaris does have some neat things going for it. (Besides, I hate it mostly because it is such a huge pain to install Emacs on it.) For personal servers I mostly use Gentoo because it’s really flexible and I’ve used it before.

    One of the things I’ve noticed is that the things which make a good server aren’t the same things which make a good desktop. I use Arch on my desktop for instance because I like the rolling release strategy for instance. But rolling release the Arch style is horrible for a server where you need stability. Gentoo is also rolling release but at least you can pin down packages to specific versions and update things asynchronously or not at all. On a server it kind of makes sense to just install everything manually and limit your packages to just what you need. Slackware or a BSD kind of fits this bill well.

    So I’m not sure what I’d use in the future.

    Reply  |  Quote
  5. I prefer Debian in most cases, simply because of its huge selection of packages and their accessibility through apt-get. Of the BSDs, my preferred flavor is actually OpenBSD. They emphasize security — to the detriment of other things, honestly — over the OS and a nice subset of userland. Debian has some embarrassing security mistakes in their past, so if I really need a hardened system, and performance isn’t an issue, I’ll go with OpenBSD instead.

    Reply  |  Quote
  6. rozie POLAND Mozilla Firefox Linux says:

    First choice for base system is Debian, but sometimes I had to add own (versions) of packages from own repository (adjusted version, some compilation options etc.). A few times it was required or easier to use server version of Ubuntu instead.

    BTW you can tell network team it’s Debian k/FreeBSD (yes, this is official Debian version). Let us know their response. ;-)

    Reply  |  Quote
  7. David Koblas UNITED STATES Google Chrome Mac OS says:

    I have a love hate thing going with gentoo. Love since you can upgrade packages easily without having to re-install the base image. Which means that when python 2.7 comes around, you don’t have to reinstall the whole system to use it. The only challenge is that you end up with the occasional install dependency hell where you need a piece of software but it’s not ready yet.

    This is for my personal box, for a work box I would probably default to a non-stable unbuntu to insure current packages and run it on an AWS where I could just push the handfull of packages that are custom to our environment.

    Reply  |  Quote
  8. Zack UNITED STATES Mozilla Firefox Windows says:

    Guess no one here is an Exchange administrator. I use Windows 2008 R2 for the last while. Basically because of Exchange.

    Reply  |  Quote
  9. Zac GERMANY Google Chrome Ubuntu Linux says:

    I prefer Cent for servers primarily for two reasons: SELinux, and it’s what I grew up on (redhat academy). Fedora was my first distro, and I enjoy a kernel level security option that’s useful for something other than protecting CUPS (yes, I’m talking about you, Ubuntu). Sure, Ubuntu’s AppArmour and user policies work great at protecting most systems, and sure, SELinux can be a PAIN sometimes, but the new reporting tools in Fedora, which should make their way into Redhat/Cent sometime soon, make it very simple to create an SELinux policy. There’s a little more work in setting up sudo and making root underprivledged less accessable but I fell much better using kernel-level security.

    Reply  |  Quote
  10. tom UNITED STATES Google Chrome Linux says:

    Arch. I’ve tried many and have settled on arch for its great user community.

    Reply  |  Quote
  11. mcai8sh4 UNITED KINGDOM Google Chrome Ubuntu Linux Terminalist says:

    I recently got my hands on an old HP proliant, my first real server. Since I’m thick and have limited time to ‘play’ I went with what I know… Ubuntu. I guess it’s just because I know my way around it a little better than anything else. And it seems to work fine. I don’t really use the server for anything except playing – but I suppose it’s more of a learning tool that anything else.

    Reply  |  Quote

Leave a Reply

Your email address will not be published. Required fields are marked *