Hi, welcome to my HomeLab!

With this small blog I just want to keep track of my progresses and share with you my goals, successes and failures. I’ll try to explain everything in the most simple way so everyone can (hopefully) understand and maybe become interested in the self-hosting world.

So welcome again! In this first page I’ll briefly explain what is the philosophy behind this project, the actual configuration and an overview of my future goals. If you have any suggestion or you just want to talk about homelabs or similar, please feel free to reach me using the contact info on my Bento webpage.

In the beginning…

I started working on this HomeLab during the middle school (about 10 years ago) just for fun. My original goal was to survive to a long, boring and hot summer with something I found in my basement: a bunch of thunder-damaged PC trashed by a local office. Back in time, I didn’t know anything about computer hardware, but I had in mind to recover some of them by saving good parts from the damaged PCs and building new ones from those refurbished components.

My messy basement full of damaged PCs (2015)

So I did. After that I decided to donate some PCs to a local church to offer internet access also to elderly and children who had not the possibility (or the interest) of possessing a personal computer. I was left with two PCs, a bunch of unused hardware and another summer to survive; why not use them for another personal project?

The first home server

That summer, I broke my parent’s hard drive leaving them (and myself) without any external support to store our photos and document. So I decided to use the remained hardware to build a small server to host our files and share them via our local network. I started looking for tutorial on YouTube, understand the basis of file sharing, how the Unix environment works and… well, that was cool!

One of the first server version. I know it’s extremely ugly. (2017)

Fast-forward

During the years I continuously experimented learning about storage, networking, security and other many fields that I encountered in this path. Of course I made mistakes, I lost files (sorry again dear parents) and I thought about giving up, but passion and curiosity pushed me to continue on this path. I learnt a lot from this journey and I’ve got so involved that I decided to study computer science also thanks to this project. In this time I fine-tuned the scope of my home lab - according to my needing and time/resource availability - learning how to not overkill, how to be efficient and so on.

Nowadays

Today my HomeLab is quite different from the original starting point. As said, my needs are changed and so my knowledge in the field. I still play around with hardware and software solution, but the philosophy behind this project is remained the same.

The philosophy

The main concept relies on some key values that I respect since day zero and that reflect my thought and needs; to introduce you into my reasoning, let me explain them:

  • Sustainability

    It’s a wide-meaning word since includes the environmental sustainability and the economical one. I’m really worried about how the human activities can modify the behavior of our planet and I’m aware of all the e-waste we produce globally every year. So why should I keep running my services in the night when I’m not using it? Or why should I buy new hardware when the one I got still works? To be honest with you, sometimes I use obsolete components that definitely should be dismissed but - as a student - I’m broke and, despite all my savings, it’s almost impossible to invest money into decent new stuff. It’s a matter of responsibility: both environmental and economical sustainability are crucial for my future, I must take care of them.

  • Open-source

    Studies and personal experiences demonstrate how cooperation works better than work alone: the internet/software world it’s mostly based on someone’s work being released for free and improved by other to make an unique and more powerful tool. I obviously understand why some solution are closed-source, but if I can chose, I’ll always prefer an open solution for my HomeLab. Furthermore, open-source solution are (generally) more innovative and experimental, why should not try them?

  • Tailor-made

    How comfy is something created just for you? I have the opportunity to build a HomeLab reflecting my needs, why rely on some general solution created to satisfy the mass? I prefer spend some time configuring my own solution instead of “buying” another ready out-of-the-box. Obviously this has a limit: I’ll never code my own operating system nor build my own CPU, but if I can find piece of hw/sw that I can combine with my existing setup, I’ll be happy to work to make my HomeLab more customized.

  • Simple

    I know, it could sound controversial but I really want to keep everything as simple as possible. It’s wasteful to configure something it will be hard to use for me and the other few users interfacing with my services, I prefer to emphasize the usability and the clarity without excluding important security aspects. Sometimes a tool with fewer option will make you happier than another one full of useless features.

  • Secure

    I’m a cybersecurity student, security and privacy are crucial for me. It’s a new value I recently added to this list because I never understood the value of my information until I started my master degree. Our data represent ourself and it’s a good thing if I protect them with all my possibilities. It’s known that no solution in the world are 100% secure, but I always try to reduce the attack surface by implementing best practices and reliable services.

Architecture

In my HomeLab, the software and hardware architecture changes continuously due to the continuous experiment I perform. For simplicity, I’ll post dedicated pages with the architecture tag so you can keep track of all the major changes. I prefer to not post here the actual configuration so this page will became outdated in a longer period of time.

However, there are aspects that will unlikely change:

  • The Internet connection arriving into the HomeLab is a symmetric 1Gbit link with an average 17ms of latency; the link is provided by a ~200mt CAT6 ethernet cable in the router-HomeLab path. The connection is then distributed via a Gigabit 5 ports Switch from Mercusys (yup, it’s really cheap but it works just fine for my setup).
  • The electricity is mostly provided by green resources; rare situations require to rely on the national grid infrastructure.
  • The room temperature range is between 14°C and 38°C during the whole year; on average, the temperature is about 23°C.

So, welcome again!

I hope you’ll find my journey interesting and inspiring. Thanks for the time you spent and (hopefully) you will spend in this website. As said before, please feel free to contact me using the information provided in my Bento for any information, suggestion and improvement.

Keep exploring!

G.