Tech blog

All Posts

Back Home
My Own URL Shortener for my Homelab

There's something satisfying about cleaning up the little things in a homelab. Not the big flashy projects. Not the migrations, the dashboards, or the reverse proxies that eat up your whole evening. I mean the smaller annoyances. The repeated copy-pasting of long internal URLs. The bookmarks that multiply for no good reason. The links you send yourself in Discord...

Installing Authentik and Putting My Homelab Services Behind It

I finally stopped treating authentication like a collection of exceptions and gave my homelab a proper front door. For a long time, my setup worked, but it was messy. Some apps were public, some were only reachable internally, some lived behind random reverse proxy rules, and a few had their own local logins...

Zorin OS: Ditch Windows and switch to Linux NOW!

Installing and Tweaking Zorin OS... I tend to be fairly picky when it comes to Linux distributions. I'm not interested in something flashy for the sake of it - I want stability, sane defaults, good hardware support, and the ability to tweak things without the OS fighting back. With that in mind, I decided to...

Bit of tea with GITea!

I Self-Hosted My Own Gitea Instance on a Homelab - And Why You Should Too If you are a developer, tinkerer, or one who values having control of your data, well, you probably have thought about hosting your own version control system. It all started for me when I set up Gitea on my homelab....

How I Got qwebirc Running in Docker

How I Got qwebirc Running in Docker (2025-proof, no Apache, works with Cloudflare Tunnel) qwebirc is awesome, but it's Python 2 + Twisted era software. On modern hosts that means: Here's exactly what I did to make it work, end-to-end. 1) Build a Python-2/Twisted image from the Debian archive Create ~/qwebirc-docker/Dockerfile: Build it: 2) First...

PiVPN / WireGuard Complete Setup

This tutorial will show you how to install your own personal Raspberry Pi-based VPN into your network using PiVPN and WireGuard. Why would you want to do this? A number of reasons - remote access to your local servers and files, surfing through your own Internet connection when on the road, and just general good...

Automation - How to Automatically Clean Up Unused Docker Images

Tired of constantly cleaning up unused Docker images that accumulate over time? Here's a simple and effective solution. Login to your server terminal where you're hosting docker You can add a prune job on your Docker host that: Runs automatically at regular intervals (e.g., daily/weekly) Prunes all unused images Add the following line to your...

PHP-Fusion 7 CMS fully dockerized!

This idea came to me after I was trying to recover a deprecated database that I had for a very old website based on php-fusion's CMS. Sure, these days they do have a new version but, the new version would not work with my old database. So I thought, why not DOCKER? 🙂 Using Docker...

Kubernetes cluster. Why and how

