Headscale: Self-Hosted Tailscale Control Server for Zero-Trust Mesh VPN
Replace Tailscale's cloud coordination server with a self-hosted Headscale instance, then lock the tailnet down with ACL policies, tagged nodes, and a subnet router.
Hands-on projects to build your skills and infrastructure
What You'll Need
Each project lists prerequisites and hardware requirements
Estimated Time
Projects range from 1 hour to multi-day builds
Replace Tailscale's cloud coordination server with a self-hosted Headscale instance, then lock the tailnet down with ACL policies, tagged nodes, and a subnet router.
Build a CI pipeline that generates SBOMs with Syft, scans them for vulnerabilities with Grype, and signs container images keylessly with Cosign — closing the loop between what you shipped and what you can prove you shipped.
Build a Windows ping monitor in C# with live latency statistics, a bounded result buffer that cannot leak memory, and CSV export for capacity reports.
Build a WiFi site survey tool in C#: read RSSI from the Native WiFi API, click a floor plan to sample, and render an IDW-interpolated coverage heatmap.
Deploy MITRE Caldera in your homelab to run automated ATT&CK-based adversary emulation, validate detection rules, and run structured purple team exercises.
Stop accepting self-signed certificate warnings. Deploy Smallstep's step-ca as a fully automated internal PKI — complete with ACME support, Traefik integration, and browser trust.
Build a production-grade security incident response platform using TheHive 5, Cassandra, Elasticsearch, and MinIO — then integrate it with Wazuh alerts...
Build an automated vulnerability scanning pipeline using ProjectDiscovery's Nuclei and companion tools — subfinder, httpx, and naabu — to continuously...
Deploy a self-hosted phishing simulation platform using Gophish in Docker. Build real-world phishing campaigns, track user engagement, and run security...