Home
Homepage
Cancel

Marcus Holtz

Welcome to the Holtzweb blog

This is where my notes and documentation for my projects live.


Create a new password for every service or website you visit

Unique passwords for every service or website

Let’s hash some information into a password The creation of different passwords for every service or website you’re using can become a pain. Using a repeatable method to generate these passwor...

Monitor job boards, filter with AI, get smart notifications.

Automated Job Search Review and Alerts Assistant

Build Your Own Automated Job Search Alert AI Agent Introduction What is this project Automatically analyze incoming job postings against your personalized profile and sends smart recommendatio...

GitLab Omnibus and Runners can be a pain, get your own self-hosted DevOps platform running in this guide!

Homelab Optimized GitLab Omnibus with Runner and TLS

Gitlab Up and Running on Docker with Runners and TLS in the Homelab GitLab Omnibus is a massive “all-in-one” platform that bundles databases, web servers, and task runners into a single package. ...

Docker Secrets can be exposed, dont let this happen to you!

Setting up Docker Secrets with GitLab

Homelab Guide to Setting up Docker Secrets with GitLab If you’re running GitLab in Docker, you’ve probably stored your root password in an .env file. This works, but anyone inside the container or...

Grafana, Alloy, Loki, on Docker for Homelab Monitoring Explained

Grafana, Alloy, Loki using Docker alerting on our favorite song

Homelab Guide to Monitoring Docker Logs and Log Files When you’re running containerized applications, you need to understand what’s happening inside your stack. This article and repository were w...

Nginx Transparent WAF Inspection, Caddy TLS and header tricks, along with Traefik's speedy container based routing

Transparent Nginx WAF Failover on OPNsense with Caddy and Traefik

OPNsense Caddy Nginx-WAF to Traefik If you want an NGINX WAF with failover capabilities, but also need the advanced features of Caddy and Traefik, this stack will deliver you all three. This arti...

Forwarding Email using Alias with Cloudflare Email Routing Workers

Generating Unlimited Email Alias with Conditional Rules

Cloudflare’s Email Routing for Generating Unlimited Email Alias with Conditional Rules Intro I have been looking at all the ways to generate forwarding addresses. I wanted to create an email addr...

Unbound views allows for easy domain resolution based on subnet or interface

Unbound Views in OPNsense to Resolve Domains by VLAN/Subnet

Configure Unbound DNS in OPNsense for Subnet Based Domain Resolution Running multiple VLANs in your home or lab can be a headache — especially when it comes to DNS. If you’ve got a server with int...

Proxmox SDN uses PowerDNS to manage DNS

PowerDNS Install with Web GUI and DB

Installing PowerDNS with PowerDNS-Admin on Debian 12 What is PowerDNS and How Can I Harness this Power PowerDNS is a powerful, flexible authoritative DNS server that can be used to manage your ...

Aggregate IP Blocklists and then Geofilter by Country

Geofiltered IP Address Blocklists Aggregator

Country Based IP Address Internet Blocklist Aggregator Automated IP blocklist aggregation with geolocation-based country filtering, Docker ready, and twice daily runs via GitHub Actions. ...