Appliances

As a computer geek, there are a handful of machines I’d still like to build:

  • A massive, awesome fileserver that just works. Hot-swappable SATA disks, with maybe 5 disk slots on the front, and hardware RAID. And it should just work: I plug it in, plug it into the switch, and it gets an IP. I could set up quotas or permissions through a web interface, but not much configuration should be needed. I don’t want to have to deal with partitions and volumes, or to set up a 100GB “slice” for photos and then realize I wanted 150GB. I want it to just work as one big thing. I want my Windows machines to be able to see it over SMB, and my Mac to see it over whatever Macs use natively. I want to mount it over NFS from a Linux box, and I want to have a web GUI that I can use to view files. (FTP and rsync would be nice, too.) The RAID has to be good, too: when one of the disk dies, I want to pull the lever, yank it out, and put a new one in, and have it rebuilt automatically. It can run something like embedded Linux, but should have a couple gig of RAM (it’s cheap now!) to allow for big buffers and caches. It needs gigabit Ethernet (but that’s pretty much standard now). Bonus points for having USB support (both ways: let me back this up to an external USB disk, but also let me plug my computer into it and see it as a massive disk.)
  • A really, really good firewall/router/proxy/etc. Our OpenBSD firewall rocks. I think I configured it such that the QoS never works, but in theory, it gives things like ssh and games priority, while things like FTP downloads and BitTorrent can just use whatever bandwidth is left over, so that huge downloads don’t impact things. It does the obvious stuff, like NAT and port forwarding. But it also does some stuff your run-of-the-mill router won’t, like using scrub to normalize packets. (And it works both ways: outgoing packets get rewritten to not “leak” data that could be used for fingerprinting, and incoming packets are stripped of any bizarre stuff that could potentially be used as an exploit.) It serves as our DNS server, which gives a bit of a speedup on a LAN. It’s an NTP server that keeps accurate time for us. Ideally, it would also run squid and act as a proxy server, too, but I never set this up because it’d be too much of a hassle. (We could set it up as an explicit proxy that browsers would have to be configured for, but since it’s the firewall, it’s also possible to make it a transparent proxy by routing all traffic through it.) With squid comes some other neat options, like the ability to use ClamAV to do real-time virus scanning of downloads, or to use blacklists so a small office or a family could, for example, prevent the viewing of known porn sites. I’m still fond of the Via C3/C7 line, which are very low-power processors that also have hardware crypto and RNG functions. Oh, and another thing: I want to be able to VPN into my house. The hard part there is choosing what you want: GRE? PPTP? OpenVPN? And I want lots of graphs of everything happening. Something like the Via chip, a gig of RAM (or more for faster cache results), and a small SSD (even a CompactFlash card?) is all that’s needed, along with dual GigE cards. Wrap it up in a nice GUI, and you’ve got something that leaves every store-bought router looking pretty pathetic, yet without being miserable to set up like OpenBSD+pf. (Hint: pfSense gets you 98% of the way there.) It’s got to draw minimal power, but that’s probably something the Via chip would be good at.

It seems odd to me that neither of these products exist. I can buy a Windows Home Media device with a 500 GB hard drive, but it would cost more than buying a 2TB disk and sticking it in an old Linux box. And the ones I’ve seen advertised don’t have RAID, or even support for RAID. Moving to a central fileserver and not supporting RAID is a horrible idea, since a single disk failure will cause you to lose everything.

Leave a Reply

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