Think of Kubernetes (often shortened to K8s) as a system that helps you manage and run multiple applications (or "containers") across different computers automatically. Instead of manually starting, stopping, and updating apps, Kubernetes does it for you in an organized way. 🔹 Breaking It Down: What is Kubernetes? Sure! Think of Kubernetes (often shortened to...

Installing GNU-World on ircu2

OS SUPPORT: Ubuntu 20.04.2 LTS \n \l - Server / Raspberry Pi 4 Pre-Requisites 1 - Update OS and change Host. (root) NOTE: This Config is only on IPv4 if you don't have a IPV6 Tunnel config. add - irc.testnet.org add - 127.0.0.1 irc.testnet.org 2 - Install (byacc, flex, screen, make, cmake, zip, perl, automake,...

Replacing Cloudflare Tunnel with Tailscale on a VPS

Why Switch from Cloudflare Tunnels to Tailscale? While Cloudflare Tunnels is a popular choice for opening home networks, Tailscale offers greater control over device access and simplified configuration using WireGuard. With Tailscale on a VPS, you can secure your home network without compromising on security or dealing with port-forwarding and firewall configurations. Prerequisites Tailscale Installation:...

KASM - My main workspace RBI

In this blog post, I'll walk you through the process of installing KASM, a popular Remote Browser Isolation (RBI) solution, as the main workspace on a home lab using a virtual machine (VM) in Proxmox. This setup will enable you to securely isolate web browsing activities, protecting your network and sensitive data from potential web-based...

Ansible - Make Any Linux Distro Yours Using Ansible

During my consumption of tech YouTube content, I came across a video talking about Ansible Pull. I am familiar with Ansible, so I queue it up. As soon as I finished the video this project came to mind. I know a lot of Linux desktop users use git to store their rc files and config...

Cronjobs - Reboot schedule

So because one of my VMs was acting up (due to a lot of transcoding on my media server) when not rebooting for a long period, I had to look for a cronjob format that would help with this issue. I'd use cron (should already be installed): The first time you might have to choose...

My new favorite HomeLab Dashboard - Homarr

Before diving into the tutorial, let me explain a bit about Homarr. As of my last update, Homarr is a web application that allows users to control and manage smart home devices. It's often deployed using Docker, a containerization platform, and Portainer, a user-friendly Docker management tool. The process typically involves setting up containers, configuring...

The Ultimate Home Lab Monitoring Setup - Prometheus + Grafana

After avoiding and putting this off for months now, I finally decided to set this up and I must say, I was a bit silly to even fear this. The only reason I didn't want to get into it was that I felt it was going to be tedious and hard to maintain, but to...

Tutorial for ProxMox E-Mail Alerts

Setting up alerts in Proxmox is critical to making sure you are notified if something goes wrong with your servers. It's so easy, I should have done this years ago! In this tutorial, we'll set up email notifications using SMTP with Gmail or G Suite that send email alerts when there are disk errors, ZSF...

Tired of being prompted for a password on sudo? Same!

The preferred way to grant individual (or group) permissions would be to add files under /etc/sudoers.d This separates local changes from the default policy and saves time in case the distribution sudoers file changes. To make the currently logged-in user a sudoer and sudo not prompt them for a password, use this will create a file called /etc/sudoers.d/$USER (where $USER is...

Passthrough for HDD/SSD/Physical disks to VM on Proxmox VE(PVE)

1 Install lshw on PVE 1.1 Bring up the terminal from PVE directly or via SSH or by using "Shell" from PVE web GUI 1.2 Enter the following command to install lshw 2 Check & note down details about physical disks we want to passthrough 2.1 Using the following command We should use disk by...

IOMMU activation.

18 Nov 2023

IOMMU activation.

After finishing up my newest small factor and low power consumption NAS Server, because both my NUC and my NAS were now booting off a ZFS mirror SSD stripe, I had to go through extra hoops in order to activate IOMMU for PCI pass-through in Proxmox VMs. It really isn't that hard and I'll write...

Freezing Your PI

13 Nov 2023

Freezing Your PI

After purchasing a new Raspberry PI 4 (8GB), I wanted to ensure I'd get the full performance out of this little device. So what would be best to do than keeping it nice and cool? That's right, a mini little cute fan that goes with it. I've done some research and found the best solution...

Mastering Netboot.xyz: Installation, Deployment, and Advanced Usage

I'll start this with the following statement... I KNOW! Ventoy is a thing! Haha. Now that we got that out of the way, let's proceed, shall we? Netboot.xyz emerges as a powerful solution, offering the ability to boot and install various systems directly from the network. I'd like to explore the intricacies of installing, deploying,...

NUC vs Raspberry Pi: Which Mini-PC is Right for You?

In recent years, mini-PCs have gained immense popularity due to their compact size, energy efficiency, and versatility. Two prominent contenders in this space are the Intel NUC (Next Unit of Computing) and the Raspberry Pi. Both offer unique advantages, but depending on your specific needs, one may be a better fit than the other. In...

Comprehensive Guide: Backing up Your Raspberry Pi Image and Data

The Raspberry Pi is a versatile and powerful single-board computer used for a wide range of projects. Whether you're running a web server, a media centre, or a home automation system, it's crucial to regularly back up your data and system image to safeguard against unforeseen events. In this guide, we'll walk you through the...

Automating my Home lab with Ansible: Proxmox and Beyond

I will start with this - I am in NO way an Ansible expert nor do I present this as a tutorial. This is just a simple solution I found for my own home lab that I hope would be of use to others reading this 🙂 In today's rapidly evolving tech landscape, managing a...

Cleaning up your Linux OS.

Now if you're like me, you're bound to have a ton of VMs running with different Linux flavors and settings, but after some time, it tends to get cluttered and unnecessary data takes up all your allocated space for said Linux VM. I will show you a few easy tricks to help you clean up...

Mastering Virtual Machine Management

In today's tech-centric world, virtual machines (VMs) have become an indispensable part of our daily operations. They allow us to create and manage multiple environments on a single physical machine, making them a powerful tool for developers, system administrators, and IT professionals alike. However, managing and keeping these virtual machines up to date can be...

Raspberry Pi: Unleashing creativity with exciting project ideas

Hey there, fellow tech enthusiasts! Today, I'm thrilled to share some captivating Raspberry Pi project ideas that will awaken your inner innovator and allow you to embark on exciting adventures in the world of DIY electronics. Raspberry Pi, a credit card-sized computer, has revolutionized the tech community by providing an affordable and versatile platform for...

Empowering Data Security: Harnessing Syncthing for Seamless PC and Server Backups

In today's digital age, safeguarding our valuable data has become paramount. Losing essential files or experiencing system failures can be devastating. Fortunately, I discovered an excellent solution that seamlessly synchronizes data between my PC and the main server: Syncthing. In this article, I will share my experience and guide you through setting up Syncthing as...

More security - Adding Key Pairs for my VM instances.

I decided to make my life easier and jumped on to using key pairs in order to access my Servers and VM Instances. So I'll add it here as well, for anyone that needs to do it and for future me 🙂 Managing Key Pairs on Linux Instances Instances launched using CentOS, Debian, AlmaLinux or...

Getting permission - "I am ROOT!"

If you're getting a "permission denied" error when trying to edit or upload files through WinSCP or FileZilla in the /var/www/html directory on your Linux web server, it indicates that the user you're logged in as does not have the necessary permissions to modify those files. Here are a few steps you can take to...

Understanding VLANs: Unleashing the Power of Network Segmentation

In today's interconnected world, computer networks have become the backbone of organizations, enabling seamless communication and data sharing. However, managing and securing these networks can be a complex task. This is where VLANs (Virtual Local Area Networks) come into play. VLANs provide a powerful mechanism for network segmentation, allowing organizations to enhance security, optimize network...

Installing PHP 5.6 (because of reasons...)

Now, if you're in the same boat as me, and have an old website database that's been offline for more than 10 years, you will probably run into all sorts of issues recovering the data and re-establishing your website. 15 years ago I created a website for an online community, with a forum and all...

Guacamole! No, not the dip...

If you've been looking for a way to access your VM instances in a safe and secure manner, look no further! I found it 😀 Guacamole is a clientless remote desktop gateway that provides secure access to your desktop and servers from anywhere. With Guacamole, you can access all your virtual machines from a web...

Replacing failed disks and repairing a degraded pool.

Well, it was bound to happen, folks! One of my drives died! After building a storage server, I installed TrueNAS Scale, which was virtualized on Proxmox and I proceeded to build a large drive pool, made out of 20 HDDs. At the time, I was unaware that two Vdevs would be better for this type...

Mounting a NAS (Network Attached Storage) device on Linux

To use your NAS and make it accessible over your entire network, you will have to configure it properly so it can be added and mounted in various systems around your home network. We're not going to talk about NAS configurations but we are going to go through how to mount your NAS to a...

Debian: Installing Nvidia Drivers

Now, if you're like me, and you embarked on a self-hosting journey where you'd want to deploy and host everything in your own environment, then you've/you'll probably have this issue - NVIDIA DRIVERS. Oh gosh! I've been through countless forum posts and tutorials and nothing worked properly... Now to give you a little insight on...

Simple measures for better network security v2 - VLANs, VPN & Password Manager.

As I promised in my last post about network security, I am now back with a follow-up blog post about more steps you could take in securing your home network. You can check my last post on this subject @ /blog/simple-measures-for-better-network-security-ssh/ In today's connected world, having a secure home network is essential to keep your...

Deploying and Self-hosting my own Cloud Service

Today I wanted to share with you my experience setting up my own cloud server using Nextcloud, as an alternative to Google Drive and OneDrive. As someone who values privacy and control over my data, I decided to take matters into my own hands and create my own cloud storage solution. Since I already own...

Retro Gaming on a Raspberry PI 2

Howdy hardware enthusiasts! I'm excited to share with you my latest project: transforming a Raspberry Pi into a retro gaming console using RetroPie as the emulating operating system. The last time I wrote about a Raspberry was when I converted a Raspberry PI 1 into a local DNS Server and Self Hosted AdBlocker via Pi-Hole...

Simple measures for better network security - SSH

Since I've been planning on securing my SSH connections I figured I should post here as well, showing you all how you could improve your network security by simply doing the next things I'm going to list down below. I do have a fair amount of boxes and VMs running on my home lab, so...

Using a Raspberry PI as a Local DNS server & an Ad-Blocker

Raspberry Pi 1 is a small and affordable computer that can be used for a variety of projects. In this blog post, we will be discussing how we used a Raspberry Pi 1 with Pi OS to install and configure Pi-hole as a local DNS server and an ad blocker. The first step in this...

Docker, Docker-Compose, and Portainer

Docker is a powerful platform that allows you to easily create and manage containers. Docker-Compose is a tool that makes it easy to configure and run multiple containers. Portainer is a web-based management tool that makes it easy to manage your Docker containers. Together, these tools provide a powerful and flexible platform for creating and...

Installing PHP: A Comprehensive Tutorial

PHP is a popular programming language that is widely used for web development. It is a server-side scripting language that allows you to create dynamic web pages and applications. In this tutorial, we will go through the process of installing PHP and discuss how different versions of PHP work with different applications. Before we begin,...

Deploying a Web Server: Featuring Apache2, SQL, PHP and phpMyAdmin

Setting up a web server has always been a goal of mine, I wanted to be able to host my own websites, as well as create a platform for others to host their own websites. After multiple failed attempts at using different combinations of web servers and databases, I decided to go with Apache2 and...

Learning to Deploy and Use TrueNAS SCALE in a virtualized environment.

When I first decided to set up a home lab, I knew that I needed a reliable storage solution to store all my virtual machines and data. After researching various options, I decided to give TrueNAS a try. TrueNAS is an open-source network-attached storage (NAS) platform that provides enterprise-level features and reliability. In this blog...

How to Install Proxmox on a Bare-Metal Server

Proxmox is an open-source virtualization platform that allows you to easily create and manage virtual machines. In this tutorial, we will walk through the process of installing Proxmox on a bare-metal server. Before getting started, make sure that you have a bare-metal server with at least 2 GB of RAM, and a minimum of 20...

Building my Home Server: Deploying a Home Lab Environment

When I decided to set up a home lab, I knew that I needed a powerful and reliable server to run my virtual machines and store my data. I started my journey by purchasing a used server from eBay, thinking that it would be a cost-effective solution. However, I soon realized that the server I...

The ultimate IT learning journey!

As someone who has always been fascinated by technology, I have decided to take the leap and start my learning journey in IT. I am excited to delve deeper into the world of networking, network security, SysOps & DevOps. The first step in my journey was to familiarize myself with networking concepts. I started with...