NASBuild - DNS
The most important service in an infrastructure, at least in my opinion, is reliable DNS. Mostly everything relies on DNS, using IP addresses just like that is rare. Also it’s quite easy to have DNS set up. There are many solutions that offer out-of-the box good experience, even including adblocking, like Pi-Hole. While I think it’s a good project, I want to just use unbound, a very lightweight and reliable DNS server. Also Pi-Hole is not available for FreeBSD.
NASBuild - The concept
So now that I decided to build my Home NAS on FreeBSD, I got the define exactly what is it I want. It felt weird letting out the control from my hands using Docker, so that is one thing I would like to get back. To that end, I will configure all services and applications myself. Even though Ansible Galaxy exists, I will write all of my playbooks myself. This way I will have full control over what’s happening and of course I will (be forced to) really get to know how to configure the given software.
NASBuild - The Host
The first step on my NASBuild is to install the host OS and set it up. For that, I will create 2 Ansible roles: base and phy. Base will be assign to all instances, let it be a physical machine, Jail or VM. Phy will be assigned to physical host machines and will contain tasks that will only be applicable to those. I will create the base at another time, as I want to focus only on the settings that are needed to be done on a host.
Why I switched back from Linux to FreeBSD on my NAS
So in my previous post from approx. a month ago, I explained my decision to switch from Linux to FreeBSD on my NAS. A month has passed since but now I decided that I’m switching back.
Why I switched from FreeBSD to Linux on my NAS
This is my first post in a really long time… There were a lot of changes since the last post. For a long time my blog was hosted on my very own VPS on DigitalOcean, then I moved it to Hetzner, then to another provider that does webhosting as a sidebusiness, but I think now I found a long-term solution. It’s hosted now on GitHub Pages. The change was fairly easy, as the blog was anyway written for Jekyll and GitHub Pages have native support for it, so no changes were needed to be done, other then changing the origin URL in git.
Running OpenVPN client in a FreeNAS Jail
Lately I have had less free time, which has resulted in the fact that this is the first article in over a year. Also I’ve been using mostly CentOS at my job and FreeBSD got out of the focus. But that doesn’t mean that I abandoned FreeBSD, just that solutions that require less time to set up and maintain got my attention.
I mean Routing Information Protocol of course, not rest in peace! RIP is one of the most basic and easy-to-use routing protocols there is. It has its limitations, but it can be a viable solution for small environments. With RIP it is possible to exchange routing information between devices, and as it is a standard protocol, not only FreeBSD or Linux can use it, but it’s also implemented in many different networking devices, such as routers, firewalls, and even some layer 3 switches.
Basic Networking and FreeBSD
In this article I would like to introduce the very basics of networking in order to allow the reader to be able to separate VMs from each other or to organize them into logically different segments. This is far from a detailed description of networks, of course!
ZFS Hot Spare with ZFSd
Since FreeBSD 11.0 was released, it’s been possible to use a disk as a hot spare in a ZFS zpool. This means, that under a few circumstances, zfsd will take a predefined disk to replace another one.
Installing Civilization V On Arch Linux
I’m not really a gamer myself, but as it turned out, my wife is. She played with Civilization V many years ago on Windows, and wanted to re-play the game now. However, I have successfully eliminated it from everywhere in the household, we run Linux on the desktops and FreeBSD on the “servers”, so we seemed to have a slight problem: how to let the wife play without installing anything Windows?
Using LLDP on FreeBSD
LLDP, or Link Layer Discovery Protocol allows system administrators to easily map the network, eliminating the need to physically run the cables in a rack. LLDP is a protocol used to send and receive information about a neighboring device connected directly to a networking interface. It is similar to Cisco’s CDP, Foundry’s FDP, Nortel’s SONMP, etc. It is a stateless protocol, meaning that an LLDP-enabled device sends advertisements even if the other side cannot do anything with it. In this guide the installation and configuration of the LLDP daemon on FreeBSD as well as on a Cisco switch will be introduced.
Cisco Virtual Wireless LAN Controller on FreeBSD bhyve
In this guide a Cisco vWLC will be installed on FreeBSD bhyve. Altough the Cisco Virtual Wireless LAN Controller (vWLC) is officially supported only on VMWare ESXi, Linux KVM and Microsoft Hyper-V, it is relatively easy to install and operate on FreeBSD bhyve. The installation is actually pretty similar to KVM.
Using letsencrypt.sh with h2o
This will be a really short guide about how to set up the H2O webserver with letsencrypt, and how to automate it. I’ve read a nice tutorial about letsencrypt and nginx on Peter Wemm’s site. This guide is similar, but for an h2o webserver. I intend to write another guide about www/h2o later once v2.0 is released, this is just a short tutorial about letsencrypt.
Booting FreeBSD on a Raspberry Pi Zero
Luckily, I was able to get a Raspberry Pi Zero not so long ago. Naturally, my first move was to try to boot FreeBSD on it. Although there is no official support for the Zero on FreeBSD, given that the hardware is very similar to the Raspberry Pi A model, I was able to boot it. The process is quite simple.
Using bhyve on FreeBSD
I wanted to write an article about bhyve for a long time now, and fortunately I recently had the time to do just that. Bhyve has the potential to became a very sophisticated, and advanced hypervisor.