Today

I'm glad to see the US electoral process finally coming to an end. I don't like talking about politics, but these last 4 years have been so divisive, I hope Biden/Harris are able bring the nation back together.

Home Lab

I wanted to make a brief post about my home lab setup. I've been a big fan of Shuttle Computers due to their form factor and being able to be upgraded.

https://us.shuttle.com

I have a Newegg wishlist of upgrades that I periodically update as new Shuttle PC's are released. My next motherboard + case combination will most likely be the SH370R8:

https://us.shuttle.com/products/SH370R8/

since I can put the latest Intel CPU in it an up to 64GB of RAM. For an operating system, as I mentioned in my first post, I've been a long time fan of FreeBSD having ran that throughout college. I haven't ran a FreeBSD system since I started buying Apple laptops and wanted to find something even lighter weight.

My friend, Russell Ballestrini

https://russell.ballestrini.net/

I think first told me about SmartOS, and how it can be used to host multiple virtual machines (VMs) with no real host OS installation. SmartOS gets installed to a USB stick and your computer boots from that and uses all of your hard drives for a ZFS file system to host VMs.

https://wiki.smartos.org/

I currently have 8 separate virtual machines running on my Shuttle PC all hosting separate applications.

[root@kingkong ~]# vmadm list
UUID                                  TYPE  RAM      STATE             ALIAS
364e5b1d-8b97-e28f-c098-f82399ee9090  LX    1024     running           cache
ef3ea227-658f-cc93-de34-a68a3607d5a1  LX    1024     running           dns
24918e07-4364-ec19-bba6-d624376e7576  BHYV  4096     running           pritunl
498e3202-5b0f-ce81-c441-ee14dd51ed1b  BHYV  4096     running           selfoss
7d5ea7cd-275f-4cb3-b9a5-c665bb065a62  KVM   4096     running           db2
e29a3fa7-b76d-e463-ad0e-81501b9635fc  BHYV  4096     running           wallabag
f407ca45-3c1c-6ead-f826-d1b907023830  BHYV  4096     running           gemini
bcc6b7d8-5750-43aa-bc46-e12df6f17ded  LX    8192     running           social

What's awesome about SmartOS, is it supports multiple virtual machine "types" (the LX, KVM or BHYV you see above). LX is SmartOS' built-in Linux emulation layer to natively run Ubuntu or other Linux variations without any virtualization overhead. KVM and bhyve (pronounced "bee-hive") allow you to run any kind of operating system you'd like, including Windows.

https://bhyve.org/

I also wanted a way to host public-facing websites, like this one, and also have some internal applications that I regularly use. I use selfoss as an RSS reader. Wallabag to save links. I found a company called Pritunl that makes an open-source zero trust security server that can be used to grant priviledged access for SSH and web applications.

I run Pritunl Zero in a separate virtual machine and set up NAT'ing on my router to route port 80 and 443 to it. I can then use Pritunl to do host-based routing and authentication for my applications hosted in multiple virtual machines.

https://zero.pritunl.com/

https://www.selfoss.aditu.de/

https://www.wallabag.it/en

Overall I've been really happy with this set up as I can easily move virtual machines around and update the routing in Pritunl.

“Today” was published on November 7, 2020.

---

Back to the home page

The content for this site is CC-BY-SA. The code for this site is MIT.